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;
}