点击蓝字 关注我们
达梦数据技术(江苏)有限公司申报的“达梦新云数据库软件(For Redis)”产品于5月17日江苏省工信厅主办的2022第二月度“星光江苏”数字经济新品发布会上荣获“数字经济创新产品”优胜奖。
达梦数据技术(江苏)有限公司

产品介绍
1.1
产品研发背景
随着互联网的迅猛发展,对海量数据处理访问的需求也日益增加,Key-Value数据库为处理访问海量数据提供了解决方案。Redis数据库在国内外市场,都是Key-Value数据库中的佼佼者。其优越的读写性能,丰富的数据类型使得它在处理海量数据,以及应对不同业务场景时,都有优异表现。然而Redis不具备自动容错和恢复功能,无论是主机还是从机宕机,都会导致前端部分读写请求丢失,数据一致性得不到保证。若将Redis作为存储数据库将面临着成本高、可靠性低、扩展性差、技术发展不可控等缺点。
为了解决Redis作为存储数据库的痛点,且延续其读写性能优异、数据类型丰富的优点,并拥有完全自主可控的Key-Value型数据库。达梦数据技术(江苏)有限公司研发了兼容Redis协议的Key-Value数据库——新云数据库(For Redis)。新云数据库(For Redis)由达梦数据技术(江苏)有限公司独立研发,具备完全自主知识产权。
1.2
产品功能
新云数据库(For Redis)不仅延续了Redis读写性能优异、数据类型丰富的优点,并且能在用户无感知情况下进行数据落盘,并且支持分布式部署,采用Raft协议保证数据强一致性;支持Redis协议,兼容Redis的五种主要的数据结构:字符串、哈希、链表、集合、有序集合。在新云数据库(For Redis)单机版本中,单线程性能可高达10万+ QPS;新云数据库(For Redis)集群版支持千万级QPS,超高的性能可以满足用户大部分场景需求。
新云数据库(For Redis)功能特性如下:
(1)支持数据持久化提供持久化版本,数据可持久化到本地,且落地过程不影响数据库对外提供服务;
(2)支持数据备份还原支持主备功能确保线上数据安全,同时可通过备份机制在发生数据库灾难时进行数据恢复。支持双机热备架构,主机故障后,访问秒级切换到备机,整个过程用户无需做任何处理;
(3)支持分布式部署,支持分布式集群,基于RAFT协议来保证数据强一致性,可以让系统在部分节点出现故障情况下仍然能够正常对外提供服务,以保证整个集群的高可用性;
(4)支持在嵌入式环境以单独进程或者嵌入用户程序内的方式运行;
(5)兼容Redis协议,可与用redis的应用无缝衔接。支持Redis5.0五种主要数据结构以及主要管理命令。
1.3
产品优势
新云数据库(For Redis)具有高性能、高可靠性、数据日志一体、绿色节能、数据安全、跨平台和自主原创的特性。
(1)高性能
新云数据库(For Redis)单机最大可支持百万级连接,借助多线程任务模型、无锁核心数据结构、批量IO技术和独创的值日志等技术,在相同软硬件环境下,并发访问性能可达Redis的1-10倍。
(2)高可靠性
新云数据库(For Redis)分布式版本基于Raft协议实现数据的多副本和强一致性,单个节点故障不影响整个系统的正常运行。同时单机版本在故障后也能够恢复到故障前一刻,不会出现原生Redis可能丢失已经操作成功的数据的情况。
(3)高可扩展性
新云数据库(For Redis)分布式版本实现了计算存储分离架构,可根据业务负载在线灵活添加/删除计算节点或存储节点,实现系统性能弹性伸缩。
(4)数据日志一体
新云数据库(For Redis)提供了数据日志一体化的技术方案。用顺序写替代了传统数据库的随机写,同时将数据日志存储到一份数据文件中,规避了因传统数据库存储多份数据导致处理过程过于复杂的痛点,大幅度提高了服务的性能。
(5)绿色节能
新云数据库(For Redis)整个系统只有顺序写,在保证性能的同时,充分利用硬盘资源,同时也降低硬盘损耗,延长硬盘使用寿命,降低用户使用系统成本。
(6)数据安全
新云数据库(For Redis)对存储数据进行加密及CRC校验,通过VLOG技术保证掉电后不丢失数据,同时具备容灾能力和快速数据恢复能力。
(7)跨平台
新云数据库(For Redis)兼容所有主流硬件平台,如龙芯/飞腾/申威/鲲鹏/兆芯/海光/宏芯/x86/ARM等处理器,麒麟/UOS/深度/欧拉/普华/红旗/Redhat/Ubuntu/Windows等操作系统。同时系统还针对国产硬件、SSD、非易失内存等做了优化,提升系统整体性能。
(8)自主原创
新云数据库(For Redis)是达梦数据技术(江苏)有限公司独立研发的产品,对核心代码拥有完全自主知识产权,能够提供本地化快速技术服务,对任何疑问能够进行及时解答,且必要时可以提供远程协助。此外,根据不同用户的特有需求,新云数据库(For Redis)研发团队还可提供定制功能开发服务。
1.4
产品应用场景
新云数据库(For Redis)是一款兼容Redis通信协议的Key-Value缓存系统,支持持久化存储设置,该系统能够满足诸多业务场景的高可靠、高扩展、高性能需求。
具体应用场景:
(1)IoT
新云数据库(For Redis)拥有超强写入性能,适用于各种不同的行业。例如制造业、物流业、医疗保健业、房地产业、能源生产业、农业等等。无论传感器类型如何,都可以很好地处理传入数据,并为进一步的数据分析提供了可能。
(2)电商行业
电商应用海量的历史订单数据,可以使用新云数据库(For Redis)进行持久化存储。电商促销活动会导致短时间大量访问,可选择新云数据库(For Redis)作为前端缓存,帮助后端数据库扛过业务高峰。电商应用的商品数据具有较为明显的冷热特征,使用新云数据库(For Redis)后,热门商品信息可以作为热信息长时间驻留在内存中,冷门商品信息会置换到硬盘存储,解决了热门商品快速访问的需求,也解决了海量商品数据纯内存化存储的高成本问题。
(3)游戏行业
游戏业务数据模型较为简单,可以使用新云数据库(For Redis)作为持久化数据库,通过使用Redis接口快速完成业务开发上线。例如,可使用Redis的有序集合结构(ZSET)完成游戏排行榜的实时展现。对于时延非常敏感的应用,也可以使用新云数据库(For Redis)作为前端缓存,加速应用访问速度。
(4)视频直播类应用
视频直播类业务往往会重度依赖缓存数据库去存储用户数据及好友互动关系。
直播行业:热门直播间往往占据了视频直播应用的大多数流量,使用新云数据库(For Redis),可以更加有效的利用宝贵的内存资源,通过在内存中保留热门直播间数据,在共享存储中保留冷门直播间数据,为客户降低使用成本。
在线教育:系统中存储有大量的课程,试题,解答等信息,但通常只有热门数据(包括热门课程,最新题库,名师讲解等)会被高频访问。使用新云数据库(For Redis),可以有效的根据数据的热度,决定存入内存或共享存储,实现性能与成本的平衡。
(5)其他应用场景
除上述场景外,随着互联网飞速发展,各种大型应用对持久化存储的需求与日俱增,具体来说,需要存储包括:历史订单、特征工程、日志记录、位置坐标、机器学习、用户画像等信息在内的海量数据。这些数据的共同特点是:数据量大,有效期长,需要一个支持大容量,低成本的key-value存储服务完成数据的采集和流转。Redis作为当前应用最为广泛的key-value服务,其丰富的数据结构和操作接口对于存储此类数据具有先天优势,但由于原生Redis只能作为缓存,因此无法在持久化存储领域发挥作用。新云数据库(For Redis)在兼容Redis接口的同时,又提供了高性能、绿色节能、高可靠的数据存储能力,可以作为此类持久化存储场景的理想解决方案。
系统架构
新云数据库(For Redis)是一款支持分布式安装和部署的Key-Value数据库,主要由存储服务器集群、计算服务器集群和元数据服务器集群组成。

