相比自建Redis資料庫、ApsaraDB for Redis以及其他記憶體資料庫,雲原生記憶體資料庫Tair在資料安全、營運、高可用、核心最佳化等方面都有一定的優勢。
Tair與自建Redis對比
對比項 | 雲原生記憶體資料庫Tair版 | 自建Redis |
安全防護 | 事前防護: 事中保護: 事後審計: | 事前防護:
事中保護:
事後審計:
|
備份恢複 | 記憶體型支援資料閃回功能,可以恢複指定時間點的資料。更多資訊請參見通過資料閃回按時間點恢複資料。 | 僅支援全量恢複。 |
營運管理 |
| |
部署和擴容 | 即時開通,彈性擴容。 | 需要自行完成採購、部署、維護硬體裝置等工作,周期較長,且需要自我維護節點關係。 |
高可用 |
|
|
核心最佳化 |
| |
記憶體 | 已購記憶體100%可用,容災、營運管理、擴容、執行個體持久化(Fork寫時複製)等佔用的記憶體開銷均由阿里雲承擔,不佔用執行個體記憶體容量。 例如:採購64 GB的ApsaraDB for Redis執行個體,使用者可用記憶體為64 GB。 | 需預留25% ~ 40%的記憶體資源用於容災、營運管理、擴容等用途。 例如:採購2台記憶體為64 GB的ECS搭建Redis主從執行個體,使用者可用記憶體通常低於45 GB。 |
雲原生記憶體資料庫Tair與社區版Redis完全相容,串連資料庫的方式也基本相同,您可以根據自身應用特點選用任何相容Redis協議的用戶端程式,詳情請參見Tair執行個體相容Redis哪個版本?、用戶端程式串連Tair。
Tair與ApsaraDB for Redis對比
相比較ApsaraDB for Redis,雲原生記憶體資料庫Tair從訪問延時、持久化需求、整體成本這三個核心維度考量,基於DRAM、NVM和ESSD雲端硬碟儲存介質,推出了多種系列,為您提供更強的效能、更多的資料結構和更靈活的儲存方式,滿足不同情境下的業務需求。
下述表格中,✔️表示支援該功能,❌表示不支援該功能。
關於產品選型的詳細介紹,請參見Tair選型指南。
類別 | 對比項 | Tair(Redis企業版) | ApsaraDB for Redis社區版 | |||||
磁碟型(ESSD) | 磁碟型(SSD) | 2.8、4.0及5.0版本 | 6.0、7.0版本 | 5.0、6.0版本經濟型 | ||||
基本效能 | 效能基準(以Redis社區版為基準) | 300% | 90% | 讀:40% | 讀:60% | 一致 | 120% | 120% |
寫:30% | 寫:40% | |||||||
單個資料節點的最大串連數 | 30,000 | 10,000 | 10,000 | 40,000 | 10,000 | 10,000 | 10,000 | |
單Key服務能力(QPS參考值)① | 450,000 | 130,000 | 30,000~60,000 | 50,000~60,000 | 140,000 | 160,000 | 160,000 | |
最大頻寬(MB/s) | 96~2,048 | 96~2,048 | 187.5~1,000 | 187.5~2,048 | 10~2048 | 48~2,048 | 96~2,048 | |
規格特性 | IO與Worker模型 | 多IO+單Worker(Real Multi-IO)③ | 單IO+單Worker | 多IO+多Worker(Real Multi-IO) | 多IO+多Worker(Real Multi-IO) | 單IO+單Worker | 多IO+單Worker | 多IO+單Worker |
單位成本(以Redis社區版為基準) | 117% | 70% | 15%~20% | 15% | 一致 | 一致 | 51~67% | |
資料結構 | 基礎資料結構及命令支援 | 不同形態支援的命令有所不同,詳情請參見Tair命令限制。 | 部分命令不支援,詳情請參見Redis社區版命令支援。 | |||||
✔️ | ✔️️️(部分) | ❌ | ❌ | ❌ | ❌ | ❌ | ||
落盤模式 | 主從複製一致性 | 最終一致 | 最終一致 | 最終一致 | 最終一致 | 最終一致 | 最終一致 | 最終一致 |
落盤一致性 ④ | Write Back | Write Through | Write Through | Write Through | Write Back | Write Back | Write Back | |
持久化層級 | 秒級 | 命令級 | 命令級 | 命令級 | 秒級 | 秒級 | 秒級 | |
安全性 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | |
✔️ | ✔️ | ❌ | ❌ | ✔️ | ✔️ | ✔️ | ||
✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ||
✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ||
效能分析 | ✔️ | ✔️ | ❌ | ❌ | ✔️ | ✔️ | ✔️ | |
✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ||
✔️ | ✔️ | ❌ | ❌ | ✔️ | ✔️ | ✔️ | ||
進階功能 | ✔️ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | |
✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ||
✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ||
✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ||
✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ | ❌ |
表格中數字標記的解釋如下:
①:該QPS(每秒訪問次數)參考值以時間複雜度為O(1)的命令衡量,時間複雜度越高,QPS參考值會相應降低。
②:該效能與資料訪問的冷熱分布相關,命中記憶體的比例越高效能越接近社區版基準效能。
③:區別於Redis社區版6.0的IO多線程,記憶體型的Real Multi-IO能夠將IO加速地更徹底,具備更高的抗串連衝擊性,且可以線性地提升吞吐能力。
④:資料落盤方式主要有下述兩種:
Write Through:資料寫入成功,資料同步落盤後返回。
Write Back:資料寫入成功即返回成功,資料非同步刷盤。