#database #performance #simple #continuation #save #file #rustbreak

daybreak

一个模块化和可配置的数据库,Rustbreak项目的延续

1个不稳定版本

0.1.0 2022年11月16日

#182Database implementations

每月21次下载

MPL-2.0许可证

85KB
1.5K SLoC

Rustbreak

Crates Link

文档

这是Rustbreak项目的延续,该项目已被存档。这是一个受Ruby中的daybreak启发的自包含文件数据库。它旨在快速且易于使用。您将其添加到应用程序中,它应该就会为您工作。您唯一需要关注的是保存。

何时使用它

这个库最初是因为需要能够快速编写一个需要持久性并且能够写入任意数据的Rust应用程序而产生的。

在Ruby中有daybreak,然而对于Rust,至今还没有类似的crate!

何时不使用它

Rustbreak为了易于使用和扩展,做出了几个权衡,如果您想使用这个库,了解这些缺点是很重要的

  • 数据库需要适应内存(Rustbreak不能进行部分加载/保存,所以如果数据库超出您的可用内存,您将运行OOM)
  • 并非所有后端都支持原子保存,所以如果在保存时程序崩溃,您可能会保存不完整的数据(特别是只有PathBackend支持原子保存)

功能

  • 简单易用、快速、安全
  • 线程安全
  • Serde兼容的存储(包含ron、bincode或yaml)

依赖

~2–11MB
~139K SLoC