一种交易数据处理方法和装置制造方法及图纸

技术编号:28626243 阅读:28 留言:0更新日期:2021-05-28 16:22
本发明专利技术公开了交易数据处理方法和装置,涉及自动程序设计技术领域。该方法的一具体实施方式包括接收交易数据处理请求,获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,进而通过一致性哈希分算法计算得到待处理数据所在的篮子号;读取预设的部署配置表,基于所述分库键值和所述篮子号获取待处理数据所在的数据库和部署单元;访问待处理数据所在的数据库和部署单元,执行所述交易数据处理请求。从而,本发明专利技术的实施方式将数据进行二维或者多维度地拆分,以适应企业多级管理模式,简化聚合类业务的处理逻辑,做到更灵活的分库分表处理。

【技术实现步骤摘要】
一种交易数据处理方法和装置
本专利技术涉及自动程序设计
,尤其涉及一种交易数据处理方法和装置。
技术介绍
随着企业的发展,其后台系统需要管理的数据越来越多,业务越来越复杂,单个数据库已经无法完全承载全部的数据和业务,不得用分库分表的方式将数据进行切分,提高整个系统的容量和处理能力。在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:而现有的大多数分库分表方式都是一维的,将数据按某种维度进行一次拆分,拆分后的数据完全打散,不能很好地适应分库分表前系统的某些管理方面的业务处理场景,不能同公司的管理架构相协调。例如在银行业,基本是以省分行为一个大的管理单元,各个省分行独自管理自己的业务人员和客户,各自出管理类报表,如果直接使用一维的分库分表方式将全行数据打散,则不能做到省行数据内聚,省行管理类报表处理业务处理复杂。
技术实现思路
有鉴于此,本专利技术实施例提供一种交易数据处理方法和装置,为解决现有技术问题,本专利技术将数据进行二维或者多维度地拆分,以适应企业多级管理模式,简化聚合类业务的处理逻辑,做到更灵活的分库分表处理。为实现上述目的,根据本专利技术实施例的一个方面,提供了一种交易数据处理方法,包括接收交易数据处理请求,获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,进而通过一致性哈希分算法计算得到待处理数据所在的篮子号;读取预设的部署配置表,基于所述分库键值和所述篮子号获取待处理数据所在的数据库和部署单元;访问待处理数据所在的数据库和部署单元,执行所述交易数据处理请求。可选地,接收交易数据处理请求之前,包括:获取待创建数据库的系统信息,基于所述系统信息中的属性标识,调用对应的容量评估组件,确定待创建数据库的分库数和分表数;根据所述系统信息中的业务场景,选取分库键值和分区键值,以将分库键值相同的系统数据放入同一分库中;根据所述分区键值通过一致性哈希计算得到对应的篮子号,以将具有相同篮子号的系统数据放入同一张分表中。可选地,基于所述系统信息中的属性标识,调用对应的容量评估组件,确定待创建数据库的分库数和分表数,包括:根据所述系统信息中的属性标识,判断是否为迁移系统,若是则调用迁移容量评估组件,确定待创建数据库的分库数和分表数;若否则调用新系统容量评估组件,确定待创建数据库的分库数和分表数。可选地,调用新系统容量评估组件,确定待创建数据库的分库数和分表数,包括:确定新系统部署数据库的台数得到分库数,以获取系统未来预计数据量计算得到单库数据量,进而单库数据量除以预设的单表最大数据量再向上取整后乘以预设的扩容阈值,得到分表数;以及调用迁移容量评估组件,确定待创建数据库的分库数和分表数,包括:根据当前系统数据量,确定未来预设时间的增长率,计算得到总数据量,进而基于预设的单库数据量阈值、预设的单表数据量阈值和预设的扩容阈值,计算得到分库数和分表数。可选地,获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,包括:获取所述请求的报文字段,判断所述报文字段中是否存在分区键和分库键且都不为空,若是则直接提取分库键值和分区键值;若否则调用预设的映射函数或预设的索引表,基于所述报文字段识别对应的分库键值和分区键值。可选地,预设的映射函数包括截取函数和拼接函数;调用预设的截取函数或拼接函数,从报文字段中获取分库键值和分区键值。可选地,还包括:设置识别策略栏位,以配置多行策略;其中,所述多行策略包括映射函数、索引表和直接获取。可选地,包括:通过配置在交易规则表中的SpringEL表达式来实现映射引擎中的分库分区键的映射关系。另外,本专利技术还提供了一种交易数据处理装置,包括获取模块,用于接收交易数据处理请求,获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,进而通过一致性哈希分算法计算得到待处理数据所在的篮子号;处理模块,用于读取预设的部署配置表,基于所述分库键值和所述篮子号获取待处理数据所在的数据库和部署单元;访问待处理数据所在的数据库和部署单元,执行所述交易数据处理请求。可选地,获取模块接收交易数据处理请求之前,包括:获取待创建数据库的系统信息,基于所述系统信息中的属性标识,调用对应的容量评估组件,确定待创建数据库的分库数和分表数;根据所述系统信息中的业务场景,选取分库键值和分区键值,以将分库键值相同的系统数据放入同一分库中;根据所述分区键值通过一致性哈希计算得到对应的篮子号,以将具有相同篮子号的系统数据放入同一张分表中。可选地,获取模块基于所述系统信息中的属性标识,调用对应的容量评估组件,确定待创建数据库的分库数和分表数,包括:根据所述系统信息中的属性标识,判断是否为迁移系统,若是则调用迁移容量评估组件,确定待创建数据库的分库数和分表数;若否则调用新系统容量评估组件,确定待创建数据库的分库数和分表数。可选地,获取模块调用新系统容量评估组件,确定待创建数据库的分库数和分表数,包括:确定新系统部署数据库的台数得到分库数,以获取系统未来预计数据量计算得到单库数据量,进而单库数据量除以预设的单表最大数据量再向上取整后乘以预设的扩容阈值,得到分表数;以及调用迁移容量评估组件,确定待创建数据库的分库数和分表数,包括:根据当前系统数据量,确定未来预设时间的增长率,计算得到总数据量,进而基于预设的单库数据量阈值、预设的单表数据量阈值和预设的扩容阈值,计算得到分库数和分表数。可选地,获取模块获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,包括:获取所述请求的报文字段,判断所述报文字段中是否存在分区键和分库键且都不为空,若是则直接提取分库键值和分区键值;若否则调用预设的映射函数或预设的索引表,基于所述报文字段识别对应的分库键值和分区键值。可选地,获取模块,还用于:通过配置在交易规则表中的SpringEL表达式来实现映射引擎中的分库分区键的映射关系。上述专利技术中的一个实施例具有如下优点或有益效果:本专利技术本专利技术引入分库键将数据从两个维度或者多维进行进行拆分,便于系统更好地管理数据,更好实现复杂功能;并且,采用一致性哈希算法定位篮子号,提前设计好了系统容量,在扩容时降低数据重分布成本,简化地重分布对数据系统的影响;同时灵活多变的分库键与分片键映射机制,保证了系统交易实现功能不受数据约束,极大提升了系统可实现功能的多样性;另外,通过SpringEL表达实现多变的分库键与分片键映射机制。上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。附图说明附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:图1是根据本专利技术第一实施例的交易数据处理方法的主要流程的示意图;图2是根据本专利技术实施例的一致性哈希算法实例的示意图;图3是根据本专利技术实本文档来自技高网...

