米Deno Landは、分散ホスティング環境であるDeno Deploy上で提供される、アプリケーションに一貫性のある強力なデータベースを追加するための、もっとも迅速かつ簡単な手段となる「Deno KV on Deno Deploy」を、オープンベータ版として9月5日(現地時間)に公開した。ランタイムに直接組み込まれているため、構成をスキップして直ちにコーディングに取り組める。
オープンベータ版のDeno KV on Deno Deployでは、コマンドラインからKVインスタンスへ直接接続できるようになり、Deno Deployのパーソナルアクセストークンをローカル環境変数として設定し、データベースのURLを渡すだけで、KVインスタンスにおけるデータ探索、インポート、移行、更新が可能になった。
料金は、ストレージ、読み取りユニット、書き込みユニットに基づいて請求され、ストレージは1か月間にDeno KVデータベースに保存されるデータ量であり、ギガバイト単位で測定される。読み取り/書き込みユニットは、Deno KVデータベースからのデータの読み取りおよび書き込みの回数で、4KiB読み取りユニットと1KiB書き込みユニットで測定され、1KiBの読み取りトランザクションを3回実行すると、3個の読み取りユニットに対して料金が請求され、4KiBの書き込みトランザクションを1回実行すると、4個の書き込みユニットに対して料金が発生する。また、書き込みユニットの使用量には、データベースに対して有効化されたリージョンの数が乗算される。
デフォルト状態では、すべてのDeno KVデータベースに単一の書き込みリージョンと単一の読み取りリージョンが付属しており、ユーザーが世界中にいる場合は、読み取りリージョンが1つであるため、待ち時間が長くなる可能性がある。そのため、より多くの読み取りリージョンを有効化して、データベースをグローバルに拡張することによって、レイテンシを低減できる。
Deno KVは単一のトランザクションで複数の操作を実行可能な、アトミック操作機能を備えており、いずれかの操作が失敗した場合はトランザクション全体がロールバックされるので、常にデータの一貫性が確保される。従来バージョンでは、1つのトランザクションで最大10個のミューテーション操作しか実行できなかったが、ユーザーからの要望を受けてアトミック操作あたり1000個のミューテーション、またはアトミック操作の合計サイズ800KiBのどちらかまで利用可能となった。
さらに、Deno Deployプロジェクトへの認証の実装をできる限り容易にすべく、Deno KVをバックエンドに備えた高レベルのOAuth 2.0ラッパであり、GitHubやGoogle、Facebook、Slack、Discordなどの一般的なOAuth 2.0プロバイダが事前に構成された、Deno KV OAuthが構築されている。
そのほか近日中に、指定したキーの有効期限を制御するexpireInの搭載や、独自のS3バケットへのデータのバックアップ機能の追加、書き込み処理を行うプライマリリージョンの選択への対応といった機能拡充を予定する。
Deno Deployは、Deno KVなどの組み込みクラウドプリミティブを通じて、JavaScriptをホストするもっとも簡単な場所となることを目標としており、開発チームは現在、Deno KVとDeno Deployの一般提供に向けて取り組んでいるという。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です