图2.1新云数据库(For Redis)系统架构
存储服务器(SS)集群是数据存储的核心,负责提供整个Key-Value数据库的读写服务、数据的高可用、一致性和持久化等全部核心数据服务。海量数据通过哈希分片切分的方式被分散至不同的存储服务器。
计算服务器(CS)集群不存储任何用户数据,仅作为外部应用访问的接入与请求分发节点,将用户请求分发至相应的存储服务器,并将存储服务器的返回的结果反馈给外部应用。计算服务器集群是无状态的,可以无限水平扩展,应用程序可以通过负载均衡组件对外提供统一的接入地址。
元数据服务(MS)器集群主要存储系统的节点信息、分区信息等元数据。在特定特定条件下,计算服务器与存储服务器都会向元数据服务器请求元数据信息。元数据服务器集群还会根据系统负载进行调度和负载均衡(如数据的迁移),增加/删除新的计算/存储服务器资源。
关键技术创新
3.1 VLOG日志技术
VLOG的中文意思就是值日志系统,和传统的数据库不同的是,直接把数据作为日志,使得系统中只存在顺序写用户数据的情况,避免传统数据库中只有日志顺序写、数据是随机写的情况。另外,数据和日志合二为一,也减少了一半的写入量。通过这两方面的改进,可以显著提升数据更新操作性能。
3.2 LSM树索引
LSM树的主要思想是通过批量存储技术规避磁盘随机写入问题,和B+树相比,LSM树牺牲了部分读性能,用来大幅提高写性能。其主要思想是将对数据的修改增量保持在内存中,达到指定的大小限制后将这些修改操作批量顺序写入磁盘。读取的时候需要合并磁盘中历史数据和内存中最近修改操作,所以写入性能大幅提升,读取时需要先看是否命中内存,否则需要访问较多的磁盘文件。
3.3无锁缓冲区技术
在VLOG技术的基础上,由于VLOG始终只有追加写,之前的数据只有查询操作(更新和删除都转化为插入),因此数据块缓冲区可以消除写锁。此外,LSM树在内存中采用SKIPLIST来实现,也可以很容易实现为无锁模式,消除写锁,大幅提升系统并发访问性能。
3.4内存优化技术
Key-Value缓存数据库主要特点在于假定所有数据或者绝大部分数据能够在内存中存放,基于此前提可以针对性的设计算法和数据结构进行优化。如系统启动时默认加载最新的数据到内存中,当进行数据插入、更新操作时,在内存中直接保留记录的内存对象格式,当用户再次访问该记录时,无需从磁盘读取数据到缓冲区,然后将记录转化为内存对象格式,而是直接把内存对象格式的数据拼装成消息返回给用户即可,从而提升访问性能。
3.5批量I/O技术
全顺序写的机制为实现批量I/O奠定了基础,无论是VLOG还是LSM树都将支持批量顺序写操作,使得可以在SSD磁盘上实现单个写线程(只有顺序写)的性能可以和64线程的随机写性能相当,实现了用尽可能少的资源达到相同的性能目标。
3.6可选内存模式
当不需要考虑持久化问题时,可以不用写日志,直接在内存中操作所有数据,这样可以获得最佳性能模式。

为推动江苏省数字经济新业态新模式的发展,江苏省工信厅特组织开展“星光江苏”数字经济新品发布系列活动,面向江苏省内数字经济产业相关企业征集创新产品择优线上发布。对于评选出的产品,将通过多种渠道给予重点宣传推广,全方位展示江苏省数字经济产业的发展动态与最新成果,促进行业内积极有效的交流合作。
2022第三月度“星光江苏”数字经济创新产品征集正式启动,产品报名截止日期为2022年6月15日18:00。
活动详情咨询:曹女士 17731878189

往期推荐

阅读原文进入“云上星光江苏平台”回看会议直播、获奖产品线上展示









