LevelDB

维基百科,自由的百科全书
LevelDB
开发者Google
首次发布2012年5月,​11年前​(2012-05
当前版本
  • 1.23 (2021年2月23日;稳定版本)[1]
编辑维基数据链接
源代码库 编辑维基数据链接
编程语言C++
操作系统跨平台
类型嵌入数据库编程库
许可协议BSD许可证
网站github.com/google/leveldb 编辑维基数据

LevelDB是一个由Google公司所研发的键-值存储嵌入式数据库管理系统编程库,[2]开源BSD许可证发布。[3]

特征[编辑]

例子[编辑]

储存键/值对,和查询键的值:

#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. ^ 1.0 1.1 Release 1.23. 2021年2月23日 [2021年3月13日]. 
  2. ^ leveldb實現解析 (PDF). [2017-09-05]. (原始内容存档 (PDF)于2012-01-31). 
  3. ^ LevelDB: A Fast Persistent Key-Value Store. [2011-08-07]. (原始内容存档于2016-03-26). 
  4. ^ LevelDB Benchmarks. [2011-08-07]. (原始内容存档于2011-08-20). 
  5. ^ A fast compressor/decompressor. [2011-07-30]. (原始内容存档于2015-08-22). 
  6. ^ Source Checkout - LevelDB. [2011-08-06]. (原始内容存档于2015-03-18). 
  7. ^ RocksDB. [2014-01-25]. (原始内容存档于2021-02-05). 

外部链接[编辑]