LevelDB

特點

LevelDB 是單進程的服務,性能非常之高,在一臺4核Q6600的CPU機器上,每秒鐘寫數據超過40w,而隨機讀的性能每秒鐘超過10w。此處隨機讀是完全命中內存的速度,如果是不命中 速度大大下降

局限

LevelDB 只是一個 C/C++ 編程語言的庫, 不包含網絡服務封裝, 所以無法像一般意義的存儲服務器(如 MySQL)那樣, 用客戶端來連接它. LevelDB 自己也聲明, 使用者應該封裝自己的網絡服務器.

實現介紹

leveldb中有一系列參數會與讀寫的效率有關,將相關的配置以及編譯常量統一修改成可運行時配置參數,測試選取最佳配置值。
首先確定在一個tair server上要啟幾個leveldb實例?

Tair中以桶來組織數據,如果按照一個桶一個leveldb實例,在做遷移復制的時候會很方便,但考慮如果在一塊磁盤上起多個實例,那么整體看來,多個順序寫變成了隨機寫,每個實例的compact進程會加劇整個磁盤的隨機IO,所以并不采用每個桶一個實例,而是針對磁盤的數量由相關配置控制實例的個數。

區塊星球登載此文出于傳遞信息目的,并不意味著贊同其觀點或證實其描述。本文不構成投資建議。投資者據此操作,風險自擔。
欧美日韩亚洲第一区