2020年 Redis 这五大新功能你最期待哪一个?

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: Redis 是世界上最流行的 KV 缓存数据库,2009年诞生至今,已发展超过十个年头,2020年,Redis可以为我们带来什么惊喜呢?
3月11日,Redis企业版(Tair)& 专属主机组将召开重磅新品发布会!

发布会新版海报.jpg

性能提升高达3倍,TCO最高降低90%!十年磨一剑,打造旗舰级缓存服务,邀您一同见证商业和技术的创新!


本文作者皓楠,阿里云数据库产品专家

Redis 是世界上最流行的 KV 缓存数据库,2009年诞生至今,已发展超过十个年头,伴随着互联网行业的发展,Redis 在过去十年取得了辉煌的成绩。

Redis 服务在中国有着非常庞大的用户群体和商业市场,根据 similarweb 的统计,redis.io 的流量访问中,超过 50% 来自于中国大陆,中国开发者对 Redis 的喜爱程度可见一斑。

2019年 阿里云 Redis 缓存服务取得了不小的成就,上线 5.0 版本,行业率先提供模块服务,按时间点恢复能力等。在致力于提供业内最优秀的缓存服务上,我们一直不遗余力。

回顾2019

1.1上线 Redis 5.0

2019年4月,阿里云全地域上线了最新稳定版 Redis 5.0,提供 Stream 数据类型,ZPOPMIN/MAX,增强 HyperLogLog 等最新功能。

其中 Stream 是继 Redis 3.2 版本 GEO 功能以来时隔两年多全新的数据结构。Stream 类似于日志的数据结构,允许在单一 Key 上基于自动的有序时间序列存储多个字段,在消息队列,事件通知,统一日志架构等业务场景中有非常大的发挥空间。

阿里云 Redis 目前支持 2.8,4.0,5.0 三个大版本,版本丰富度国内领先。全系列支持主从双副本,分片集群,自动读写分离架构,满足客户多样的业务需求。

1.2提供全新数据库自治服务(DAS)

性能诊断和性能调优是数据库使用中最棘手的问题。为了更好的帮助用户找出数据库性能隐患点、提升问题排查的效率。阿里云 Redis 缓存上线了全新自治服务工具 DAS 服务,支持 Redis 慢请求分析、实时性能查看、缓存分析、会话管理:

Redis 慢请求分析,慢请求一目了然
-1.png

实时性能

实时性能以5秒的采集粒度,实时的采集、分析和展示核心性能指标的趋势,帮助用户在大促、应用发布等场景下一眼确认数据库性能。
-2.png

缓存分析

缓存健康情况对于Redis的性能是至关重要的,通过 DAS 的缓存分析功能,您可以直接确认确认Key分布情况,减少因为Key倾斜引发的内存不足、性能下降等问题。
-3.png

会话管理

如果Redis的异常正在发生,我们第一时间需要确认正在执行的请求或者操作,该功能直接将正在执行的请求通过白屏化的方式直观的展示给客户,并且支持各个维度的统计和排序,同时也支持终止异常会话.
-4.png
-5.png

多个Redis实例批量管理的功能,是很多企业级客户需要的,除了上述功能外,我们也新增了自定义监控大盘的功能,支持企业级用户在管理多个实例的场景下,自定义跨实例的监控大盘,满足日常运维中多实例、多指标的关联、对比、查看需求。

1.3审计日志系统全面升级

Redis 社区版最被客户诟病的一点就是不支持审计,客户无法实现快速定位历史操作信息。发生性能问题,误操作时,没有排查依据。阿里云 Redis 服务,通过内核改造提供全操作日志(modify)及高危命令的审计功能,性能开销通常低于 5%,为客户提供 7x24 基本无业务无损的审计服务,近日又对审计功能进行了全面升级,提供关键字模糊查询,代理及数据节点审计,账号,DB,客户端 IP 多条件过滤等能力,方便客户在众多审计日志中快速定位。同时提供访问用户数,客户端数,审计日志书,平均 RT,平均 QPS 的聚合展示,以及 Top 用户,客户端及命令的聚合展示,系统运行状态一目了然。
-6.png

审计日志提供,账号,客户端IP,DB,执行命令等信息展示,并支持控制台直接导出。
-8.png

同时我们还支持定期推送审计日报,基于审计信息的邮件告警等功能,审计日志功能全面升级。
-88.png

展望2020

“今天的最好表现, 是明天的最低要求”, 疫情阻止不了阿里云 Redis 前进的脚步, 2020 还有哪些值得期待的功能?

