KeeWiDB的高性能修煉之路:架構篇

數據也有冷熱之分,你知道嗎?
根據訪問的頻率的高低可將數據分為熱數據和冷數據,訪問頻率高的則為熱數據,低為冷數據 。如果熱、冷數據不區分,一并存儲 , 顯然不科學 。將冷數據也存儲在昂貴的內存中,那么你想 , 成本得多高呢?
有趣的是,根據我們實際的觀察 , 目前很多使用 Redis 的業務就是這樣操作的 。
得益于高性能以及豐富的數據結構命令,Redis 成為目前最受歡迎的 KV 內存數據庫 。但隨著業務數據量的爆炸增長,Redis 的內存消耗也會隨之爆炸 。無論客戶是自建服務器還是云服務器,內存都是一個必須考慮的成本問題,它不僅貴還要持續購買 。
此外 Redis 雖然提供了 AOF 和 RDB 兩種方案來實現數據的持久化,但是使用不當可能會對性能造成影響甚至引發丟數據的問題 。
好在,隨著科技的發展 , 持久化硬件的發展速度也在提升,持久內存的出現進一步縮小了與內存的性能差距 ?;蛟S,合理利用新型持久化技術會成為一個好的成本解決方案 。
基于這一思路,為解決 Redis 可能帶來的內存成本、容量限制以及持久化等一系列問題,騰訊云數據庫團隊推出了新一代分布式KV存儲數據庫 KeeWiDB 。本文將詳細介紹KeeWiDB 的架構設計思路、實現路徑及成效 。先簡單總結一下 KeeWiDB 的特性:

  • 友好:完全兼容 Redis 協議,原先使用 Redis 的業務無需修改任何代碼便可以遷移到 KeeWiDB 上;
  • 高性能低延遲:通過創新性的分級存儲架構設計 , 單節點讀寫能力超過 18 萬 QPS,訪問延遲達到毫秒級;
  • 更低的成本:內核自動區分冷熱數據,冷數據存儲在相對低價的 SSD 上;
  • 更大的容量:節點支持 TB 級別的數據存儲,集群支持 PB 級別的數據存儲;
  • 保證了事務的 ACID (原子性 Atomicity、一致性 Consitency、隔離性 Isolation、持久性 Durability)四大特性;
一、整體架構KeeWiDB 的架構由代理層和服務層兩個部分構成:代理層:由多個無狀態的Proxy節點組成,主要功能是負責與客戶端進行交互;服務層:由多個Server節點組成的集群,負責數據的存儲以及在機器發生故障時可以自動進行故障切換 。
KeeWiDB的高性能修煉之路:架構篇

文章插圖

    推薦閱讀