Terark 和Topling的創(chuàng)始人都是(github id rockeet),TerarkDB和ToplingDB有兩個(gè)共同點(diǎn):
都 fork 自rocksdb
1.都使用了同一套底層算法
2.至于不同點(diǎn)呢,一圖勝千言(圖中黑色方塊表示目前閉源):

相比 TerarkDB,ToplingDB 的優(yōu)勢(shì)在于對(duì) RocksDB 的兼容性,源碼級(jí)的兼容性是 100%,也就是說,現(xiàn)有使用 RocksDB 的代碼,無(wú)需任何修改,即可使用 ToplingDB。
我們刻意讓 ToplingDB 和 RocksDB 的 diff 最小化,以降低合并代碼的成本(每次合并代碼,處理沖突,不超過半小時(shí)),并且,ToplingDB 可以完全復(fù)用 RocksDB 現(xiàn)有的 TestCase,這又進(jìn)一步降低了我們的開發(fā)成本。
其他方面,ToplingDB 不需要對(duì)比 TerarkDB,只需要對(duì)比 RocksDB,這里面最主要的是SidePlugin:
使用 json/yaml 來(lái)描述 config,用戶代碼不再需要關(guān)心配置管理
內(nèi)嵌 Web+ Prometheus exporter,于是存儲(chǔ)引擎在用戶眼里就成了一只透明的魚,骨骼、肌肉、血管、脈絡(luò)、呼吸、進(jìn)食、排泄……一清二楚
技術(shù)的目的是創(chuàng)造價(jià)值,而不是自?shī)首詷?,ToplingDB,從三個(gè)方面為用戶創(chuàng)造價(jià)值(上層DB 以Todis為例):

至于性能,為了避免糾紛,最好是大家自己去跑bench。
原文作者:rockeet
原文鏈接:https://www.zhihu.com/question/507334544/answer/2280166589