Deno KV 专为 JavaScript 和 TypeScript 构建。存储任何 JavaScript 值,从字符串到对象,无需担心序列化。
直观的基于 Promise 的 API 让数据的存储、检索和删除变得轻而易举。
const kv = await Deno.openKv();
const key = ["users", crypto.randomUUID()];
const value = { name: "Alice" };
await kv.set(key, value);
const result = await kv.get(key);
result.value; // { name: "Alice" }
从一个小型项目发展为企业级平台,无需配置、无需预置、无需编排。我们将全权负责。
Deno KV 构建于 FoundationDB 之上,每秒可处理数百万次操作。您知道还有哪些产品构建于 FoundationDB 之上吗?iCloud、Snowflake 等等。
Deno KV 使用 ACID 事务写入数据,因此您无需担心部分写入或数据不一致问题。即使您同时修改多个键也是如此。
一旦事务提交,数据便立即持久化,因此您可以确保您的数据始终安全。
const kv = await Deno.openKv();
const change = 10;
const bob = await kv.get(["balance", "bob"]);
const liz = await kv.get(["balance", "liz"]);
if (bob.value < change) {
throw "not enough balance";
}
const success = await kv.atomic()
.check(bob, liz) // balances did not change
.set(["balance", "bob"], bob.value - change)
.set(["balance", "liz"], liz.value + change)
.commit();
通过我们可定制的一致性级别,为您的应用程序找到延迟和一致性之间的最佳平衡。Deno KV 可以适应您的独特需求,让您专注于您的用户。
await kv.get(key, { consistency: "eventual" });
从最近的区域使用 最终一致性 读取。读取速度快,但可能返回过时数据。
await kv.get(key, { consistency: "strong" });
从主区域使用 强一致性 读取。读取速度较慢,但始终返回最新数据。
您可以监听数据库中给定键的变化,这使得构建新闻源、通知、分析等实时应用程序比以往任何时候都更容易。
const db = await Deno.openKv();
for await (const entries of db.watch([["foo"]])) {
entries[0].key; // ["foo"]
entries[0].value; // "bar"
entries[0].versionstamp; // "0100001dc33546270000"
}
您可以随意使用 Deno KV,通过独立的开源二进制文件以及远程连接到任何 Deno KV 实例的能力。甚至还有官方 npm 模块,因此您可以在 Node 中访问它。
import { openKv } from "@deno/kv";
使用我们的官方 @deno/kv npm 模块在 Node 中使用 Deno KV。
const kv = await openKv(<KV Connect URL>);
远程连接到任何 KV 实例。

使用 Deno CLI 上的 KV,本地开发和部署到生产环境都非常简单。Deno CLI 上的 KV 由 SQLite 提供支持,确保了本地开发期间的一致性和持久性。
不想使用 Deno Deploy?Deno KV 可在任何 VPS 上运行,因此您可以部署到您喜欢的云托管服务。
文档KV 定价
免费开始,您只需点击几下即可启动您的项目,所需的一切都已备齐
免费版
- KV 存储1 GiB
- KV 读取单元/月 (4KiB)450,000
- KV 写入单元/月 (1KiB)300,000
- 数据库区域数量1
- 选择您的写入区域否
专业版
- KV 存储5 GB (之后 $0.75/GiB)
- KV 读取单元/月 (4KiB)1,300,000 (之后 $1/百万)
- KV 写入单元/月 (1KiB)900,000 (之后 $2.50/百万)
- 数据库区域数量自定义
- 选择您的写入区域否
企业版
- KV 存储自定义
- KV 读取单元/月 (4KiB)自定义
- KV 写入单元/月 (1KiB)自定义
- 数据库区域数量自定义
- 选择您的写入区域是