2个版本
0.21.1 | 2023年10月13日 |
---|---|
0.21.0 | 2023年9月30日 |
#1129 在 数据库接口
在 2 个Crates中使用(通过 bijou)
450KB
8K SLoC
rust-rocksdb
这是对 rust-rocksdb 的分支。
要求
- Clang和LLVM
贡献
欢迎反馈和pull requests!如果您觉得RocksDB的某个特性很重要,请通过创建issue告诉我,我会优先考虑。
用法
此绑定与RocksDB的特定版本静态链接。如果您想自己构建它,请确保您已克隆了RocksDB和压缩子模块
git submodule update --init --recursive
压缩支持
默认情况下,通过crate特性启用了对Snappy、LZ4、Zstd、Zlib和Bzip2压缩的支持。如果不需要所有这些压缩算法的支持,可以禁用默认特性并启用特定的压缩算法。例如,要仅启用LZ4压缩支持,请在Cargo.toml中进行以下更改
[dependencies.rocksdb]
default-features = false
features = ["lz4"]
多线程ColumnFamily切换
底层的RocksDB确实允许从多个线程同时创建和删除列族。但此crate默认不允许这样做以保持兼容性。如果您需要并发修改列族,请启用名为multi-threaded-cf
的crate特性,这将使此绑定默认使用RwLock。或者,您可以直接创建DBWithThreadMode<MultiThreaded>
而无需启用crate特性。
依赖
~21MB
~446K SLoC