【技术保护点】
1.一种交易数据处理方法,其特征在于,包括:/n接收交易数据处理请求,获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,进而通过一致性哈希分算法计算得到待处理数据所在的篮子号;/n读取预设的部署配置表,基于所述分库键值和所述篮子号获取待处理数据所在的数据库和部署单元;/n访问待处理数据所在的数据库和部署单元,执行所述交易数据处理请求。/n

【技术特征摘要】
1.一种交易数据处理方法,其特征在于,包括:
接收交易数据处理请求,获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,进而通过一致性哈希分算法计算得到待处理数据所在的篮子号;
读取预设的部署配置表,基于所述分库键值和所述篮子号获取待处理数据所在的数据库和部署单元;
访问待处理数据所在的数据库和部署单元,执行所述交易数据处理请求。


2.根据权利要求1所述的方法,其特征在于,接收交易数据处理请求之前,包括:
获取待创建数据库的系统信息,基于所述系统信息中的属性标识,调用对应的容量评估组件,确定待创建数据库的分库数和分表数;
根据所述系统信息中的业务场景,选取分库键值和分区键值,以将分库键值相同的系统数据放入同一分库中;
根据所述分区键值通过一致性哈希计算得到对应的篮子号,以将具有相同篮子号的系统数据放入同一张分表中。


3.根据权利要求2所述的方法,其特征在于,基于所述系统信息中的属性标识,调用对应的容量评估组件,确定待创建数据库的分库数和分表数,包括:
根据所述系统信息中的属性标识,判断是否为迁移系统,若是则调用迁移容量评估组件,确定待创建数据库的分库数和分表数;若否则调用新系统容量评估组件,确定待创建数据库的分库数和分表数。


4.根据权利要求3所述的方法,其特征在于,调用新系统容量评估组件,确定待创建数据库的分库数和分表数,包括:
确定新系统部署数据库的台数得到分库数,以获取系统未来预计数据量计算得到单库数据量,进而单库数据量除以预设的单表最大数据量再向上取整后乘以预设的扩容阈值,得到分表数;以及
调用迁移容量评估组件,确定待创建数据库的分库数和分表数,包括:
根据当前系统数据量,确定未来预设时间的增长率,计算得到总数据量,进而基于预设的单库数据量阈值、预设的单表数据量阈值和预设的扩容阈值,计算得到分库数和分表数。


5.根据权利要求1所述的方法,其特征在于,获取所述请求的报文字段,调用预设的映射引擎识别对应的分库键值和分区键值,包括:
获取所述请求的报文字段,判断所述报文字段中是否存在分区键和分库键且都不为空,若是则直接提取分库键值和分区键值;若否则调用预设的映射函数或预设的索引表,基于所述报文字段识别对应的分库键值和分区键值。


6.根据权利要求5所述的方法,其特征在于,预设的映射函数包括截取函数和拼接函数;
调用预设的截取函数或拼接函数,从报文字段中获取分库键值和分区键值。


7.根据权利要求5所述的方法,其特征在于,还包括:
设置识别策略栏位,以配置多行策略;其中,所述多行策略包括映射函数、索引表和直接获取。


8.根据权利要求1-7任一所述的方法,其特征在于,包括:
通过配置在交易规则表中的SpringEL表达式来实现映射引擎中的分库分区键的映射关系。


9.一种交易数据处理装置,其特征在于,包括:
...

【专利技术属性】
技术研发人员:何雷
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1