1. 推出 Redis 企业版(Tair)品牌系列

Tair 是阿里云自研分布式键值存储(KVS)系统,几乎涵盖了淘宝、天猫、阿里妈妈、菜鸟、钉钉、优酷、高德等阿里巴巴所有核心业务。2019年底阿里云 Redis 企业版(Tair)系列全站发布。

这里要先聊一聊社区版 Redis 的一些核心问题:
单线程 C10K 问题,即在大链接状态下抗冲击能力很差。大型和超大型应用动辄就有一万或者几万进程连接Redis,一个冲击响应或者一个慢查询就可能导致连接数雪崩。

单分片处理能力有限。Redis单进程对于 O(1) 的操作大致有10~13w OPS的服务能力,虽然对比其他数据库,性能已经非常优秀,但是在互联网极端和突发场景下处理能力依然不足。

数据结构模块(Module)。Redis提供的基础的Hash、List、Set等是通用的是对通用互联网环境的总结,而在互联网大型企业有着更多的模块需求。

跨地域分布式缓存需求。随着互联网全球化进程的发展,实例多活成为了愈来越多客户的刚需。多活不但能够实现高性能的“就近访问”,还能作为跨地域复制(Geo Replica)的一个重要容灾手段,可以极大的提升客户的业务稳定性和架构灵活度。

低成本缓存。针对大容量低访问但对RT(latency)不敏感的应用,纯内存显然代价过高。

针对上面的通点问题,阿里云 Redis 企业版(Tair)推出了两个系列,性能增强系列和混合存储系列。

性能增强系列,业内最快的缓存系统

多 IO 线程改造,引入更多计算资源,减少 IO 事件等待提升处理能力。单节点 30-40w OPS 是社区版处理能力 3 倍以上,30-50k 链接下稳定运行,轻松应对高并发,突发流量等业务场景。同时性能增强系列还提供了多达 5 种自研 module,进一步拓展 Redis 缓存的应用场景。

-9.png

混合存储系列,低成本超大规模持久化KV存储解决方案
引入 SSD 磁盘作为缓存介质,提升缓存容量的同时大大降低了缓存成本,单分片最高支持 1T 存储,集群版最高可扩展至 9TB,同时整体成本下降 70%-90%。为客户带来真正的实惠。混合存储系列所有操作都在内存中完成,完全兼容 Redis 协议,对于客户来说可以 0 成本启动。目前支持 DTS 和 redis-shake直接导入数据。

-10.png

2. Redis 专享主机形态,云上最灵活的大规模集群解决方案

随着云业务的发展,云服务被越来越多的企业所接受,但是云发展的过程中,如何解决规模化集群管理,客户级别资源隔离,定制化管控需求是当下云 PaaS 服务面临的一大挑战。阿里云 Redis 服务推出专享主机形态是商业上的一次创新和技术上的一次突破。这里有三个主要概念:

主机组:逻辑主机群的概念,主机组间资源互相不可访问,可以按需申请多个。我们建议按照业务垂直拆分主机组,提供业务间资源隔离。

主机:服务器主机,一台主机可以开通多个实例,我们支持灵活地添加,删除主机,也支持针对主机的管理,比如替换主机,重启主机,清空主机实例,迁移主机实例等,方便客户进行资源调配管理。

缓存实例:一台主机上面可以开通多个 Redis 缓存实例,这个实例概念等同于 PaaS 服务的 Redis 实例。我们提供云上 Redis 缓存的全部能力,包括监控告警,日志管理,备份恢复,账号管理等基础能力。

-11.png
-12.png

专享主机形态,相当于将客户的 IDC 无缝搬迁到云上,提供大规模主机管理,调配能力,主机对用户更透明。同时开放主机管理能力,支持用户登陆采集信息,同时支持自定义脚本,代理安装,方便大客户定制管控开发。
主机提供超卖比设置,可以将不同资源类型,业务高峰的业务错峰部署,提升资源利用率,实现超高性价比。同时 Redis 缓存实例无缝对接阿里云管控平台,可以轻松开通,删除实例并展开实例变配,监控告警,日志管理等基本运维管理工作,让客户享受云平台技术红利,降低运维成本,提高人效,让客户专注于核心业务。

3. 业内首先支持多种 module,使用更灵活,功能更强大

TairString

Redis String性能增强命令包含CAS和CAD,可以实现简洁高效的Redis分布式锁。使用说明及示例请参见CAS/CAD命令。

