Windows版的LevelDB - leveldbwin

jopen 12年前發布 | 85K 次閱讀 NoSQL數據庫 leveldb

leveldb的Windows版本,開源的leveldb只支持Linux的,這個是在windows下可以編譯和運行的。支持Visual Studio 2008和2010。編譯出來的庫文件可以是靜態庫也可以是動態庫。

注:leveldb本來是支持windows的,因為chrome用的就是leveldb,但是chrome的編譯太大了,而且從里面剝離出來很復雜。在使用時,發現chrome版的leveldb要比這個leveldbwin要快。大概快1/6左右,有想用快的,可以下個chrome,然后把 leveldb部分剝離出來。

項目主頁:http://www.baiduhome.net/lib/view/home/1324467179811


 

Leveldb是一個google實現的非常高效的kv數據庫,目前的版本1.2能夠支持billion級別的數據量了。 在這個數量級別下還有著非常高的性能,主要歸功于它的良好的設計。特別是LSM算法。

LevelDB 是單進程的服務,性能非常之高,在一臺4個Q6600的CPU機器上,每秒鐘寫數據超過40w,而隨機讀的性能每秒鐘超過10w。

示例代碼:

#include 
#include "leveldb/include/db.h"

leveldb::DB* db;
leveldb::Options options;
options.create_if_missing = true;
leveldb::Status status = leveldb::DB::Open(options, "/tmp/testdb", &db);
assert(status.ok());

std::string value;
leveldb::Status s = db->Get(leveldb::ReadOptions(), key1, &value);
if (s.ok()) s = db->Put(leveldb::WriteOptions(), key2, value);
if (s.ok()) s = db->Delete(leveldb::WriteOptions(), key1);

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!