开发者学习笔记【阿里云云数据库助理工程师(ACA)认证:云原生数据库Tair(一)】
课程地址:https://edu.aliyun.com/course/3112080/lesson/19083
云原生数据库Tair(一)
课程目标
学习完本课程后,你将能够.
1.了解阿里云云原生内存数据库Tair及其产品体系
2.掌握 Tair 产品功能特性和核心能力
3.了解 Tair 适用的应用场景
内容介绍
1.阿里云云原生内存数据库Tair简介
1.1、Tair 简介
1.2、Tair 产品体系
2.Tair 产品功能特性与核心能力详解
2.1、Tair 产品功能特性
2.2、Tair 产品核心能力
3.Tair 产品应用场景剖析
3.1、在线电商
3.2、游戏娱乐
3.3、生活服务
一、 阿里云云原生内存数据库Tair简介
1.1、Tair 简介
阿里云 Tair 云原生内存数据库:让数据实时在线
首先让我们进入第一部分, Tair是阿里云云原生内存数据库,它的产品目标是让数据实时在线。
在整个行业应用中,它涉及电商、社交、游戏,甚至到政务等行业。在数据互通上,它可以做到与我们传统关系数据库、 hadoop 、Spark、flink 等相关大数据计算和存储组件进行数据互通,并且在实时在线上,它和Redis全面兼容,还提供了高性能、低于成本的持久存储解决方案。
另外还有相关的企业级功能,比如全球多活、数据闪回,它本质上又能提供在线实时数据,是整个应用系统加速提供低延迟、高吞吐的处理能力。
在外围产品的合作上,和阿里云DMS数据管理、DTS数据传输、SLS日志审计等相关外围横向产品进行互联互通。
阿里云Tair 产品发展历史:
下面我们看一下 Tair 产品的发展历史。在2009年4月, Tair 正式在淘宝核心系统诞生。到了2015年3月份, Tair 正式上云,推出阿里云云数据库Redis产品。在2017年 Tair的一个核心技术热点散列,经过了双十一的考验,成功解决了业内缓存热点的问题。在2018年的11月, Tair 和英特尔傲腾持久内存在双十一中进行应用,这是中国首家部署 Tair 持久内存的产品。到了2019年4月,在Redis开源社区中, Tair 整个团队的贡献排名全球第三。在最新的2020年9月份,Tair对外发布了持久存储器的形态,正式进入了端存储引擎的时代。
1.2、阿里云Tair 产品体系
阿里云Tair 产品体系总览
在产品架构形态上, Tair 支持标准版的双副本主从架构,也支持标准版的双副本读写分离架构。
这些架构容量从 1G 到 1T 不等,最高可达数十万QPS.,还提供了集群版双副本架构,在集群版上容量从2G到数T的容量,最高QPS可以达到千万级。在产品系列中,我们推出了三种产品,以适应用户不同的数据温度,可以从上到下看一下产品的分布。
在最上面,用户如果对读写非常频繁,要求低延迟并且大规模的连接数目,那么我们会针对这样的客户提供基于内存使Tair性能增强型的产品,相对来说客户对成本不敏感,以满足业务需求为主。
再往下是数据没有那么热的时候,可能是温热的数据,吞吐和延迟都有接近内存的需求,并且要求数据有持久化的能力,数据规模会比较大,成本控制变成了另外一个决策的因素,因此推出了Tair持久内存型。
当数据整体容量要求更高,但是访问的延迟又相对不是很高的时候,成本的考量会变成整个采用云数据库的一个重要的考量标准,在这种场景下,我们推出了Tair容量存储型。所以说Tair对数据量和性能需求是全场景的覆盖。
阿里云Tair 产品系列之性能增强型:
Tair产品系列的性能增强型是基于内存,它可以提供两倍于开源自建数据库Redis的吞吐,并且有对热点访问和连接处的优化。相对于开源自建Redis的单节点的能力的天花板——慢查询和连接数多导致的性能衰减都有相应的优化。
另外我们针对社区版Redis的一些形态,在使用Tair同容量的情况下,可以达到读写一致性的提升、可扩展性,并且价格只高了一点点,容量*4,吞吐*4,性价比和稳定性都能得到提升。
阿里云 Tair 产品系列之持久内存型:
下面我们介绍 Tair 的第二种产品系列叫持久内存型。这是全球首家公共云提供持久内存数据库的服务,相对于开源自建 Redis ,受到内存的容量限制,并且价格也很昂贵,另外还需要Cache 和 DB 的两重系统。
如果使用 Tair 持久内存型,在这个产品系列中,我们提供了基于英特尔AEP的持久化引擎,还提供了主从和集群架构,我们可以达到近似内存性能90%,成本相对内存降低了30%,并且每个操作都是持久化的。在开源 Redis 中,常见的持久化的策略都是通过开启AOF和every second进行每秒钟的循环。
在 Tair 持久内存中,每个操作写完返回 ok 即已经持久化,不用等到1秒。另外我们还支持大容量高规格,在整个的产品发展中,这个产品已经经过了两年的实践。
从集团到了云上,由于它的持久化的能力,传统应用加 Cache ,再加关系型数据库的这个架构就可以化简成两层的架构,就是应用和 Tire的持久内存型的集群。这样看来,架构整体进行了简化升级,综合成本就会更低。
阿里云 Tair 产品系列之容量存储型:
第三种产品系列叫容量存储型,是相对于开源自建、数据量持续增长大容量的 Redis ,同时访问热度又比较低的情况下,我们推出的一个产品系列。
这种系列的一个特点就是它采用了混和存储引擎、冷热数据分离,对于开源社区的 Redis ,还有著名的开源产品 Pika 也进行了相关的兼容。另外在行业场景上有所优化,可靠性和数据返回能力也都具备。它可以提供基于 ESSD 云盘的数据可靠性,并且它可以提供数百T的存储能力,成本降到了内存版15%,性能相对有所下降,但是也能满足这样场景的用户。
我们可以拿它和开源产品 Pika 做一个简单的对比,在部署上 Tair 持久存储型产品可以兼容大部分原生的 Redis 命令。而 Pika 对这些命令的一些语义都进行了一些修改。在兼容性上,它可以兼容 Redis Cluster ,但是 Pika 是不兼容 Redis Cluster 的。
另外在成本上, Tair 可以降到 Redis 内存版15%,而 Pika 会降到内存版12%,但是同时它带来了很多后续的运维成本,这个是不可预估的。在性能上,我们的综合性能为原生内存 redis 的65%,而 Pika 是原生内存 redis 的55%。
同时我们的集合类数据结构,比如 list、 set 、哈希等在性能上也较 Pika 再高10%。在可扩展性上,我们是云原生的数据库,可以支持云盘的快速扩缩容,但是在 Pika 上它是需要你自己去进行相关的各种操作,非常的繁杂。