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
「Mac」を狙う新しいアドウェアが見つかる–アップルのXProtectでは発見不可
IT関連
2021-08-17 20:14
マイクロソフトのCISOが語る–なぜパスワードをなくそうとしているのか
IT関連
2021-06-23 06:11
ロジャー・ウォーターズ、Facebookからのピンク・フロイド楽曲使用高額オファーに「ありえない」
企業・業界動向
2021-06-17 11:02
札幌市、リモート会議システム「Neat Frame」導入–音声品質の向上実感
IT関連
2022-06-23 04:32
Microsoft、Windowsの緊急パッチ公開 「PrintNightmare」に対処
アプリ・Web
2021-07-08 23:53
「のび太」の名前を持つ恐竜の足跡化石、科博がレプリカを公開
くらテク
2021-07-09 17:32
口元が透ける「顔がみえマスク」、ユニ・チャームが発売
くらテク
2021-04-28 10:36
LegalForceが社名変更–契約書レビューサービスを米国で1月に開始
IT関連
2022-12-03 03:19
ベゾス氏退任後のアマゾンはどうなる?–AWSによる革新、ジャシー新CEOが直面する課題
IT関連
2021-02-09 13:36
ディープフェイクを使ったサイバー攻撃が増加–ヴイエムウェア調査
IT関連
2022-08-10 21:47
AWS、「Amazon EKS Anywhere」のNutanix対応を発表。ハイパーコンバージド上でAmazon EKS Anywhere互換を実現
AWS
2022-12-23 19:57
狙いは「ゲームチェンジ」–DXビジネスでマルチクラウドを掲げたIBMの思惑
IT関連
2023-04-07 20:07
アドビ、生成AI「Firefly」の次世代モデル3種を発表
IT関連
2023-10-12 03:21
東芝テックとTTG、棚一台から導入できる無人店舗システム発売へ–品川駅で実証
IT関連
2024-03-13 06:25