阿里云的内存数据库Tair经过多年演进,已经完整兼容了Memcache&Redis,还有一部分是我们的图引擎,兼容了开源的 Gremlin和Neo4j的 Cypher。我们还有一个支持标准 SQL 的引擎,这个我们用来作为高性能的实时数据处理。所以,我们今天 Tair 内存数据库的定义是一个缓存,加上高性能数据库及数据实时处理的定义。
Tair产品的架构形态,与我们今天在阿里云上售卖的 Redis 其实是一样的,分为标准的主从版、双副本主从版,也有一个集群版。所以最大可以从1个 G 扩展到数个 T ,那么它跟社区托管的 Redis 不一样的是什么呢?我们基于持久内存,基于云盘,推出了持久内存型和容量存储型,这两个其实能够满足客户对访问量与容量不同要求的情况与场景。性能增强型,它的整体性能比开源 Redis 会高两倍及以上,包括我们在里面做了非常多企业级的功能,来面向客户的关键业务场景。
我们今天主推的是两种形态,一种是Tair 性能增强,这个相当于在客户业务的核心关键场景,我们建议客户去选。相比开源 Redis,首先是它的性能更强,能够支持因运营活动或业务变化所带来的流量突高,访问连接数也会更多。开源的Redis其实支持活跃的上万连接数比较困难,而Tair性能增强其实是可以支持数万的。
例如我们其实看到有很多客户用社区版Redis,它就是用了读写分离一主五从。这个架构可以看到整个可扩展性非常低,它从从节点上读,其实读到的一致性也会比较弱。所以我们给客户推荐Tair的集群版,最终价格比社区版贵了 1.2 倍,但是总体容量是社区版的 4 倍,包括总吞吐它也是 4 倍。所以Tair的性能增强版比开源版在很多场景下对客户的整个 TCO 来说相对更有优势一些。
2018年之后我们花了非常多的经历在是持久内存形态上,有两个核心目标,第一是提供一个比社区 Redis成本更低的系统,性能和Redis差不多。吞吐大概是社区版redis的90%+,成本大概是社区版的70%。它比社区版好的是每一个操作都能够做到持久化,落到持久内存上。
下面这一页是我们的持久内存性能对比。左边是 Redis 6.0,然后右边是 Tair 持久内存版。我们可以看到写跟读的性能总吞吐大概都是 90% +。右边这张图,客户端延迟 P95(us),我们把Redis 里面的 AOF 重写机制给去掉了,所以这个毛刺抖动是更低的,读的话确实比全内存版本慢一点,因为本身持久内存的访问延迟会高一点。
转载请注明:IT运维空间 » 运维技术 » 云原生内存数据库Tair产品形态
发表评论