#db #simple #kvs #language #file-base

filedb

filedb 是简单的基于文件的数据库。它是用 Rust 语言实现的。

3 个版本

使用旧的 Rust 2015

0.1.2 2018年9月20日
0.1.1 2018年9月12日
0.1.0 2018年9月9日

#9 in #kvs

每月 22 次下载

MIT 许可证

13KB
227

filedb

Build Status filedb at crates.io filedb at docs.rs

filedb 是简单的基于文件的数据库。
它成为了以下仓库的 golang 实现的 Rust 版本。

https://github.com/matryer/filedb

安装

将以下内容添加到您的

Cargo.toml

[package]
name = "some-project"
version = "1.0.0"
authors = ["my name <[email protected]>"]

[dependencies]
filedb = "0.1.2"

使用方法

main.rs

extern crate filedb;

use filedb::FileDB;
use filedb::callback::*;

fn main() {
    let mut db = FileDB::connect("/tmp/db").unwrap();
    let mut col = match db.c("documents") {
        Ok(c) => c.lock().unwrap(),
        Err(err) => {
            println!("[filedb] failed instance col struct.");
            return;
        },
    };
    let res = col.for_each(|index, data| { 
        println!("index: {}, text: {}", index, String::from_utf8(&data).unwrap());

        ForEachResultValue::new(false)
    });

    match res {
        Ok(_) => println!("[filedb] success!"),
        Err(err) => println!("[filedb] errror... {:?}", err),
    }
}

依赖项

~2–10MB
~111K SLoC