Deno、SQLiteベースのキーバリューストア「Deno KV」のスタンドアロン版を公開。ソースコードもオープンに
今回は「Deno、SQLiteベースのキーバリューストア「Deno KV」のスタンドアロン版を公開。ソースコードもオープンに」についてご紹介します。
関連ワード (一貫性、統合、高速等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
JavaScriptランタイムを提供するDenoは、SQLiteベースのキーバリューストア「Deno KV」をスタンドアロンで実行可能なバイナリの提供開始を発表しました。オープンソースとして公開もされています。
スタンドアロン版Deno KV(もしくはSelf-hosted版Deno KV)は、Denoと接続してバックエンドデータベースとして利用可能です。
これまでのDeno KVとの違い
これまでDenoは、Deno KVを2つの方法で提供してきました。
1つ目は、Deno自身にSQLiteを組み込み、Denoの内臓データベースとしてDeno KVを実装することで、JavaScript/TypeScriptのためのデータストアとして提供する方法です。
この方法では、Deno KVはDenoに統合されたローカルなデータストアとして、JavaScriptの変数や配列変数、オブジェクトなどのあらゆる構造化された値が保存可能なキーバリュー型のデータベースとなります。
開発者はDenoとは別にデータベースを用意する必要がなくなる利点があります。
2つ目は、Denoの分散ホスティング環境であるDeno Deploy上でマネージドサービスとして提供される「Deno KV on Deno Deploy」です。
Deno KV on Deno Deployは中央にNoSQLデータベースのFoundation DBがあり、エッジで稼働するDenoからこのFoundation DBに接続して利用することになります。
この提供方法では、分散環境で高速に動作しつつトランザクション操作により全体としてデータの強い一貫性を実現します。
開発者は、トランザクション処理について意識する必要はあるものの、ローカル環境のDenoでDeno KVを用いて開発したアプリケーションを、そのままDeno Deployへデプロイして世界中のエッジで実行される分散アプリケーションとして実行することができます。
そして今回提供されるのが、Denoから分離され、SQLiteをベースに実装され単独で実行可能となるDeno KVスタンドアロン版です。
Deno KVスタンドアロン版はSQLiteベースとして、SQLiteのバックアップツールやポイントインタイムリカバリツールなどがそのまま利用できる利点が得られます。
Deno KVスタンドアロン版のソースコードはGitHubで公開されています。