RocksDB使用小結

2021-10-18 13:18:04 字數 552 閱讀 8417

一、介紹

rocksdb是facebook的乙個實驗專案,目的是希望能開發一套能能在伺服器壓力下,真正發揮高速儲存硬體(特別是flash儲存)效能的高效資料庫系統。這是乙個c++庫,允許儲存任意長度二進位制kv資料。支援原子讀寫操作。rocksdb依靠大量靈活的配置,使之能針對不同的生產環境進行調優,包括直接使用記憶體,使用flash,使用硬碟或者hdfs。支援使用不同的壓縮演算法,並且有一套完整的工具供生產和除錯使用。rocksdb大量復用了levedb的**,並且還借鑑了許多hbase的設計理念。原始**從leveldb 1.5 上fork出來。同時rocksdb也借用了一些facebook之前就有的理念和**。

官網:文件:/doc.html

二、原理

lsm樹

rocksdb 是乙個快速儲存系統,它會充分挖掘 flash or ram 硬體的讀寫特性,支援單個 kv 的讀寫以及批量讀寫。rocksdb 自身採用的一些資料結構如 lsm/skiplist 等結構使得其有讀放大、寫放大和空間使用放大的問題。

RocksDB使用場景和特性

儲存和訪問數百pb的資料是乙個非常大的挑戰,開源的rocksdb就是facebook開放的一種嵌入式 持久化儲存 kv型且非常適用於fast storage的儲存引擎。傳統的資料訪問都是rpc,但是這樣的話訪問速度會很慢,不適用於面向使用者的實時訪問的場景。隨著fast storage的流行,越來越...

RocksDB使用場景和特性

儲存和訪問數百pb的資料是乙個非常大的挑戰,開源的rocksdb就是facebook開放的一種嵌入式 持久化儲存 kv型且非常適用於fast storage的儲存引擎。傳統的資料訪問都是rpc,但是這樣的話訪問速度會很慢,不適用於面向使用者的實時訪問的場景。隨著fast storage的流行,越來越...

編譯ROCKSDB總結

rocksdb是挺好的乙個東西,就是取得乙個可用的庫太麻煩。之前我是用的rocksdbsharp裡面他有編譯好windows 和 linux的庫 兼 容性還挺好,ubuntu win10 直接跑沒毛病,可惜他是去年build的了,我要用的checkpoint 這麼重要的功能,他這個版本沒有。於是乎只...