您的位置:首页 > 业界新闻

levelDB—初识levelDB

2013-12-01 22:35 162 查看
levelDB是google实现的一个非常高效的key-value数据库,是能够处理十亿级别规模key-value型数据持久性存储的C++程序库。具有极高的读写速度。官方网站报道其随机写性能达到40万条记录每秒,随机读性能达到6万条记录每秒。写操作要远快于读操作,顺序读写操作大于随机读写操作。

levelDB的作者是Jeaf Dean (http://research.google.com/people/jeff/index.html)和 Sanjay Ghemawat(http://research.google.com/pubs/SanjayGhemawat.html),是Google的Fellow,属于重量级工程师。

levelDB的安装过程:

1)下载源码,http://code.google.com/p/leveldb/downloads/detail?name=leveldb-1.14.0.tar.gz&can=2&q=

2) 解压tar -xzvf  leveldb-1.14.0.tar.gz

3) 进入leveldb-1.14.0目录,执行命令:make

4) 当目录中生成.a 和 .so文件时,说明安装成功。

levelDB的使用方法:

1) 编写如下代码MainTest.cpp:

#include "leveldb/db.h"
#include <iostream>

using namespace std;

int main(int argc, char** argv)
{
leveldb::DB *db;
leveldb::Options options;

options.create_if_missing = true;

//open the database 打开数据库
leveldb::DB::Open(options, "testdb", &db);

//key-value pair  键值对声明
string key = "key", value = "value", result;

//store the key-value  插入键值对
db->Put(leveldb::WriteOptions(), key, value);

//select the key-value  查询键值
db->Get(leveldb::ReadOptions(), key, &result);

//output to the screen
cout << "result = " << result << endl;

//close the database 关闭数据库
delete db;

return 0;
}
2)编译MainTest.cpp

     g++ MainTest.cpp  -Ileveldb-1.14.0/include/  leveldb-1.14.0/ibleveldb.a  -lpthread

     其中leveldb-1.14.0为leveldb的安装目录,就是刚才解压出来的目录。

3)第二步生成a.out, 执行命令 ./a.out

     打印, result = value, 并且在目录下生成testdb文件夹,里面有LOG CURRENT等文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息