阿里云数据库Redis企业版(又称阿里云Tair),是基于阿里集团内部使用的Tair产品研发的云上托管键值对缓存服务,从2009年开始正式承载集团缓存业务,历经天猫双十一、优酷春晚、菜鸟、高德等业务场景的磨练,是一款真正的企业级缓存服务产品。
Tair的诞生
2004年,淘宝开始应用缓存技术。最先投入应用的是基于前端页面的缓存技术,采用ESI来标识可以加速和不能加速的网页内容片段,有效减少了从服务端抓取整个页面的次数。
随着淘宝网的流量快速增长,数据库的压力与日俱增,基于后端系统的缓存技术应运而生。从服务淘宝详情和验证码等业务的持久化系统TBStore,到初始服务于淘宝用户中心的TDBM等等,后端系统缓存技术经历了多个系统和阶段的演变与积累,到2009年,这些系统、技术经验经过进一步的研发,融合成了阿里巴巴大规模高速存储系统Tair。
如今,基于Tair演进的Redis企业版已经是阿里巴巴集团调用量最大的系统之一,在多年的阿里巴巴双十一全球狂欢节上提供了核心的在线访问加速能力,承受住了每秒数亿次的调用。
阿里云Redis企业版各形态产品与Redis社区版产品的相关特性对比,为您的产品选型提供相关参考。
选型参考
类别 | Redis企业版 | Redis社区版 | |||
---|---|---|---|---|---|
性能增强型 | 持久内存型 | 容量存储型 | 混合存储型 | ||
特点 | 极高的性能、更多的数据结构,可简化开发,提高数据存储和处理性能。 | 高数据可靠和性能并存。 | 高数据可靠,成本低廉。 | 在保证常用数据访问性能不下降的基础上降低成本。 | 兼容开源Redis,高性能。 |
适用场景 | 以性能为中心,且对成本不敏感的缓存场景。 | 需要高性能且高数据持久化要求,且成本作为次要考虑因素的数据缓存与存储场景。 | 大存储、低访问密度、低访问延迟要求,且成本作为首要考虑因素的数据存储场景。 | 适用于业务冷热数据区分明显,且对成本敏感的场景。 | 适合中小型或验证型应用,适用于标准化Redis使用和迁移场景。 |
特性对比
下述表格中,✔️表示支持该功能,❌表示不支持该功能。
类别 | 对比项 | Redis企业版 | Redis社区版 | ||||
---|---|---|---|---|---|---|---|
性能增强型 | 持久内存型 | 容量存储型 | 混合存储型 | 2.8、4.0及5.0版本 | 6.0版本 | ||
基本性能 | 性能基准(以Redis社区版为基准) | 300% | 90% | 读:50% | 90%~40% ① | 一致 | 120% |
写:30% | |||||||
单个数据节点的最大连接数 | 30,000 | 10,000 | 10,000 | 10,000 | 10,000 | 10,000 | |
单Key服务能力(QPS) ,以时间复杂度为O(1)的命令衡量。 | 450,000 | 130,000 | 30,000~60,000 ① | 120,000~60,000 ① | 140,000 | 160,000 | |
规格特性 | 磁盘类型 | 本地盘 | Intel傲腾™持久化内存 | ESSD云盘(PL1) | 本地盘 | 本地盘 | ESSD云盘(PL1) |
ESSD云盘(PL1) | |||||||
线程模型 | 多IO+单Worker(Real Multi-IO) ③ | 单IO+单Worker | 多IO+多Worker(Real Multi-IO) ③ | 单IO+多Worker | 单IO+单Worker | 多IO+单Worker | |
单位成本(以Redis社区版为基准) | 200% | 70% | 15%~20% | 30% | 一致 | 一致 | |
数据结构 | 基础数据结构及命令支持 | 不同形态支持的命令有所不同,详情请参见Redis企业版命令限制。 | 部分命令不支持,详情请参见Redis社区版命令支持。 | ||||
扩展模块 ② | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | |
落盘模式 | 主从复制一致性 | 最终一致 | 最终一致 | 最终一致 | 最终一致 | 最终一致 | 最终一致 |
落盘一致性 ③ | Write Back | Write Through | Write Through | Write Back | Write Back | Write Back | |
持久化级别 | 秒级 | 命令级 | 命令级 | 秒级 | 秒级 | 秒级 | |
安全性 | 数据库审计 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️(2.8版本不支持) | ✔️ |
SSL加密 | ✔️ | ❌ | ❌ | ✔️ | ✔️ | ❌ | |
IP白名单 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | |
高级功能 | 数据闪回 | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ |
全球分布式缓存 | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | |
DTS单向同步 | ✔️ | ❌ | ❌ | ✔️ | ✔️ | ✔️ | |
DTS双向同步 | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ |
表格中数字标记的解释如下:
- ①:性能基准和数据访问的冷热分布相关,命中内存的比例越高性能越接近社区版基准性能。
- ②:数据落盘方式主要有下述两种:
- Write Through:数据写入成功,数据同步落盘后返回。
- Write Back:数据写入成功即返回成功,数据异步刷盘。
- ③:区别于Redis社区版6.0的多线程,性能增强型的Real Multi-IO能够将IO加速地更彻底,具备更高的抗连接冲击性,且可以线性地提升吞吐能力。