#db #database-access #lib #kv-db #api-key

aymr

即插即用,连接各种KV数据库,并通过网络访问

2个版本

0.0.1 2024年3月26日
0.0.0 2024年3月1日

#9 in #数据库

GPL-2.0-or-later

24KB
472

aymr

Aymr - 用于热插拔KV数据库的数据库抽象库

Aymr仍在开发中!目前不能在生产环境中使用!

Aymr是一个包装库,可以轻松地在多个KV数据库之间切换,并可以通过网络访问它们。

这个项目的主要目标是统一多个不同的KV数据库API,这个想法是在从sled 0.34 迁移到 1.0-alpha 期间产生的。这两个都拥有相同的基本功能,但不幸的是,它们的API略有不同。正因为如此,产生了创建一个中间通用API来统一它们的想法。

大多数嵌入式KV数据库功能相同,不同的API是开发者与之交互的关键区别,这一说法通常成立。因此,Aymr被发展成为一个独立的项目,以支持尽可能多的嵌入式数据库。

需要注意的是,不同KV数据库之间存在许多细微差别,而Aymr无法在单个API下捕获它们的所有各种怪癖和语义。

使用

Aymr是一个Rust库,可以像这样导入。为了选择要使用的数据库,请使用适当的特性标志。目前我们支持以下

由于数据库配置之间很少有共同之处,每个Aymr数据库的配置都将是不同的。有关如何设置和运行每个数据库的更多信息,请参阅Aymr文档。

示例

Aymr的使用示例可以在/examples目录下找到。您可以使用cargo来查看Aymr的实际应用

cargo run --example basic_db_usage

依赖项

~0.7–1.4MB
~18K SLoC