**'是一個由Google公司所研發的键-值存储嵌入式數據庫管理系統編程庫, 以開源的BSD許可證發佈。
特徵
- 高性能
- 簡單的體系結構:只支持API调用,不支持SQL語言
- 自由軟件和開放原始碼軟件
- 數據支持被Snappy函式庫壓縮,以減少Disk I/O提升效能
例子
儲存鍵/值對,和查詢鍵的值:
#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
執行結果
(LevelDB安裝目錄為:leveldb-read-only)
% g++ test.cc -Ileveldb-read-only/include -Lleveldb-read-only -lleveldb -lpthread
% ./a.out
result = Hello World!
RocksDB
2013年Facebook基於LevelDB開發出RocksDB,特別針對伺服器負載而優化。
语言的绑定
- [https://github.com/reeze/php-leveldb PHP LevelDB Extension]
- [https://github.com/carlopires/cpy-leveldb Python LevelDB Binding]
參見
- Berkeley DB
- Apache Derby
参考文献
外部連結
- [https://archive.today/20130426121503/http://leveldb.googlecode.com/ LevelDB 開放原始碼計劃主頁]
评论 (0)