SQLiteをフォークした、オープンソースで外部からの貢献を受け入れるプロジェクト。組み込みレプリカ、リモートサーバーモード、SQLiteコアの拡張を追加します。
tursodatabase/turso
Rust製のインプロセスSQLデータベース。SQLiteの方言、ファイル形式、C APIと互換性があり、実験的なPostgresフロントエンドも備えています。
- スター
- 24,937
- フォーク
- 1,474
- 未解決の Issue
- 1,404
- 最終コミット
- 4 時間前
これは何?
Turso DatabaseはRust製のインプロセスSQLデータベースです。SQL方言、ファイル形式、C APIの各レベルでSQLiteとの互換性を目指しており、既存のSQLiteデータベースファイルをそのまま使用できます。SQLiteと同様のアプローチで、SQLをバイトコードにコンパイルする仮想マシン(VDBE)を基盤とし、複数のSQLフロントエンドでコアを共有できるようにすることを目指しています。
SQLiteとの互換性に加え、マルチバージョン同時実行制御によるBEGIN CONCURRENT、変更データキャプチャ、io_uringを介したLinuxでの非同期I/O、完全一致によるベクトル検索を提供します。Rust、JavaScript/WebAssembly、Python、Go、Java、.NET向けのバインディングが用意されており、CLIにはAIアシスタントがデータベースを検索・変更できるMCPサーバーモードも含まれています。Postgresの方言とワイヤプロトコルへの対応、保存時の暗号化、全文検索は実験的機能として記載されています。
プロジェクトはまだバージョン1.0に達しておらず、SQLiteとの互換性に関する一部の不足点は互換性リファレンスに記載されています。
主な機能
- 01SQLiteのSQL方言、ファイル形式、C APIと互換性
- 02MVCCを用いて書き込みスループットを高めるBEGIN CONCURRENT
- 03データベースの変更を追跡する変更データキャプチャ
- 04io_uringを使用したLinuxでの非同期I/O
- 05Rust、JavaScript、Python、Go、Java、.NET向けのバインディング
- 06AIアシスタント向けの組み込みMCPサーバーモード
ユースケース
- 別途サーバーを起動せずに、アプリケーションへSQLデータベースを組み込む
- 既存のSQLiteベースのアプリケーションをRustで移行または拡張する
- MCPを介してAIアシスタントにローカルデータベースの読み書きをさせる
- 組み込みエンジンでPostgres風のSQLを試す
クイックスタート
- 1
README に記載されている公式 CLI インストールスクリプトを実行します
- 2
対話型シェルを起動します
tursodb - 3
または、Rust クレートをプロジェクトに追加します
cargo add turso
使う前に知っておきたいこと
- Postgres 互換性、保存データの暗号化、全文検索、増分計算は実験的な機能です。
- プロジェクトはまだ 1.0 に向けて開発中と説明しているため、インターフェースが変更される可能性があります。
トピック
よくある質問
- turso とは?
- Rust製のインプロセスSQLデータベース。SQLiteの方言、ファイル形式、C APIと互換性があり、実験的なPostgresフロントエンドも備えています。 Turso DatabaseはRust製のインプロセスSQLデータベースです。SQL方言、ファイル形式、C APIの各レベルでSQLiteとの互換性を目指しており、既存のSQLiteデータベースファイルをそのまま使用できます。SQLiteと同様のアプローチで、SQLをバイトコードにコンパイルする仮想マシン(VDBE)を基盤とし、複数のSQLフロントエンドでコアを共有できるようにすることを目指しています。
- turso は無料で使えますか?ライセンスは?
- turso は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- turso は今もメンテナンスされていますか?
- 活発にメンテナンス中。turso の最終コミットは 2026年10月21日 です。
- turso は何に使えますか?
- 別途サーバーを起動せずに、アプリケーションへSQLデータベースを組み込む 既存のSQLiteベースのアプリケーションをRustで移行または拡張する MCPを介してAIアシスタントにローカルデータベースの読み書きをさせる 組み込みエンジンでPostgres風のSQLを試す
- turso のインストール方法は?
- README に記載されている公式 CLI インストールスクリプトを実行します 対話型シェルを起動します: tursodb または、Rust クレートをプロジェクトに追加します: cargo add turso
- turso はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/tursodatabase/turso
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
DuckDBは、別途サーバーを管理することなく、アプリケーション内で動作するインプロセス型の分析用SQLデータベースです。
ドキュメント、グラフ、リレーショナル、時系列、キー・バリューのデータと、リアルタイムクエリ、組み込みのアクセス制御を統合したRust製マルチモデルデータベース。
SQLを書かずにSQLiteデータベースファイルを作成、閲覧、編集、検索できる、無料のクロスプラットフォーム対応ビジュアルツールです。
時系列データやイベントデータを高性能にリアルタイム分析するためのPostgreSQL拡張機能。
Raft合意によりノード間で複製される、SQLiteベースの軽量で耐障害性に優れた分散リレーショナルデータベース。