在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>TerarkDB兼容RocksDB的KV存儲引擎

TerarkDB兼容RocksDB的KV存儲引擎

2022-06-16 | zip | 7.94 MB | 次下載 | 2積分

資料介紹

授權協議 Apache 2.0
開發語言 C/C++
軟件類型 開源軟件

軟件簡介

TerarkDB 是字節跳動開源的?RocksDB 的替代品,具有優化的尾部延遲、吞吐量和壓縮等。在大多數情況下,你可以將現有的 RocksDB 實例遷移到 TerarkDB,沒有任何問題。

  • TerarkDB 僅在 Linux 平臺下測試和生產就緒
  • 除 C/C++ 之外的語言綁定尚未完全測試。
  • 現有數據可以直接從 RocksDB 遷移到 TerarkDB,但不能遷移回 RocksDB。
  • TerarkDB 是從 RocksDB v5.18.3 分支出來的

性能概覽

  • RocksDB v6.12
  • 服務器
    • Intel(R) Xeon(R) Gold 5218 CPU @ 2.30GHz(2 插槽,32 核 64 線程)
    • 376 GB 動態內存
    • NVMe TLC 固態硬盤(3.5 TB)
  • 工作臺工具和工作負載
    • 利用?db_bench
    • 10 個客戶端線程,每個線程 20GB 請求
    • 鍵 = 24 字節,值 = 2000 字節
    • heavy_write?意味著 90% 的寫操作
    • heavy_read?意味著 90% 的讀取操作

pYYBAGKoCJ2ACI5zAAE8je4esE8447.png

