mirror of
https://github.com/denoland/deno.git
synced 2024-12-11 18:17:48 -05:00
2d9298f5f5
This commit updates the ext/kv module to use the denokv_* crates for the protocol and the sqlite backend. This also fixes a couple of bugs in the sqlite backend, and updates versionstamps to be updated less linearly.
26 lines
1.1 KiB
Markdown
26 lines
1.1 KiB
Markdown
# deno_kv
|
|
|
|
This crate provides a key/value store for Deno. For an overview of Deno KV,
|
|
please read the [manual](https://deno.land/manual/runtime/kv).
|
|
|
|
## Storage Backends
|
|
|
|
Deno KV has a pluggable storage interface that supports multiple backends:
|
|
|
|
- SQLite - backed by a local SQLite database. This backend is suitable for
|
|
development and is the default when running locally. It is implemented in the
|
|
[denokv_sqlite crate](https://github.com/denoland/denokv/blob/main/sqlite).
|
|
- Remote - backed by a remote service that implements the
|
|
[KV Connect](#kv-connect) protocol, for example
|
|
[Deno Deploy](https://deno.com/deploy).
|
|
|
|
Additional backends can be added by implementing the `Database` trait.
|
|
|
|
## KV Connect
|
|
|
|
The KV Connect protocol allows the Deno CLI to communicate with a remote KV
|
|
database. The
|
|
[specification for the protocol](https://github.com/denoland/denokv/blob/main/proto/kv-connect.md),
|
|
and the
|
|
[protobuf definitions](https://github.com/denoland/denokv/blob/main/proto/schema/datapath.proto)
|
|
can be found in the `denokv` repository, under the `proto` directory.
|