redb是一个简单、便携、高性能、ACID、嵌入式键值存储。redb是用纯Rust编写的,并受到 lmdb 的一些启发。数据存储在一个mmap'ed、copy-on-write的B-trees 的集合中。有关详细信息,可参阅设计文档。useredb::{Database,Error,ReadableTable,TableDefinition};constTABLE:TableDefinition<str,u64>=TableDefinition::new("my_data");fnmain()->Result<(),Error>{letdb=unsafe{Database::create("my_db.redb")?};letwrite_txn=db.begin_write()?;{letmuttable=write_txn.open_table(TABLE)?;table.insert("my_key",&123)?;}write_txn.commit()?;letread_txn=db.begin_read()?;lettable=read_txn.open_table(TABLE)?;assert_eq!(table.get("my_key")?.unwrap(),123);Ok(())}redb正在积极开发中。
特性:
零拷贝、线程安全、基于BTreeMap的API完全符合ACID的事务MVCC支持并发读写器,无阻塞默认 Crash-safeSavepoints和rollbacks基准测试:
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论