TairString数据结构及相关命令TairString是一种带版本号的string类型数据结构。原有的Redis String由key和value组成,而TairString不仅包含key和value,还携带了版本(version),可用于乐观锁等场景。除此之外,TairString在Redis String加减功能的基础上支持了边界设置,可以将INCRBY、INCRBYFLOAT的结果限制在一定的范围内,超出范围则提示错误,适用于限流器等场景。

TairHash

TairHash是一种hash类型的数据,不但和原有的Redis Hash一样支持丰富的数据接口和高处理性能,还突破了Redis Hash只能为key设置过期时间的限制,支持为field设置过期时间和版本,极大地提高了hash数据结构的灵活性,简化了很多场景下的业务开发工作。TairHash使用高效的Active Expire算法,可以在不对响应时间造成明显影响的前提下,更高效的完成对field的超时判断和删除。

TairBloom

TairBloom是一种可动态扩容的布隆过滤器,完全兼容RedisBloom模块的命令。TairBloom首先是一种概率性数据结构(space-efficient probabilistic data structure),主要使用较低的内存消耗来判断一个元素是否存在;其次,TairBloom具有动态扩容的能力,可在扩容的同时维持证误判率的稳定。

TairDoc

TairDoc是一种文档类型的数据结构,支持JSON标准,完全兼容ReJSON模块的命令。TairDoc数据以二进制树的方式存储,支持对JSON中子元素的快速访问。

TairGIS

TairGis是一种使用R-Tree做索引,支持地理信息系统GIS(Geographic Information System)相关接口的数据结构。Redis的原生GEO命令是使用GeoHash和Redis Sorted Set结构完成的,使用1D索引,主要用于点的查询,TairGIS使用2D索引,除了对点的查询,还支持线、面的查询,尤其适合用于判断相交或包含关系,功能更加强大。

4,支持按时间点恢复

社区版 Redis 提供 RDB 和 AOF 两种持久化方式,但是缺少类似于 Binlog 的日志形式,AOF 没有记录时间和位点信息,导致无法按照时间点恢复数据。虽然 Redis 纯缓存的场景下,这种恢复模式可以满足大多数业务场景需求,但是在游戏等行业下,如果支持按照时间点恢复数据可以实现快速回档,极大提减少停机维护时间。
阿里云 Redis 缓存服务,通过在 AOF 追加时间戳信息,可以实现按照时间点恢复数据,实现了从缓存到数据库的飞跃。这种日志改造在主从复制,跨地域备份等场景下也有非常好的应用,可以实现断点续传等能力。
-13.png

5.全球分布式缓存服务助理企业级客户全球化业务布局

随着企业级客户全球化业务的发展,全球分布式缓存服务的需求应运而出,跨地域数据双向,多向同步,全局就近访问,成熟的链路监控体系是这一类服务的标签,2020 年阿里云 Redis 服务将在企业版基础上推出全球分布式缓存服务形态,满足企业级客户业务出海,全球业务的诉求,方便客户跨地域业务的展开。

结语

从 2009 年 Redis 服务面世以来,Redis 缓存已经经历了 10多个年头,缓存行业也经历了翻天覆地的变化。

2019年底,Redis 6.0 RC 版面世,预计稳定版也会很快面向用户正式开放。用作者的话说,这个版本是迄今为止最大的更新,从 RC 版 Release Note 来看,最新版 Redis 在客户端缓存,多 IO 线程,集群代理,SSL 加密,模块 API 优化都有提及,可谓是赚足了眼球。

不过回头看看阿里云 Redis 服务的发展历史,我们早在几年前就布局了 SSL 加密,多 IO 线程改造,集群代理,混合存储,模块等方方面面,某种意义上来说,阿里云 Redis 服务是走在了缓存时代的最前沿。我们在为用户提供最优秀,好用的缓存服务上一直不断努力前行。

在可以预见的未来,缓存依然会是数据库产品阵营中的主流,且不可替代,这里我们也做个趋势预测
缓存需要更贴近客户业务,缩短 RT,多级缓存或成为标准。

产品架构会对客户更加透明,对客户无感,主从版与集群版的使用差异会越来越小,客户无需感知后端产品架构。

弹性热伸缩或成为刚需,满足互联网场景下突发流量,瞬间峰值等极端业务场景。

全球分布式缓存或成为大型国际化互联网行业的标准诉求,双向甚至多向复制成为行业基准能力。

面向 IOT & 5G 的爆发,缓存更轻量化,解决边缘计算场景下的缓存需求。

最后打一个小广告,阿里云 Redis 企业版(Tair)产品限时折扣中,1年7折,2年6折,欢迎采购。

