Deno、JavaScript/TypeScriptのためのデータストア「Deno KV」発表。Deno本体にSQLiteを統合、分散環境では強い一貫性も提供

今回は「Deno、JavaScript/TypeScriptのためのデータストア「Deno KV」発表。Deno本体にSQLiteを統合、分散環境では強い一貫性も提供」についてご紹介します。

関連ワード (対応、必要、設定等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


サーバサイドやエッジでのJavaScriptランタイムを提供するDenoは、Deno本体に統合したJavaScript/TypeScriptのためのデータストア「Deno KV」を発表しました。

これまでDenoでアプリケーションを開発し実行する際には、データを保存するためのデータベースをユーザーが用意する必要がありました。

Deno KVはDenoに統合されたデータストアとして、JavaScriptの変数や配列変数、オブジェクトなどのあらゆる構造化された値が保存可能なキーバリュー型のデータベースとして提供されるため、ユーザーがデータベースを用意しなくてよくなります。

Announcing Deno KV: A Global Database for Global Apps!

Read data in milliseconds, worldwide
Zero setup and zero provisioning
ACID transactions
Designed for JavaScript & TypeScript
Built on FoundationDB and SQLite

Read more → https://t.co/XoRzT21dKs

— Deno (@deno_land) April 28, 2023

Deno KVは、4月29日にリリースされた「Deno 1.33」からDeno本体に統合され、APIから簡単かつ高速に利用できるようになりました。

ローカルではSQLite、分散エッジではFoundatoinDBが動作

Deno KVは、Deno単体で利用した場合と、Deno Deployによって世界中に分散されたエッジ環境上で利用した場合で、それぞれバックエンドデータベースが異なります。

ローカル環境などでDenoを単体で利用する場合、Deno KVはDenoに統合されたSQLiteデータベースを用いて動作します。SQLiteは設定不要のコンパクトかつ高速なデータベースであり、Deno KVも同様に設定不要で高速に動作します。

一方、Deno Deployによる世界中に分散されたエッジ環境のDenoでアプリケーションを実行する場合、それぞれのエッジのDeno KVは分散データベースであるFoundationDBのノードとして動作します。

FoundationDBは、もともとAppleがオープンソースとして公開したNoSQLデータベースです。分散環境で高速に動作しつつトランザクション操作により全体としてデータの強い一貫性を実現できます。

Deno Deploy上のDeno KVは、Deno Land社がマネージドなデータベースサービスとして提供するFoundationDBをバックエンドとして利用するため、やはり設定や運用を気にすることなく、高速かつスケーラブルで強い一貫性を実現したデータストアが利用可能です(結果整合性の選択も可能です)。

開発者は、トランザクション処理について意識する必要はあるものの、ローカル環境のDenoでDeno KVを用いて開発したアプリケーションを、そのままDeno Deployへデプロイして世界中のエッジで実行される分散アプリケーションとして実行することができるわけです。

Denoは、分散環境におけるDeno KVのデモアプリとして、お絵かきアプリを紹介しています。これは世界各地のエッジ上のDenoでお絵かきアプリが実行されつつも、分散データベースとしてのDeno KVにより全体が1つのまとまったデータとして参照できる、という動作を示したものです。

A little Deno KV app https://t.co/X1VTPEuSrN

The images are monotone and low resolution to fit in the alloted 2kb maximum size per entry in the Deno KV database.

Source code here https://t.co/ApYYdVKH5C

Visit https://t.co/XoRzT21dKs to join the waitlist for Deno KV access. pic.twitter.com/jLH6X0xkXW

— Deno (@deno_land) May 5, 2023

Deno KVは現在ベータ版として申し込みを受付中です(ウェイトリストへの申し込み)。

エッジ環境での分散データストアの競合が始まる

CDNのような分散したエッジを統合するデータベースとしては、CloudflareがSQLiteのレプリケーション機能を用いた「Cloudflare D1」を発表しています。

参考:Cloudflare、CDNエッジで稼働するSQLiteベースのRDB「Cloudflare D1」発表。ユーザーの近接CDNエッジに自動でレプリカを分散配置、高速アクセスを実現

さらに、Next.jsの開発元として知られるVercelもRedisをベースとしつつ分散環境にも対応したデータストレージの「Vercel KV」を発表しています(後日、別記事で紹介する予定です)。

エッジ環境に対応したJavaScriptランタイムの相次ぐ登場に続いて、今度は分散データベースの分野での商用サービスの競合が始まろうとしています。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
火災から3カ月 ルネサス、半導体生産能力が100%復旧
企業・業界動向
2021-06-26 02:47
音楽のカプセルトイ、5月発売 フィギュアをスマホに載せると曲が流れる 第1弾「サンボマスター」
くらテク
2021-03-24 20:35
NEC、製造現場に量子着想技術を本格導入–生産計画の立案工数を90%削減
IT関連
2023-01-22 21:28
リモートワークを中心とする人材事業を展開するキャスターが13億円のシリーズD調達、既存事業拡大と新規事業領域に進出
IT関連
2022-02-04 23:52
稼げるセキュリティ資格–資格試験勉強の注意点と複数資格を取得する際の考え方
IT関連
2023-11-21 18:17
「システムアップデート」を装ったAndroidの新たなスパイウェアはデバイスを完全に制御する
セキュリティ
2021-03-29 15:05
ポケモンGOに週替わり1ポケコインボックス 「リモートレイドパス」「ロケットレーダー」も
くらテク
2021-02-04 12:26
おしゃれ雑貨ショップ向け卸売マーケットプレイスの仏Ankorstoreがさらに約111.6億円調達
ネットサービス
2021-05-19 22:31
「Microsoft Store」、方針変更を撤回–オープンソースアプリの課金禁止に物議
IT関連
2022-07-23 09:05
うつ病の自宅臨床試験の実施に乗り出すCerebralとAlto Neuroscience
IT関連
2022-01-31 22:34
ビジネスアプリのフロントエンド設計を簡単にするKleeenが約4億円を調達
ソフトウェア
2021-02-25 16:33
企業の生成AI活用で「大規模」な言語モデルは不要–インフォマティカのCEO
IT関連
2023-10-31 22:31
Cloudflare、分散SQLiteデータベース「Cloudflare D1」のオープンベータを開始
Cloudflare
2023-09-29 10:11
Zoomの第1四半期決算、売上高が191%増–予想上回る
IT関連
2021-06-02 03:20