突破開源Redis的內存限制,存算分離的GaussDB到底有多能“裝”?


摘要:GaussDB(for Redis)(下文簡稱高斯Redis)是華為雲數據庫團隊自主研發的兼容Redis協議的雲原生數據庫,該數據庫采用計算存儲分離架構,突破開源Redis的內存限制,可輕松擴展至PB級存儲。

本文將從存儲架構、四大特性、競爭力、應用場景等方面進行介紹。

存儲架構

高斯Redis基於計算存儲分離架構,計算層實現熱數據緩存,存儲層實現全量數據的落盤,中間通過RDMA高速網絡互連,通過算法預測用戶的訪問規律,實現數據的自動冷熱交換,最終達到極致的性能提升。

四大特性

該架構基於華為內部強大且廣泛使用的自研分布式存儲系統DFV,實現了一套Share Everything的雲原生架構,充分發揮了雲原生的彈性伸縮、資源共享的優勢,使得高斯Redis具備強一致、秒擴容、低成本、超可用的四大特點,完美避開了開源Redis的主從堆積、主從不一致、fork抖動、內存利用率只有50%、大key阻塞、gossip集群管理等問題。

  • 強一致

數據復制是存儲的事情,因此專業的事情交給專業的團隊來做。通過分布式存儲DFV,高斯Redis輕松實現了3副本強一致,並可輕松支持6副本,為業界首創。

在強一致架構下,用戶再也不用擔心開源Redis的主從堆積,帶來的丟數據、不一致、OOM等極端問題,更不用擔心業務出錯,比如計數器、限流器、訪問統計、hash字段等不一致。

  • 秒擴容

數據規模膨脹之后,擴容是個高危且困難的操作。高斯Redis基於雲原生架構,將擴容分成計算層和存儲層。計算層擴容,無需任何數據搬遷,只需修改路由映射,即可秒級完成。存儲層是個共建的超級數據湖,其容量巨大,而且擴容是切成細膩度的64MB數據分區,對上層數據庫業務幾乎無感。

因此高斯Redis可以輕松支撐業務的大規模膨脹,並且真正做到計算/存儲分層的按需擴容和購買。

  • 低成本

高斯Redis相對於開源Redis,在存儲介質上使用了磁盤替代內存。一方面,由於采用存算分離架構,計算資源少了一半,即沒有從節點;另一方面,存儲資源按需購買,無任何浪費,並且采用了邏輯/物理壓縮。最終,每GB綜合成本不到開源Redis的十分之一。

  • 超可用

開源Redis或友商Redis不管單分片還是集群,其數據復制都采用主從架構,導致N個節點的集群,如果同時掛掉一對主從(即2個節點),整個集群就不可用。而高斯Redis采用存算分離之后,每個計算節點都可以看到並共享所有數據,因此N個節點,最多可以容忍掛掉N-1個節點,真正做到比高可用還高的可用性。

競爭力分析

場景推薦

高斯Redis不僅性能逼近緩存,而且其存儲能力(擴展性、高性能、易用性)超越數據庫。因此除了緩存場景可以選擇高斯Redis以外,上至PB級別大規模數據存儲都可以選擇高斯Redis。場景參考如下:

選擇建議

命令兼容

兼容5.0協議,包括string/hash/list/zset/set/stream/geo/ HyperLogLog/bitmap/pubsub等等,但出於性能和安全性考慮,禁用個別危險命令,

詳細參考:https://support.huaweicloud.com/usermanual-nosql/nosql_09_0076.html

容量參考

以往用戶選擇開源Redis的時候,需要購買內存,比如用戶數據是100G,由於開源Redis內存使用率減半,需要購買200G內存,並且為了高可用,還得購買200G的從節點,那么加起來就是400G的內存。但是購買高斯Redis時,用戶只需要根據真實存放的數據大小,按需選擇購買存儲空間即可,內存只是為了性能加速(內存/磁盤比越大,性能越好)。

附:資料參考

1.《華為雲GaussDB(for Redis)與自建開源Redis的成本對比》

https://www.modb.pro/db/42739

2. 《一場由fork引發的超時,讓我們重新探討了Redis的抖動問題》https://bbs.huaweicloud.com/blogs/227525

3. 《當Redis遇見計算存儲分離》

https://developer.huaweicloud.com/hero/forum/thread-83188-1-1.html

4. 《GaussDB(for Redis)與原生Redis的性能對比》

https://bbs.huaweicloud.com/blogs/236949

 

點擊關注,第一時間了解華為雲新鮮技術~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM