GitHub - fjall-rs/fjall: 🗄 用 Rust 编写的日志结构、可嵌入的键值存储引擎

主要观点:介绍了名为 Fjall 的用 Rust 编写的日志结构可嵌入键值存储引擎。
关键信息

  • 具备线程安全的类似 BTreeMap 的 API、100%安全稳定的 Rust 代码、基于 LSM-tree 类似 RocksDB 的存储等特性。
  • 不是独立服务器或关系型/宽列数据库,键限 65536 字节,值限 2^32 字节。
  • 支持不同类型的耐久性需求,可通过Keyspace::persist设置。
  • 内部多线程同步,可克隆KeyspacePartition,有异步示例。
  • 有多种特性标志可开启或关闭,如 lz4、miniz 等压缩方式。
  • 磁盘格式 1.0.0 稳定,2.0.0 采用新格式需手动迁移。
  • 提供多个实用示例及贡献方式。
    重要细节
  • 基本用法包括添加依赖、创建KeyspacePartition、插入、检索、删除数据等操作,还可通过前缀和范围搜索及反向迭代。
  • 单个Keyspace不能并行从不同进程加载。
  • 不同特性标志的作用及默认状态,如 lz4 为默认开启的 LZ4 压缩等。
  • 贡献方式包括提问、分享基准测试和创建内容、提交 PR 及打开问题等。
  • 所有源代码许可为 MIT 或 Apache-2.0。
阅读 13
0 条评论