SpaceTimeDB - DBとサーバーを1つに統合
(github.com/clockworklabs)- リレーショナルデータベースでありながら、アプリケーションロジックを直接保存可能
- 「Modules」と呼ばれるストアドプロシージャ形式
- 別個のサーバーなしで、クライアントが直接DBに接続し、アプリケーションロジックをDB内部で実行
- バッチやOLAP処理の代わりに、「最高の速度」と「最小のレイテンシ」を保証するために最適化
- すべてのアプリケーション状態をメモリに保存する方式で高速化を実現
- データはWAL(Write-Ahead-Log)で保持
- MMORPGのBitCraft Onlineの実際のバックエンドが、1つの SpacetimeDB モジュールとして稼働中。別個のサーバーは不要
- 組み込みデータベースライブラリとして動作し、自身のアプリケーションに埋め込み可能
- または個別のスタンドアロンとして直接実行することも可能(spacetime CLIを使用)
- Rust製のシングルバイナリで、Mac/Linux/Windowsへのインストールをサポート
- "Multiplayer at the speed of light"
6件のコメント
OracleのPL/SQLみたいなものでしょうか?
コンセプト的には似ていますが、対応言語の幅が広いので、より汎用的だと思います。
おお、興味深いですね
将来的にはほかの言語にも対応を増やすつもりらしいですが、かなり良いアイデアだと思います。
パフォーマンスの悩みもだいぶ減りそうですね。
GitHubのリポジトリを見るとRustで書かれているようですが、「GoバイナリでMac/Linux/Windowsへのインストールをサポート」とあります。この内容がどこに書かれているのか分かる方はいらっしゃいますか?
あっ、私が書いている途中で何かと混同してしまったようです。修正しておきました。