
数据缓存技术的背景及发展


数据缓存技术的背景及发展


数据缓存技术的背景及发展
为了实现数据缓存技术,出现了大量的数据缓存产品,主要分为:开源产品,国外商用软件产品,国内商用软件产品:

缓存产品市场现状分析
整体态势
国际上,数据缓存产品发展较早,形成了商用与开源共同发展的态势:国内缓存技术产品化较晚,2020年前后产品陆续推出,成熟度不高,多数基于开源改造或组合,自主研发率不高;Redis凭借其综合能力,及生态环境的成熟性,在全球市场上,成为缓存技术的主导产品,但在企业级应用中也存在开源天然的整端
发展分析
开源产品在企业级应用中,逐步凸显:管控能力不足,安全考虑不全等问题,重点行业、重点客户需要寻找更合适的替代方案,国产替代的大潮流,如:党政、金融、能源等诸多重点行业客户越来越重视国产化缓存技术的方向
产品总体介绍


产品核心架构及设计
产品核心架构及设计
产品技术架构特色1:多线程处理


产品核心架构及设计
产品技术架构特色2:多主架构
RDS在产品架构设计选型时,摒弃了Redis堪称经典的主从(Master-Salve)结构,选择了多主结构(Multi-Master),从根本上改变了缓存类数据库的数据处理逻辑

RDS数据存储节点多主架构:
客户端连接任何节点都可以读写,使得客户端进一步简化了使用方式
节点间数据相互复制(基于Hash算法加时钟算法),提升了数据节点并发服务的能力,性能提升
故障切换时,避免了Redis选举过程带来的服务响应中断的影响
没有主从切换,也避免了半数节点故障时引发选举机制失效,节点切换失败带来的服务灾难
产品核心架构及设计
产品技术架构特色3:高可用安全架构
RDS产品的安全设计理念:
(1)基于非可信网络的设计:充分考虑产品使用的网络环境存在不可信因素,包括传输和数据安全的充分考虑
(2)基于开源技术安全非可信的设计:假设开源技术都可能存在安全隐患,因此核心功能采用纯自研方式
(3)基于客户端不可信的设计:假设连接客户端可能存在非授权或恶意行为,因此采用集中化的管控机制
产品核心架构及设计
企业级集中化管控
RDS中心节点:提供集群各节点间的配置同步能力、License的授权和管控、节点状态收集
RDS管理控制台:监控每个节点的运行情况、客户端访问和服务请求等信息,提供可视化监控界面;提供所见即所得的RDS的部署、配置调整能力;提供所见即所得的可视化数据管理

产品核心架构及设计
企业级集中化管控

产品核心架构及设计
Redis全面兼容——部署策略兼容
RDS采用多主架构,部署策略上本身不需要支持各种复杂的部署,但考虑Redis应用的普遍性,产品仿真了如哨兵机制
RDS在部署策略上,全面兼容Redis部署模式,以便客户应用的最简化移植
产品核心架构及设计


产品核心架构及设计
Redis全面兼容——数据类型兼容
支持定制化的数据类型
兼容Redis各类数据类型同时,适应国内业务需求,支持Integer、Long、IP4、IP6、MAC等数据类型,提供更高效的处理能力、并有效节省内存

产品核心架构及设计
Redis全面兼容——非兼容能力分析
产品技术优势分析
多线程设计优势分析
基于多线程架构,通过RDS与Redis技术架构实现和实际测试对比,可以看出:
(1)如右图,在同样硬件环境下,配置线程数一致的情况下,RDS的性能提升空间更大
(2)RDS采用的架构,硬件资源的利用率更好,可以充分利用CPU资源提升性能
基于业务常识,Redis类的缓存产品性能远远高于实际业务需要,性能提升的必要性问题,而对此我方理解是:
(1)缓存应用还仅适合高频数据管理,而利用缓存数据的高效、高可用,扩展数据计算能力,在大数据实时计算和大数据边缘计算领域发挥作用,而计算能力依赖的就是CPU的运算处理能力,可充分利用CPU资源的产品,可以更好的平衡性能与计算能力的资源消耗
(2)RDS在多线程处理架构设计中,就考虑了对数据计算的扩展支持,RDS支持数据处理线程数控制,以便控制资源,支持计算能力,而在键值管控中,支持数据算法嵌入,而针对算法嵌入式开发提供完善的IDE环境支持,是RDS产品未来发展的重点版本规划之一


产品技术优势分析
技术特色总结:
考虑RDS对Redis的替代,需要满足兼容性和继承使用习惯,RDS完全兼容支持Redis的各种部署策略,及仿真选举、哨兵技术
客户使用RDS产品后,应用采用RDS提供的客户端,即可实现部署策略的极简化,以及管理和维护的低成本优势

产品技术优势分析
多主架构的应用优势分析
当业务拓展,系统需要支持更广地域、更多用户使用量时:原系统需要从单一中心扩展为多地多中心时,现有的开源Redis无法实现多中心多活的部署模式。RDS采用独创的多主技术,支持中心多活部署模式,在不中断业务的情况下,提供“热扩容”能力:
1、支持多个集群的多活部署模式,支持跨机房跨地域多活部署模式
2、RDS的高效安全的数据同步机制,可"容忍"一定的网络时延情况下,实现了多活节点间的数据最终一致性

产品技术优势分析
RDS支持数据类型定制
根据国内使用场景,RDS产品提供了如:Integer,Long等数据类型的支持,还可以支持定制数据类型的开发支持,可以确保客户特定业务场景下的特殊数据类型支持

企业级优势分析——实时容灾能力(同构容灾)
RDS具备的跨集群同步数据能力支持高可用同构灾备方案
由于Redis技术架构特点,不支持跨集群数据实时复制,采用Redis时,异地容灾方案,只能依赖实施厂商单独编码实现冷备方案,
系统切换依赖于运维人员手工干预来实现
RDS产品设计就支持容灾热备机制,RDS支持同构和异构两种灾备方案

企业级优势分析——实时容灾能力(异构容灾)
RDS支持配套Redis的异构数据实时同步方案
1、客户的主应用采用Redis,而Redis自身不能跨集群实时复制数据,可以利用RDS作为Redis集群的热备集群,通过RDS提供的Redis仿真机制,实现从Redis到RDS的跨集群数据实时同步问题,实现异构热备
2、通过RDS支持的异构数据实时同步方案,可以实现业务不间断状态下,Redis应用向RDS的迁移,实现无感迁移,灰度上线

企业级优势分析——安全及能力扩展优势
自主可控的分布式缓存技术发展之路
云化战略初步成果——RDS for Cloud(云原生)
云原生缓存整体架构设计上借鉴目前云计算中最为流行的微服务架构。整体上分为三大部分: 1被管理的RDS服务集群; 2中心服务; 3管理控制台

云化战略初步成果——RDS for Cloud(云原生)
RDS for Cloud是基于RDS产品核心能力,针对云原生环境设计开发的分布式数据缓存云化产品。采用多线程数据处理架构,全兼容Redis协议,支持丰富数据类型。 为客户提供稳定可靠、超高并发,且能够实时弹性扩容的核心数据缓存服务

数据算法管控战略——RDS的算法管控平台构想

