leveldb-rs:在Rust中重新实现LevelDB(无绑定)

时间:2024-06-11 08:49:35
【文件属性】:

文件名称:leveldb-rs:在Rust中重新实现LevelDB(无绑定)

文件大小:112KB

文件格式:ZIP

更新时间:2024-06-11 08:49:35

Rust

级别数据库 在Rust中完全兼容LevelDB的实现。 (任何不兼容都是错误!) 该实现与原始实现非常接近; 通常,您会看到相同的算法按1:1转换,并且类(结构)和方法名称相似或相同。 注意:我不支持将此库用于您关心的任何数据。 但是,我确实关心错误报告。 地位 存在面向用户的方法:读/写/删除; 快照; 迭代 支持压缩,包括手动压缩。 完全同步:通过使用非原子类型可提高效率,但是在压缩过程中偶尔可能会阻塞写入。 在--release模式下,平均压紧需要0.2-0.5秒。 与原始实现兼容。 如果不是(崩溃/读取错误/写入错误),则为错误,需要修复。 表现不错; 虽然不能完全与原始版本(例如,我们不使用多线程)相提并论,但它非常有用。 安全:尽管很多地方都使用断言,所以您可能很少看到崩溃-在这种情况下,您应该提交错误。 目标 此实施的一些目标是 尽可能少的数据副本; 在大多数情


【文件预览】:
leveldb-rs-master
----src()
--------cache.rs(12KB)
--------version_set.rs(45KB)
--------blockhandle.rs(2KB)
--------benches()
--------env_common.rs(393B)
--------test_util.rs(4KB)
--------env.rs(2KB)
--------filter_block.rs(7KB)
--------error.rs(2KB)
--------filter.rs(9KB)
--------memtable.rs(12KB)
--------mem_env.rs(18KB)
--------table_block.rs(3KB)
--------skipmap.rs(18KB)
--------db_impl.rs(57KB)
--------block.rs(15KB)
--------types.rs(7KB)
--------db_iter.rs(16KB)
--------cmp.rs(10KB)
--------options.rs(3KB)
--------table_cache.rs(5KB)
--------key_types.rs(9KB)
--------version_edit.rs(12KB)
--------merging_iter.rs(11KB)
--------table_reader.rs(24KB)
--------write_batch.rs(5KB)
--------disk_env.rs(8KB)
--------version.rs(36KB)
--------infolog.rs(552B)
--------snapshot.rs(3KB)
--------table_builder.rs(11KB)
--------log.rs(9KB)
--------lib.rs(2KB)
--------block_builder.rs(5KB)
----.travis.yml(507B)
----.hgtags(240B)
----LICENSE(1KB)
----Cargo.toml(816B)
----coverage.sh(346B)
----examples()
--------word-analyze()
--------leveldb-tool()
--------kvserver()
--------write-a-lot()
--------build_examples.sh(128B)
----README.md(2KB)
----.hgignore(132B)
----bitbucket-pipelines.yml(656B)

网友评论