LevelDB

是一個由Google公司所研發的键-值存储嵌入式數據庫管理系統編程庫,[2]開源BSD許可證發佈。[3]

LevelDB
開發者Google
初始版本2012年5月2012-05
穩定版本
1.22[1](2019年5月3日,21個月前)
源代码库
编程语言C++
操作系统跨平台
类型嵌入數據庫編程庫
许可协议BSD许可证
网站github.com/google/leveldb 

特徵

  • 高性能 [4]
  • 簡單的體系結構:只支持API调用,不支持SQL語言
  • 自由軟件開放原始碼軟件
  • 數據支持被Snappy函式庫壓縮[5],以減少Disk I/O提升效能

例子

儲存鍵/值對,和查詢鍵的值:

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

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

執行結果

(LevelDB安裝目錄為:leveldb-read-only)[6]

% g++ test.cc -Ileveldb-read-only/include -Lleveldb-read-only -lleveldb -lpthread
% ./a.out 
result = Hello World!

RocksDB

2013年Facebook基於LevelDB開發出RocksDB,特別針對伺服器負載而優化。[7]

语言的绑定

參見

参考文献

  1. . 2019年5月3日 [2019年5月3日].
  2. (PDF). [2017-09-05]. (原始内容存档 (PDF)于2012-01-31).
  3. . [2011-08-07]. (原始内容存档于2016-03-26).
  4. . [2011-08-07]. (原始内容存档于2011-08-20).
  5. . [2011-07-30]. (原始内容存档于2015-08-22).
  6. . [2011-08-06]. (原始内容存档于2015-03-18).
  7. . [2014-01-25]. (原始内容存档于2021-02-05).

外部連結

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.