👇
Redis企业版(Tair)& 专属主机组

3月11日 15:00-16:30
邀您一同见证商业和技术的创新!

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
缓存 NoSQL Java
吹爆!阿里最新开源的这份Redis全栈小册,涵盖了Redis的所有操作
前言 Redis这玩意不用多说,Java后端打工人就没有没接触过的,现在出去面试基本上是必问项;而且在工作中在项目中还能起很大的作用。它不仅能减少数据库的操作、并且你还可以利用redis的一些数据结构如set sorted set 解决一些特定的问题、利用单线程实现分布式锁、一些简单的订阅发布等等。 当然,这些你都会的话,那说明你只是停留在会用的阶段。如果你想要精通redis,并想在面试的中凭借Redis俘获面试官的芳心的话。除了会用以外,还要去掌握redis一些基本的原理如压缩表、跳跃表、哨兵模式、集群、高可用,这样可以让你更好的使用redis,保证缓存利用最大化、资源最优化。掌握这些你在
158 0
|
7月前
|
存储 Dragonfly NoSQL
Tair 对 Redis 引擎架构之争的看法
本文详细讲解了阿里云自研数据库Tair的发展以及介绍。
73645 1
|
7月前
|
存储 缓存 Dragonfly
微软开抢年收入上亿美元的 Redis 饭碗?开源性能遥遥领先的 Garnet:无需修改,Redis 客户端可直接接入
微软开源了高性能缓存系统Garnet,旨在挑战 Redis 和 Dragonfly。Garnet 基于 .NET8,提供高吞吐量、低延迟和跨平台支持。它支持 RESP 协议,允许大部分 Redis 客户端无缝迁移。Garnet 的特性包括多连接批量处理以提升扩展性和吞吐量,以及更好的延迟稳定性。适合于需要高性能缓存层来降低成本和提高应用性能的场景。Garnet 的集群模式允许动态键迁移和分片管理,且支持 TLS 和自定义扩展。其网络层设计减少了线程切换开销,存储层则具备丰富的 API 和事务支持。在基准测试中,Garnet 在吞吐量和延迟上优于 Redis 和 KeyDB,展现出优秀的扩展性。
493 0
微软开抢年收入上亿美元的 Redis 饭碗?开源性能遥遥领先的 Garnet:无需修改,Redis 客户端可直接接入
|
设计模式 缓存 NoSQL
腾讯架构师是如何解释:Redis高性能通信的原理(精华版)
我们一直说Redis的性能很快,那为什么快?Redis为了达到性能最大化,做了哪些方面的优化呢? 在深度解析Redis的数据结构 这篇文章中,其实从数据结构上分析了Redis性能高的一方面原因。
|
存储 缓存 NoSQL
【Redis技术干货】推荐给大家的实战技术开发指南(提炼优化)
【Redis技术干货】推荐给大家的实战技术开发指南(提炼优化)
141 0
【Redis技术干货】推荐给大家的实战技术开发指南(提炼优化)
|
存储 缓存 NoSQL
万字解析Redis的三大主流问题及解决方案(二)
万字解析Redis的三大主流问题及解决方案
万字解析Redis的三大主流问题及解决方案(二)
|
存储 缓存 NoSQL
万字解析Redis的三大主流问题及解决方案(一)
万字解析Redis的三大主流问题及解决方案
万字解析Redis的三大主流问题及解决方案(一)
|
NoSQL Redis 开发者
《国内开发者与Redis开源社区的发展》电子版地址
在Redis 6.0~7.0的版本迭代过程中,国内开发者在Redis开源社区的参与度持续加深、影响力不断提高。在Redis 6.0的规划中Redis社区成立了core team,阿里云有幸在core team的五个席位中占有一席,本次分享我们将介绍Redis开源社区的发展与国内开发者的关系。
311 0
《国内开发者与Redis开源社区的发展》电子版地址
|
消息中间件 缓存 NoSQL
Redis 社区的发展与国内开发者的贡献
阿里云从 Redis 4.0 开始深度参与到社区的开发中,也向社区贡献了大量代码,比如 PSYNC2、pipeline 的优化、数据一致性的增强以及其他实用功能,比如基于 LFU 的热点 KEY 查询功能等。
1329 0
Redis 社区的发展与国内开发者的贡献
|
存储 缓存 NoSQL
Redis 帝国的神秘使者竟然想改造 C 语言
Redis 帝国的神秘使者竟然想改造 C 语言
123 0
Redis 帝国的神秘使者竟然想改造 C 语言

相关产品

  • 云数据库 Tair(兼容 Redis)