it.xnews.jp
生成: 2026-10-24 読了 約 4 分 model: claude-haiku-5-5 原文: https://philipotoole.com/twelve-years-of-distributed-sqlite/ raw.md

分散SQLiteの12年間──rqlite登場からの歴史と設計上のトレードオフ

分散SQLiteの技術は2014年9月のrqlite公表から約12年にわたり発展し、現在はおよそ一ダースのプロジェクトが存在する。著者Philip O'Toole氏はその設計上のトレードオフと商用化の流れを振り返っている。

著者のPhilip O'Toole氏は、2014年9月にrqlite を公表して以降の分散SQLiteの系譜を振り返っている。dqlite、Litestream、LiteFS、cr-sqlite、libSQL/Turso、Cloudflare D1などのプロジェクトが、この分野でどのように展開されたかを整理している。

rqlite の公表と初期設計

著者は2014年9月に短い投稿でrqlite を公表した。構想は、SQLiteの前段にRaftのログを置き、すべての書き込みをクラスタに複製することで、1ノードの喪失がデータの喪失にならないようにするものだった。

ソースコードは公表と同じ週末にGitHubへ公開された。著者の知る限り、これはRaftとSQLiteを組み合わせた最初のオープンソースシステムだったとされる。

初期版はgoraftを使用していた。2016年初頭に著者はgoraftをHashicorpのRaft実装に置き換え、rqlite は現在もこれを使用している。

rqlite の設計図

rqlite は CP システムとして説明され、書き込みはリーダーを経由し、過半数の確認を必要とする。

分散SQLiteの系譜

主要プロジェクトの複製方式は以下のとおりである。

プロジェクト関連組織複製方式
rqlite著者Raft による合意 (CP)
dqliteCanonicalRaft ライブラリ (C 実装)
LitestreamBen JohnsonSQLite WAL を S3 へストリーミング、合意なし
LiteFSFly.ioファイルシステムレベルの複製、Consul のリース
cr-sqlite記載なしCRDT を拡張として追加

商用化と買収

Expensify が Bedrock を公開してから、この構想は8年間にわたりオープンソースとして存在したが、その期間に誰かが販売することはなかったとされる。

ChiselStrike、後の Turso は SQLite 本体をフォークした libSQL 上にホステッドサービスを構築し、ベンチャー資金を調達した。2026年には Supabase が Turso を買収した。

分散SQLiteの分野にはおよそ一ダースのプロジェクトがあり、そのうち2つが買収されている。また、少なくとも8チームが SQLite とレプリケーションの組み合わせを、異なる要件とプロトコルで再構築したとされる。

筆者の見立て

この記事は元記事の事実のみに基づいて自動生成されました。

出典

この記事をシェア