用法

  • 基于塊的表(BlockBasedTable
#include 
#include "rocksdb/db.h"

rocksdb::DB* db;
rocksdb::Options options;

// Your options here
options.create_if_missing = true;
options.wal_bytes_per_sync = 32768;
options.bytes_per_sync = 32768;

// Open DB
auto status = rocksdb::DB::Open(options, "/tmp/testdb", &db);

// Operations
std::string value;
auto s = db->Put(rocksdb::WriteOptions(), "key1", "value1");
s = db->Get(rocksdb::ReadOptions(), "key1", &value);
assert(s.ok());
assert("value1" == value);

s = db->Delete(rocksdb::WriteOptions(), "key1");
assert(s.ok());

或手動設置表格格式和表格選項:

#include 
#include "rocksdb/db.h"
#include "rocksdb/options.h"
#include "rocksdb/table.h"

rocksdb::DB* db;
rocksdb::Options options;

// Your db options here
options.create_if_missing = true;
options.wal_bytes_per_sync = 32768;
options.bytes_per_sync = 32768;

// Manually specify target table and table options
rocksdb::BlockBasedTableOptions table_options;
table_options.block_cache =
    rocksdb::NewLRUCache(32ULL << 30, 8, false);
table_options.block_size = 8ULL << 10;
options.table_factory = std::shared_ptr
                          (NewBlockBasedTableFactory(table_options));

// Open DB
auto status = rocksdb::DB::Open(options, "/tmp/testdb2", &db);

// Operations
std::string value;
auto s = db->Put(rocksdb::WriteOptions(), "key1", "value1");
s = db->Get(rocksdb::ReadOptions(), "key1", &value);
assert(s.ok());
assert("value1" == value);

s = db->Delete(rocksdb::WriteOptions(), "key1");
assert(s.ok());
  • Terark 壓縮表格(TerarkZipTable
#include 
#include "rocksdb/db.h"
#include "rocksdb/options.h"
#include "rocksdb/table.h"
#include "table/terark_zip_table.h"

rocksdb::DB* db;
rocksdb::Options options;

// Your db options here
options.create_if_missing = true;
options.wal_bytes_per_sync = 32768;
options.bytes_per_sync = 32768;

// TerarkZipTable need a `fallback` options because you can indicate which LSM level you want to start using TerarkZipTable
// For example, by setting tzt_options.terarkZipMinLevel = 2, TerarkDB will use your fallback Table on level 0 and 1.
std::shared_ptr table_factory;
rocksdb::BlockBasedTableOptions blockbased_options;
blockbased_options.block_size = 8ULL << 10;
table_factory.reset(NewBlockBasedTableFactory(blockbased_options));

rocksdb::TerarkZipTableOptions tzt_options;
// TerarkZipTable requires a temp directory other than data directory, a slow device is acceptable
tzt_options.localTempDir = "/tmp";
tzt_options.indexNestLevel = 3;
tzt_options.sampleRatio = 0.01;
tzt_options.terarkZipMinLevel = 2; // Start using TerarkZipTable from level 2

table_factory.reset(
    rocksdb::NewTerarkZipTableFactory(tzt_options, table_factory));

options.table_factory = table_factory;

// Open DB
auto status = rocksdb::DB::Open(options, "/tmp/testdb2", &db);

// Operations
std::string value;
auto s = db->Put(rocksdb::WriteOptions(), "key1", "value1");
s = db->Get(rocksdb::ReadOptions(), "key1", &value);
assert(s.ok());
assert("value1" == value);

s = db->Delete(rocksdb::WriteOptions(), "key1");
assert(s.ok());

實際性能改進

TerarkDB 已經部署在字節跳動的許多應用程序中,在大多數情況下,TerarkDB 可以幫助減少延遲峰值并極大地提高吞吐量。

磁盤寫入(Disk Write

獲取延遲(Get Latency?)

?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1涂鴉各WiFi模塊原理圖加PCB封裝
  2. 11.75 MB   |  76次下載  |  1 積分
  3. 2錦銳科技CA51F2 SDK開發包
  4. 24.06 MB   |  29次下載  |  1 積分
  5. 3錦銳CA51F005 SDK開發包
  6. 19.47 MB   |  3次下載  |  1 積分
  7. 4蘋果iphone 11電路原理圖
  8. 4.98 MB   |  3次下載  |  2 積分
  9. 5基礎模擬電子電路
  10. 3.80 MB   |  3次下載  |  1 積分
  11. 6RA-Eco-RA6M4-100PIN-V1.0開發板資料
  12. 34.89 MB  |  1次下載  |  免費
  13. 7STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4編程手冊
  14. 3.32 MB   |  1次下載  |  免費
  15. 8聯想A820t手機維修圖紙包括主板原理圖 尾板原理圖 點位圖
  16. 0.62 MB   |  次下載  |  5 積分

本月

  1. 1AI智能眼鏡產業鏈分析
  2. 4.43 MB   |  383次下載  |  免費
  3. 2蘇泊爾電磁爐線路的電路原理圖資料合集
  4. 2.02 MB   |  296次下載  |  5 積分
  5. 3貼片三極管上的印字與真實名稱的對照表詳細說明
  6. 0.50 MB   |  94次下載  |  1 積分
  7. 4長虹液晶電視R-HS310B-5HF01的電源板電路原理圖
  8. 0.46 MB   |  91次下載  |  5 積分
  9. 5涂鴉各WiFi模塊原理圖加PCB封裝
  10. 11.75 MB   |  76次下載  |  1 積分
  11. 6錦銳科技CA51F2 SDK開發包
  12. 24.06 MB   |  29次下載  |  1 積分
  13. 7AO4803A雙P通道增強型場效應晶體管的數據手冊
  14. 0.11 MB   |  28次下載  |  2 積分
  15. 8長虹液晶彩電LS29機芯的技術資料說明
  16. 3.42 MB   |  16次下載  |  2 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935127次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191388次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183342次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81588次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73815次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65988次下載  |  10 積分
主站蜘蛛池模板: 小雪被老外黑人撑破了视频 | 四虎美女 | 亚洲理论在线观看 | 九色综合伊人久久富二代 | 成人综合在线视频 | 国产亚洲精品自在久久77 | 国产经典三级在线 | 日韩欧美高清色码 | 免费福利午夜影视网 | 久久人人做人人玩人精品 | 黄色网址日本 | 黄色网页在线播放 | 天天色官网| 精品一区二区三区视频 | 一级a毛片免费 | 亚州 色 图 综合 | 成人激情在线 | 业余性自由色xxxx视频 | 免费人成在线观看网站品爱网日本 | xx视频在线 | 色5月婷婷| 天天操你| 伊人亚洲 | 一区一精品 | 欧美30p| 欧美日韩在线成人免费 | 色激情五月 | 天天在线天天看成人免费视频 | 国产在线五月综合婷婷 | 日本一区二区三区在线 视频观看免费 | 欧美视频一区二区三区在线观看 | 么公的好大好硬好深好爽在线视频 | 色综合五月婷婷 | 国产爱v| 色婷婷丁香六月 | 亚洲精品久久片久久 | 国产高清美女一级a毛片 | 亚欧乱色束缚一区二区三区 | 成 人 免费 网站 | 欧美1819| 免费看黄色小视频 |