一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于HTAP的分布式数据库系统的制作方法

2022-06-02 13:47:16 来源:中国专利 TAG:

一种基于htap的分布式数据库系统
技术领域
1.本发明涉及数据库领域,尤其是涉及一种基于htap的分布式数据库系统。


背景技术:

2.随着大数据概念的兴起以及海量数据需求在各个行业的落地,传统集中式数据库处理的场景逐渐受限,分布式数据作为一种新型的数据存储解决方案,受到越来越多的关注。分布式数据库应用于金融行业时,由于金融行业对风险控制的要求更高,分布式数据库不能有效解决高复杂度交易场景,业务实时性、一致性差。分布式数据库常基于mysql主从复制结合分区表和分库分表中间件方式,当数据量和访问量上升时,使用硬件升级的方式纵向扩展。易受限于硬件配置限制,纵向扩展空间有限。主从复制存在异步延时;分区表需要定期手工维护分区;分库分表的方案,无法在数据库层提供商业银行交易场景中的强一致性和完整的,分布式事务要求,对业务和应用有侵入性,需要应用系统做一定的技术调整和事务妥协;跨库的查询,需要在中间层上组合;单库如果容量不足,需要再次拆分,成本高昂。


技术实现要素:

3.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于htap的分布式数据库系统。
4.本发明的目的可以通过以下技术方案来实现:
5.一种基于htap的分布式数据库系统,包括tidb层、tikv层和集群调度模块,
6.所述的tidb层用于接收数据库访问请求,并通过集群调度模块查询存储访问请求计算所需数据的tikv地址,将计算任务下发至对应的tikv存储单元,获取tikv返回的计算结果;
7.所述的tikv层包括多个tikv存储单元,所述的tikv存储单元用于存储数据,并根据tidb层下发的计算任务进行数据计算;
8.所述的集群调度模块用于存储tikv单元的存储信息,供tidb层进行查询。
9.优选地,所述的tidb层包括多个tidb服务器,当所述tidb层接收到数据库访问请求时,轮循tidb层中的tidb服务器并将数据库访问请求分配给第一个空闲tidb服务器进行处理。
10.优选地,所述的tidb服务器与tikv存储单元间通过grpc协议进行通信。
11.优选地,所述的tidb层包括三个及三个以上的tidb服务器。
12.优选地,所述的tikv存储单元间通过raft协议进行通信。
13.优选地,所述的tikv层包括三个及三个以上的tikv存储单元。
14.优选地,tikv层的每一份数据同时在三个tikv存储单元中存储并同步更新。
15.优选地,所述的分布式数据库系统还包括spark driver组件,所述的spark driver组件分别与集群调度模块与tikv层连接,用于存储补充数据。
16.优选地,所述的tidb层通过grpc协议与集群调度模块进行通信。
17.优选地,所述的tikv层通过grpc协议与集群调度模块进行通信。
18.与现有技术相比,本发明具有如下优点:
19.1)本发明实现标准化部署配置,搭建性能可靠,标准化横向扩展的分布式数据库存储部署架构,分布式事务数据库通过在多种层级实现数据的分散存储,将数据库压力分散到不同服务器上。与集中式数据库相比,分布式数据库可以均衡交易负载,并采用高并发的架构提升系统的交易处理能力,而其统一的资源管理机制也使得数据库的性能扩展不再是设备的替换式升级,而是通过增加存储或计算节点来实现弹性升级,极大地节约了升级成本;
20.2)本发明通过简单地增加新节点即可实现tidb层的水平扩展,按需扩展吞吐或存储,轻松应对高并发、海量数据场景。得益于tidb存储计算分离的架构设计,可按需对计算、存储分别进行在线扩容、缩容,调整过程中对应用运维人员透明。tidb server本身是无状态的,意味着当计算能力成为瓶颈的时候,可以直接扩容机器,可扩展性强,数据库的一致性和完整性好。
附图说明
21.图1为本发明的系统架构图;
22.图2为本发明带有spark driver组件的系统架构图;
23.图3为本发明tikv层的结构示意图。
24.其中,1、tidb层,101、tidb服务器,2、tikv层,201、tikv存储单元,3、集群调度模块,4、spark driver组件。
具体实施方式
25.下面结合附图和具体实施例对本发明进行详细说明。注意,以下的实施方式的说明只是实质上的例示,本发明并不意在对其适用物或其用途进行限定,且本发明并不限定于以下的实施方式。
26.实施例
27.一种基于htap的分布式数据库系统,如图1~3所示,htap指混合事务/分析处理数据库,包括tidb层1、tikv层2和集群调度模块3,tidb层1用于接收数据库访问请求,并通过集群调度模块3查询存储访问请求计算所需数据的tikv地址,将计算任务下发至对应的tikv存储单元201,获取tikv返回的计算结果;tikv层2包括tikv层2包括三个及三个以上的tikv存储单元201,tikv存储单元201用于存储数据,并根据tidb层1下发的计算任务进行数据计算;集群调度模块3用于存储tikv单元的存储信息,供tidb层1进行查询,本实施例中,集群调度模块3即为placement driver模块,简称pd。
28.本实施例中,tidb层1包括三个及三个以上的tidb服务器101,当所述tidb层1接收到数据库访问请求时,轮循tidb层1中的tidb服务器101并将数据库访问请求分配给第一个空闲tidb服务器101进行处理。
29.具体地,对于各部分的通信方式,tidb服务器101与tikv存储单元201间通过grpc协议进行通信,tidb层1通过grpc协议与集群调度模块3进行通信,tikv层2通过grpc协议与
集群调度模块3进行通信。
30.tikv存储单元201间通过raft协议进行通信,实现备份、容灾,tikv层2的每一份数据同时在三个tikv存储单元201中存储并同步更新。具体地,tikv存储单元201存储数据的基本单位是region,每个tikv存储单元201会负责多个region。tikv存储单元201使用raft协议做复制,保持数据的一致性和容灾。副本以region为单位进行管理,不同节点上的多个region构成一个raft group,互为副本。数据在多个tikv存储单元201之间的负载均衡由菌群调度模块调度,这里也就是以region为单位进行调度。
31.另外,为了提高本发明的可靠性,分布式数据库系统还包括spark driver组件4,spark driver组件4分别与集群调度模块3与tikv层2连接,用于存储补充数据,作为一个基于列的存储引擎,形成了下层行、列两个存储引擎、上层两个计算引擎的完整混合数据库。
32.本发明的tidb层1、tikv层2数据节点和计算节点分离的高可用部署架构方案,根据需要,架构后续还能进一步灵活扩展,支持同城多活,具备服务器级、机柜级、数据中心级容灾能力。
33.本发明数据库的具体实时部署过程中,首先,部署之初,就设定了标准化部署配置,利用intel xeon gold多核高性能cpu计算能力,ssd hdd raid分离热数据和离线备份的数据存储,光网卡bond冗余,高性能内存,硬件网络负载均衡组建实现sql访问层和存储引擎层冗余,搭建性能强劲,可横向扩展的标准化分布式数据库存储部署架构。
34.其次,部署后进行分布式数据初始化平滑迁移,根据协议兼容mysql的特性,完成应用系统的初始化表结构,利用原生标准loader,mydumper工具,使迁移后表结构和数据与原系统无缝衔接,不再分库分表,数据动态分片对于应用层透明,实现数据的平滑迁移改造。
35.然后,对应用兼容性适配,进行必要验证和改造,性能趋势最新数据页面改写优化,对表名,列名,函数参数名进行更名和语句关联改造。动作管理页面改写优化,避免使用子查询的方式。配置管理模块改写优化,使用缓存库实现分布式锁。门户页面进行sql优化消除对groups,error保留字的使用。
36.另外,性能方面,进行参数优化,优化大批量dml性能瓶颈,优化操作系统缓存,cpu相关参数;根据历史统计信息进行性能分析,对存在性能瓶颈的调用,优化sql和统计信息相关参数,完成压力测试,拓扑图,动作管理,仪表盘,模板管理,告警爆发页面查询性能扩展3倍以上。
37.同时,将本发明数据库系统自身的运行服务状态和性能指标纳入监控采集,实现运行性能数据趋势可视化和可溯源,实时统一监控告警,形成持续优化的闭环。消除无效的冗余的告警,制定监控模板,赋予分布式数据库标准化的新增节点扩展能力。
38.还能将系统与controlm任务调度系统,commvault虚拟带库备份系统相结合,定制备份计划加强可用性管理。与sql审核发布系统相结合,实施发布流水线编排,加强变更规划能力,实现发布标准化。
39.最后,结合原有数据库开发设计知识体系积累,形成分布式数据库开发设计指引文件。含:数据库对象命名规范,表命名规范,字段命名规范,索引命名规范,数据库对象设计规范,表的设计规范,字段的设计规范,字段默认值规范,索引设计规范,完整性设计规范,性能设计规范,扩展性设计规范,sql开发规范,建表删表规范,dml书写规范,字段类型
一致性,事务设计规范,索引使用场景规范,region使用规范,字段上使用函数规范,order by使用规范,full group by使用规范,默认权限设计等一整套开发设计规范。
40.上述实施方式仅为例举,不表示对本发明范围的限定。这些实施方式还能以其它各种方式来实施,且能在不脱离本发明技术思想的范围内作各种省略、置换、变更。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献