LiteFSは、SQLiteのデータベースをレプリケーションし、複数のSQLiteに対してデータベースの同期を実現するソフトウェアです。
マスターとなるSQLiteが何らかの障害で落ちた場合には、自動的に別のSQLiteへとマスターが移行する、フェイルオーバーの機能も備えています。
具体的な仕組みは、SQLiteのデータベースファイルとファイルシステムの間にプロキシをはさみ、トランザクション処理を検知して記録する独自の「Lite Transaction File」(LTXファイル)を作成します。
これを別のSQLiteへ転送し、そこで処理の内容を復元することでレプリカデータベースを実現します。
分散ファイルシステムとしてFUSE(File System in User Space)を用いることでLTXファイルを別のSQLiteへ転送し、HashiCorpのConsulによってサービスディスカバリや障害発生時のフェイルオーバーなどを処理しています。
これってマスターDBにWriteするAPIとエッジにレプリカDB(SQLite)を配信する仕組みだけで簡単に模倣できそうなんだけど、ビジネスとして成立するんだろうか?