LevelDB是一个Google实现的非常高效的kv数据库,目前的版本1.2能够支持billion级别的数据量了。 在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计。特别是LSM算法。
LevelDB 只是一个 C/C++ 编程语言的库, 不包含网络服务封装, 所以无法像一般意义的存储服务器(如 Mysql)那样, 用客户端来连接它. LevelDB 自己也声明, 使用者应该封装自己的网络服务器.
#include "leveldb/db.h"
#include
using namespACE std;
int main()
{
leveldb::DB *db;
leveldb::Options options;
options.create_if_missing = true;
// 開啟數據庫
leveldb::DB::Open(options, "/tmp/testdb", &db);
// 鍵 = MyKey29,值 = "Hello World!"
string key = "MyKey29", value = "Hello World!", result;
// 儲存 鍵/值對
db->Put(leveldb::WriteOptions(), key, value);
// 查詢 MyKey29 鍵的值
db->Get(leveldb::ReadOptions(), key, &result);
// 輸出值到屏幕
cout << "result = " << result << endl;
// 關閉數據庫
delete db;
return 0;
}