CN116595024A - 一种海量数据区块链应用的处理方法及装置 - Google Patents
一种海量数据区块链应用的处理方法及装置 Download PDFInfo
- Publication number
- CN116595024A CN116595024A CN202310870360.6A CN202310870360A CN116595024A CN 116595024 A CN116595024 A CN 116595024A CN 202310870360 A CN202310870360 A CN 202310870360A CN 116595024 A CN116595024 A CN 116595024A
- Authority
- CN
- China
- Prior art keywords
- data
- grouping
- uplink
- chain
- rule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 28
- 238000000034 method Methods 0.000 claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims description 24
- 238000005516 engineering process Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 15
- 238000013500 data storage Methods 0.000 claims description 9
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 238000010200 validation analysis Methods 0.000 claims description 6
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 230000000007 visual effect Effects 0.000 claims description 4
- 238000012790 confirmation Methods 0.000 claims description 2
- 238000003860 storage Methods 0.000 abstract description 14
- 238000011161 development Methods 0.000 abstract description 7
- 230000008901 benefit Effects 0.000 abstract description 4
- 238000009826 distribution Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 7
- 239000000835 fiber Substances 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
- G06F16/2386—Bulk updating operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/278—Data partitioning, e.g. horizontal or vertical partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开一种海量数据区块链应用的处理方法及装置,应用于业务系统与区块链领域,针对现有业务的发展,数据量越来越大,区块链造成的瓶颈,越来越影响用户对业务应用系统高性能和高可用的要求,区块链的可扩展性不足问题日益突显。本发明通过搭建新的区块链实现数据和交易分流,实现区块链的扩展;提升依托于区块链的业务应用系统的运行效率,保障业务系统的高性能和高可用,以满足日益增长的海量业务产生的应用场景。结合传统数据库的分库思想,采用搭建新的独立的扩展区块链方式,来实现区块链海量数据的存储;解决批量并发的上链交易的吞吐量和交易速度问题。本发明具有调用透明、上链快捷高效、易于实施、灵活可配置等诸多优点。
Description
技术领域
本发明涉及区块链技术领域,尤其是一种海量数据区块链应用的处理方法及装置。
背景技术
在业务应用系统中,由于区块链技术的引入,很好的解决了交易数据的可信问题。但随着业务的发展,数据量越来越大,以及业务请求并发量的不断增加,由区块链造成的瓶颈,越来越影响用户对业务应用系统高性能和高可用的要求。区块链的可扩展性不足问题日益突显,如何解决海量区块链数据的存储、交易的吞吐量和交易的速度问题,成了大家探讨的热门话题。现有技术中,实现方案技术相当复杂,如何适配现有业务系统中的区块链,降低相关改造成本和各种可能的冲击也都是问题。在传统数据库中,针对海量数据一般会采用分库分表来进行处理。
因此,有必要提供一种海量数据区块链应用的处理方法及装置。通过搭建新的区块链实现数据和交易分流,并实现一种跨区块链解决方案,从而满足海量交易数据的上链与存储,实现区块链的扩展。
发明内容
本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例,在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
鉴于上述和/或现有技术中区块链数据使用时所存在的问题,提出了本发明。
因此,本发明所要解决的技术问题如何提升依托于区块链的业务应用系统的运行效率,保障业务系统的高性能和高可用,以满足日益增长的海量业务产生的应用场景的问题。
为解决上述技术问题,本发明提供如下技术方案:一种海量数据区块链应用的处理方法,其特征在于,包括以下步骤:
S1、部署新扩展区块链,发布上链智能合约,将扩展链地址及账户信息维护至数据库中;
S2、对分组规则配置的业务交易数据,可选择业务交易时间段,并填写业务数据分组特征字段及分组算法,创建规则集;
S3、对分组规则配置的可视化界面上提供“生效规则”按钮,采用模板引擎技术,根据配置的规则库一键生成目标链查询智能合约代码;
S4、在主区块链上发布根据规则库生成的专用目标链查询智能合约;
S5、对计算目标链的业务数据,调用集成对主链上发布的专用目标链查询智能合约,并包装查询结果,返回区块链地址、上链合约、账户信息;
S6、按业务数据的交易日期规则集中分组特征字段定义,分组批量数据,实现上链数据分组,;
S7、采用多线程技术并行处理已分组的批量业务数据,实现分组多链批量上链;
S8、针对每个分组,启用独立子线程,调用计算目标链,获取区块链地址、账户信息,并调用目标链的上链智能合约完成数据上链。
作为本发明所述海量数据区块链应用的处理方法的一种优选方案,所述S1-S8处理方法步骤:还包括:(1)分组规则的业务交易数据;(2)计算目标链的业务数据;(3)分组上链数据;(4)分组多链批量上链。
作为本发明所述海量数据区块链应用的处理方法的一种优选方案,所述分组规则配置的业务交易数据包括:(1)实现一个界面化的规则配置窗口,提供查询、新建、修改、删除能力;(2)对按条件多维度查询规则集列表的能力,提供规则集编号、对应的业务交易日期时间段、生效状态字段列表展示,以及点击显示明细的分组特征字段定义信息;(3)新建规则集时,需先选择适配的业务交易日期的起始日期和截止日期;(4)修改规则集,与新建保持相同的约束要求,后台逻辑处理为先删除再新增;(5)删除规则集,只支持逻辑删除,即对相应规则集在数据库中置删除标志位即可。
作为本发明所述海量数据区块链应用的处理方法的一种优选方案,所述计算目标链的业务数据,包括:(1)在规则库中提供一键生效规则的能力,点击全局的“生效规则”按钮,确认后更新所有的规则集状态;(2)根据解析待上链的业务数据,计算业务交易日期对应的规则集,提取规则集配置中的业务数据中一到多个分组特征字段,匹配出目标数据存储区块链信息;(3)开发公共的标准SDK或API接口,实现调用主链上专用的目标链查询智能合约,包装查询结果,将相应的区块链地址、上链合约、账户信息一并返回给调用方;
作为本发明所述海量数据区块链应用的处理方法的一种优选方案,所述的海量数据区块链应用的处理方法,其特征在于:所述分组上链数据,包括:(1)采用编程语言,供外部调用开发公共的标准SDK或API接口;(2)在接口内部,实现对批量要上链的业务数据进行解析。先根据业务数据的交易日期进行第一次分组,匹配对应的分组特征字段定义规则集;再将第一次分组后的数据,根据分组规则集中的分组特征字段定义完成第二次分组;(3)将分组后的新集合返回给调用方。
作为本发明所述海量数据区块链应用的处理方法的一种优选方案,所述分组多链批量上链,包括:(1)采用编程语言,开发公共的标准SDK或API接口,入参为分组后的待上链业务数据集合;出参为数据上链后的Hash地址集合;(2)循环分组数据集合,采用多线程技术并行运算处理每个分组;(3)并在多线程中,继续调用匹配对应的目标区块链及上链智能合约,实现业务数据的批量并行上链。
本发明的有益效果:可有效解决区块链技术本身的可扩展性问题,包括海量数据的存储、交易的吞吐量和速度,为数据量及交易量暴增的基于区块链技术的业务应用系统的扩展,提供一种经济、实用、可行的可扩展性解决方案。结合传统数据库的分库思想,采用搭建新的独立的扩展区块链方式,提供一种跨区块链上链解决方案,来实现区块链海量数据的存储;以及结合多线程并行处理技术,解决批量并发的上链交易的吞吐量和交易速度问题。本发明具有调用透明、上链快捷高效、易于实施、灵活可配置诸多优点。
鉴于区块链数据使用时还能进一步提高的问题,提出了一种处理装置。
为解决上述技术问题,本发明还提供如下技术方案:一种处理装置,其包括上述实施例任一所述的海量数据区块链应用的处理方法,以及,包括分组规则配置模块、目标链查询智能合约生成模块、目标链计算模块、上链数据分组模块、分组多链批量上链模块,所述分组规则配置模块提供界面化的分组规则配置功能,所述目标链查询智能合约生成模块提供一键生效配置规则的功能,并根据规则库生成专用的目标链查询智能合约代码;所述目标链计算模块提供根据业务数据特征字段来进行目标链信息计算的功能;所述上链数据分组模块基于所述分组规则配置模块配置的规则库,来对批量要上链的业务交易数据进行分组;所述分组多链批量上链模块提供统一标准的上链SDK/API接口,引入多线程技术。
本发明的另一有益效果:通过多个模块之间的配合可以变通友好的解决了区块链的可扩展性问题,以及海量区块链数据的存储、交易的吞吐量和交易的速度问题,同时易于传统基于区块链应用系统的快捷升级。并提供了一种友好易用的跨区块链应用解决方案。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
图1为本发明提供的一种实施例的所述海量数据区块链应用的处理方法及装置的处理方法流程图;
图2为本发明提供的一种实施例的所述海量数据区块链应用的处理方法及装置的处理方法逻辑图;
图3为本发明提供的一种实施例的所述海量数据区块链应用的处理方法及装置的处理装置示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
再其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
实施例1,参照图1,本发明第一个实施例,该实施例提供了一种海量数据区块链应用的处理方法,包括以下步骤:
S1,部署新扩展区块链,发布上链智能合约,将扩展链地址及账户信息维护至数据库中;
根据本发明的一个实施例,根据业务发展需求,扩展部署新的区块链,以满足海量数据的分链存储,以及能过多个区块链链并行服务来提升交易吞吐量和响应速度;
需要说明的是,为保证兼容性,新扩展区块链应保持与原主区块链相同的软件厂家、型号及版本,以及发布相同的上链智能合约。
S2,对分组规则配置的业务交易数据;
根据本发明的一个实施例,提供可视化的界面,方便用户进行规则配置管理。支持选择业务交易时间段,并填写业务数据分组特征字段及分组算法(列表list、范围range、哈希hash),创建规则集。
需要说明的是,为保证历史已上链数据不受影响,故只能修改或新建尚未发生业务的未来时间段的规则集。可以创建一到多个规则集,每个规则集对应一个明确的业务交易时间段,且各规则集中业务交易时间段不能有交叉重叠,以确保业务数据上链时能根据业务交易日期唯一确定一个规则集。
S3,对分组规则配置的可视化界面上提供“生效规则”按钮。
根据本发明的一个实施例,编写目标链查询智能合约的基础模板,并采用模板引擎(FreeMarker、Velocity)技术,根据配置的规则库一键生成目标链查询智能合约代码。
S4,在主区块链上发布根据规则库生成的专用目标链查询智能合约。
根据本发明的一个实施例,将根据配置的规则库一键生成的目标链查询智能合约代码发布到主区块链上。
需要说明的是,每次扩展新链,都需要配置新的规则集及相适配的业务交易日期时间段,重新根据配置的规则库一键生成目标链查询智能合约代码,以及重新在主区块链上更新发布该智能合约。
S5,对计算目标链的业务数据。
根据本发明的一个实施例,采用SDK或API接口的方式,封装对主链上发布的专用目标链查询智能合约的调用,并包装查询结果,将相应的区块链地址、上链合约、账户信息一并返回给调用方。
S6,对分组上链数据。
根据本发明的一个实施例,采用SDK或API接口的方式实现业务数据分组。先根据业务数据的交易日期进行分组,匹配对应的分组特征字段定义规则集。再对分组后的数据,根据分组特征字段定义规则集中分组定义及对应分组算法(包括列表list、范围range、哈希hash)完成第二次分组。最终将两轮分组后的批量业务数据的新集合作为出参返回。
需要说明的是,如果传入的是单条业务交易数据,无需进行两轮分组逻辑运算,直接返回即可。
S7,对分组多链批量上链。
根据本发明的一个实施例,为提升数据处理速率,采用多线程技术并行处理已分组的批量业务数据,针对每一个分组集合启用一个子线程来处理数据上链。
需要说明的是,每个子线程中数据上链过程,详见下述S8步骤。
S8,针对每个分组,启用独立子线程,调用计算目标链计算,获取区块链地址、账户信息,并调用目标链的上链智能合约完成数据上链。
具体而言,在子线程中,先通过调用计算目标链接口,实现对主区块链上专用的目标链查询智能合约的调用,获取到规则配置对应的业务数据目标存储的区块链地址、账户信息。再通过调用对封装对目标链的上链智能合约,实现最终的业务交易数据上链目标,并达到根据规则将业务数据和上链交易请求分流到不同的多个区块链上。
(1)提供一个分组规则配置的业务交易数据:定义业务交易数据的分组特征字段(例如业务交易年份、业务类型),提供多规则集的支持,以及明确每个规则集对应的业务交易日期时间段。应注意的是,对应的业务交易日期时间段只能是未来的某段时间,以防止对链上历史业务数据造成误导;并且多个规则集对应的业务交易日期时间段应不能重叠或交叉,以便根据业务交易日期匹配到唯一的规则集。
(2)提供一个计算目标链的业务数据:在主链上实现一个专用的目标链查询智能合约,用来计算获取目标数据存储区块链地址、合约、及账户信息。根据分组规则配置,按设定的业务数据分组算法,运算获得目标数据存储区块链地址信息。算法中须根据业务交易日期来明确执行按分组特征字段定义的规则集。应注意的是,算法中须保证计算获得的历史已上链业务数据的存储区块链地址计算必须和现行实际地址一致,不能影响已存在的历史业务数据的查询,只能对未来产生的新业务交易数据划分指向新的不同的一到多个区块链。
(3)提供一个分组上链数据:首先根据业务数据的交易日期进行第一次分组,寻找出对应的分组规则集。再将第一次分组后的数据,根据分组规则集中的分组特征字段定义完成第二次分组。
(4)提供一个分组多链批量上链:将运算分组后的业务数据,以及计算获得的业务数据目标存储区块链地址及账户信息一并传入,以多线程方式,并行调用多个区块链的上链智能合约,实现业务数据的批量上链,提升数据上链的吞吐量和速度。
业务数据上链或查询场景应用中,先对业务数据调用分组进行分组,再对分组数据调用计算目标链计算获得目标存储区块链地址及账户信息,最后使用批量上链来实现业务数据上链存储。
通过这种海量数据区块链应用的处理方法,可有效的解决区块链技术本身的可扩展性问题,包括海量数据的存储、交易的吞吐量和速度。从而提升依托于区块链的业务应用系统的运行效率,保障业务系统的高性能和高可用,以满足日益增长的海量业务产生的应用场景。
具体的,结合传统数据库的分库思想,采用搭建新的独立的扩展区块链方式,提供一种跨区块链上链解决方案,来实现区块链海量数据的存储;以及结合多线程并行处理技术,解决批量并发的上链交易的吞吐量和交易速度问题。实现一个业务交易数据的分组规则配置,提供上链数据的分组规则配置及业务数据分组特征字段定义。在主链上编写智能合约实现一个计算目标链的业务数据,用来按分组规则配置获得目标链的地址及账户信息。对一个分组上链数据,用来将分组规则配置对批量上链的数据进行分组。采用多线程技术,完成数据的批量并行快速上链,实现一个分组多链批量上链。
本发明的第一个目的是提供一个分组规则配置的业务交易数据,实现业务上链数据的分组规则配置及业务数据分组特征字段定义,并支持按业务交易日期时间段来对应多个规则集。使用时,
(1)对一个界面化的规则配置窗口,提供查询、新建、修改、删除能力;
(2)对按条件多维度查询规则集列表的能力,提供规则集编号、对应的业务交易日期时间段、生效状态字段列表展示,以及点击显示明细的分组特征字段定义信息;
例如:只针对业务交易日期的范围是尚未发生业务的未来时间的规则集提供修改和删除功能。
(3)新建规则集时,需先选择适配的业务交易日期的起始日期和截止日期;添加要进行分组的一到多个业务字段,选择分组算法(列表list、范围range、哈希hash),以及选择已部署好的目标区块链,最终将规则保存进数据库中;
例如:①选择适配的业务交易日期的范围只能是尚未发生业务的未来时间,且不能与其它规则集的适配业务时间段重合冲突;②应预先部署好一到多个供业务数据上链的目标区块链,发布相应的上链智能合约,并将相应的区块链地址及账户信息维护至数据库中,提供列表展示与选择界面。
(4)修改规则集,与新建保持相同的约束要求,后台逻辑处理为先删除再新增;
(5)删除规则集,只支持逻辑删除,即对相应规则集在数据库中置删除标志位即可;
通过分组规则匹配,为后续的业务数据的分组分链做好数据准备。
本发明的第二个目的是提供一个计算目标链的业务数据,在主链上发布一个专用的目标链查询智能合约,根据配置的分组规则库,获取目标数据存储区块链地址、上链合约、及账户信息。使用时,
(1)在规则库中提供一键生效规则的能力,点击全局的“生效规则”按钮,确认后更新所有的规则集状态。采用模板引擎(FreeMarker、Velocity)技术,根据规则库自动生成目标链查询智能合约代码;将合约部署至主链上,记录合约地址。
(2)自动生成的智能合约代码的要完成的功能为:根据解析待上链的业务数据,计算业务交易日期对应的规则集,提取规则集配置中的业务数据中一到多个分组特征字段,匹配出目标数据存储区块链信息。
(3)开发公共的标准SDK或API接口,实现对主链上专用的目标链查询智能合约的调用,包装查询结果,将相应的区块链地址、上链合约、账户信息一并返回给调用方。
上述步骤提供了传入上链业务数据,直接返回目标数据存储区块链信息的方法。
本发明的第三个目的是提供分组上链数据,按业务交易日期和规则集的分组特征字段定义,实现对批量要上链的业务数据进行两轮分组。使用时,
(1)采用编程语言(例Java,但不限于Java),开发公共的标准SDK或API接口,供外部调用。
(2)在接口内部,实现对批量要上链的业务数据进行解析。先根据业务数据的交易日期进行第一次分组,匹配对应的分组特征字段定义规则集。再对第一次分组后的数据,根据分组特征字段定义规则集中分组定义及对应分组算法(包括列表list、范围range、哈希hash)完成第二次分组。
(3)将分组后的新集合返回给调用方。
通过分组上链数据,将业务数据将规则完成分拆,以便后续的快速匹配目标存储链,以及批量并行上链。
本发明的第四个目的是提供一个分组多链批量上链,实现批量业务数据的并行快速上链。实现本发明第四个目的的技术方案是:使用时,
(1)采用编程语言(例Java,但不限于Java),开发公共的标准SDK或API接口,供外部调用。入参为分组后的待上链业务数据集合;出参为数据上链后的Hash地址集合。
(2)循环分组数据集合,采用多线程技术并行运算处理每个分组。取每个分组第一条数据,调用计算目标链,获得相对应的区块链地址、上链合约、账户信息。
(3)并在多线程中,继续调用匹配对应的目标区块链及上链智能合约,实现业务数据的批量并行上链。
综上,通过分组多链批量上链,对调用批量业务数据多目标存储区块链的并行上链,从而有效提升业务数据上链的吞吐量和速度。
实施例2,参照图2,本发明第二个实施例,该实施例提供了一种海量数据区块链应用的处理方法,描述了一个基于区块链的应用系统针对不断暴增的业务发展情况,如何去扩展新的区块链分链,如何实现批量交易数据的分组及分链批量上链的全过程。具体的,针对扩展分链,首先要准备设备资源,安装部署新扩展区块链,发布相同的上链智能合约,并在数据库中记录相关的新扩展链的地址、账户信息。再配置分组规则,定义业务数据分组特征字段及分组算法,一键生成目标链查询智能合约,在主链上发布目标链查询智能合约。至此,完成分链的扩展。
针对批量数据上链,首先调用分组上链数据接口,分组业务交易数据。再使用分组后的业务交易数据新集合,调用分组多链批量上链进行上链。在分组多链批量上链内部,采用多线程技术并行处理已分组的批量业务数据,针对每一个分组集合启用一个子线程。在并行的每一子线程中,通过调用的计算目标链,获取区块链地址、账户信息,最后调用目标链的上链智能合约完成数据上链。
综上所述,根据本发明实施例的一种海量数据区块链应用的处理方法,可根据实现业务发展需要,随时来扩展新链。通过配置分组规则,根据规则库一链生成新的目标链查询智能合约,并将合约更新发布至主区块连上,从而来启用新链。批量数据上链时,由分组上链数据完成对批量业务数据的分组,由分组多链批量上链来以多线程并行方式完成具体的业务数据上链处理。在分组多链批量上链内部,又由各个独立子线程使用计算目标链来获取业务数据目标存储区块链地址及账户信息,并完成目标链上链智能合约的调用,实现最终的数据上链。
综上,一种海量数据区块链应用的处理方法,有效的解决的区块链应用的扩展性问题。为海量数据区块链应用的数据存储、交易吞吐量及交易速度的提升,提供了一种友好便捷、高效易用的解决方案。
实施例3,参照图3,为本发明第三个实施例,与上个实施例不同的是,该实施例提供了一种处理装置,解决了如何提升依托于区块链的业务应用系统的运行效率,保障业务系统的高性能和高可用,以满足日益增长的海量业务产生的应用场景的问题,其包括上述任一实施例所述的海量数据区块链应用的处理方法,以及,包括分组规则配置模块100、目标链查询智能合约生成模块200、目标链计算模块300、上链数据分组模块400、分组多链批量上链模块500,所述分组规则配置模块100提供界面化的分组规则配置功能,所述目标链查询智能合约生成模块200提供一键生效配置规则的功能,并根据规则库生成专用的目标链查询智能合约代码;所述目标链计算模块300提供根据业务数据特征字段来进行目标链信息计算的功能;所述上链数据分组模块400基于分组规则配置模块100配置的规则库,来对批量要上链的业务交易数据进行分组;所述分组多链批量上链模块500提供统一标准的上链SDK/API接口,引入多线程技术。
其中,分组规则配置模块100提供界面化的分组规则配置功能,针对业务交易日期时间段,来配置相应的业务数据分组特征字段定义及分组算法规则集;目标链查询智能合约生成模块200提供一键生效配置规则的功能,并根据规则库生成专用的目标链查询智能合约代码;目标链计算模块300提供根据业务数据特征字段来进行目标链信息计算的功能,实现对通过目标链查询智能合约生成模块200生成并发布在主区块链上专用的目标链查询智能合约的调用,从而获得业务数据目标存储区块链的地址及账户信息;上链数据分组模块400基于分组规则配置模块100配置的规则库,来对批量要上链的业务交易数据进行分组;分组多链批量上链模块500提供统一标准的上链SDK/API接口,引入多线程技术,对经过上链数据分组模块400分组的业务交易数据的每一分组创建一个独立的子线程,在子线程中调用目标链计算模块300获得目标链信息,并通过对目标链上上链智能合约的调用实现业务数据的最终分链并行上链。
基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为了提供示例性实施方案的简练描述,可以不描述实际实施方案的所有特征(即,与当前考虑的执行本发明的最佳模式不相关的那些特征,或于实现本发明不相关的那些特征)。
应理解的是,在任何实际实施方式的开发过程中,如在任何工程或设计项目中,可做出大量的具体实施方式决定。这样的开发努力可能是复杂的且耗时的,但对于那些得益于此公开内容的普通技术人员来说,不需要过多实验,所述开发努力将是一个设计、制造和生产的常规工作。
应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (7)
1.一种海量数据区块链应用的处理方法,其特征在于,包括以下步骤:
S1、部署新扩展区块链,发布上链智能合约,将扩展链地址及账户信息维护至数据库中;
S2、对分组规则配置的业务交易数据,可选择业务交易时间段,并填写业务数据分组特征字段及分组算法,创建规则集;
S3、分组规则配置的可视化界面上提供“生效规则”按钮,采用模板引擎技术,根据配置的规则库一键生成目标链查询智能合约代码;
S4、在主区块链上发布根据规则库生成的专用目标链查询智能合约;
S5、对计算目标链的业务数据,调用集成对主链上发布的专用目标链查询智能合约,并包装查询结果,返回区块链地址、上链合约、账户信息;
S6、按业务数据的交易日期规则集中分组特征字段定义,分组批量数据,实现上链数据分组;
S7、采用多线程技术并行处理已分组的批量业务数据,实现分组多链批量上链;
S8、针对每个分组,启用独立子线程,调用计算目标链,获取区块链地址、账户信息,并调用目标链的上链智能合约完成数据上链。
2.根据权利要求1所述的海量数据区块链应用的处理方法,其特征在于:所述S1-S8处理方法步骤还包括:(1)分组规则配置的业务交易数据;(2)计算目标链的业务数据;(3)分组上链数据;(4)分组多链批量上链。
3.根据权利要求2所述的海量数据区块链应用的处理方法,其特征在于:所述分组规则配置的业务交易数据,包括:(1)实现一个界面化的规则配置窗口;(2)实现按条件多维度查询规则集列表的能力,提供规则集编号、对应的业务交易日期时间段、生效状态字段列表展示,以及点击显示明细的分组特征字段定义信息;(3)新建规则集时,需先选择适配的业务交易日期的起始日期和截止日期;(4)修改规则集,与新建保持相同的约束要求,后台逻辑处理为先删除再新增;(5)删除规则集,只支持逻辑删除,即对相应规则集在数据库中置删除标志位即可。
4.根据权利要求2所述的海量数据区块链应用的处理方法,其特征在于:所述计算目标链的业务数据,包括:(1)在规则库中提供一键生效规则的能力,点击全局的“生效规则”按钮,确认后更新所有的规则集状态;(2)根据解析待上链的业务数据,计算业务交易日期对应的规则集,提取规则集配置中的业务数据中一到多个分组特征字段,匹配出目标数据存储区块链信息;(3)开发公共的标准SDK或API接口,对调用主链上专用的目标链查询智能合约,包装查询结果,将相应的区块链地址、上链合约、账户信息一并返回给调用方。
5.根据权利要求2所述的海量数据区块链应用的处理方法,其特征在于:所述分组上链数据,包括:(1)采用编程语言,供外部调用开发公共的标准SDK或API接口;(2)在接口内部,对批量要上链的业务数据进行解析;先根据业务数据的交易日期进行第一次分组,匹配对应的分组特征字段定义规则集,再将第一次分组后的数据,根据分组规则集中的分组特征字段定义完成第二次分组;(3)将分组后的新集合返回给调用方。
6.根据权利要求2所述的海量数据区块链应用的处理方法,其特征在于:所述分组多链批量上链,包括:(1)采用编程语言,开发公共的标准SDK或API接口,入参为分组后的待上链业务数据集合;出参为数据上链后的Hash地址集合;(2)循环分组数据集合,对每个分组采用多线程技术并行运算处理;(3)并在多线程中,继续调用匹配对应的目标区块链及上链智能合约,实现业务数据的批量并行上链。
7.一种处理装置,其特征在于:包括权利要求1-6任一所述的海量数据区块链应用的处理方法,以及,包括分组规则配置模块(100)、目标链查询智能合约生成模块(200)、目标链计算模块(300)、上链数据分组模块(400)、分组多链批量上链模块(500),所述分组规则配置模块(100)提供界面化的分组规则配置功能,所述目标链查询智能合约生成模块(200)提供一键生效配置规则的功能,并根据规则库生成专用的目标链查询智能合约代码;所述目标链计算模块(300)提供根据业务数据特征字段来进行目标链信息计算的功能;所述上链数据分组模块(400)基于所述分组规则配置模块(100)配置的规则库,来对批量要上链的业务交易数据进行分组;所述分组多链批量上链模块(500)提供统一标准的上链SDK/API接口,引入多线程技术。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310870360.6A CN116595024B (zh) | 2023-07-17 | 2023-07-17 | 一种海量数据区块链应用的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310870360.6A CN116595024B (zh) | 2023-07-17 | 2023-07-17 | 一种海量数据区块链应用的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116595024A true CN116595024A (zh) | 2023-08-15 |
CN116595024B CN116595024B (zh) | 2023-09-26 |
Family
ID=87604802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310870360.6A Active CN116595024B (zh) | 2023-07-17 | 2023-07-17 | 一种海量数据区块链应用的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116595024B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108540536A (zh) * | 2018-03-16 | 2018-09-14 | 深圳前海微众银行股份有限公司 | 基于区块链的网络海量业务处理方法、设备及存储介质 |
WO2021232804A1 (zh) * | 2020-05-18 | 2021-11-25 | 杭州趣链科技有限公司 | 一种区块链数据索引的方法和区块链数据的存储方法 |
CN113766034A (zh) * | 2021-09-15 | 2021-12-07 | 城云科技(中国)有限公司 | 基于区块链的业务处理方法和装置 |
-
2023
- 2023-07-17 CN CN202310870360.6A patent/CN116595024B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108540536A (zh) * | 2018-03-16 | 2018-09-14 | 深圳前海微众银行股份有限公司 | 基于区块链的网络海量业务处理方法、设备及存储介质 |
WO2021232804A1 (zh) * | 2020-05-18 | 2021-11-25 | 杭州趣链科技有限公司 | 一种区块链数据索引的方法和区块链数据的存储方法 |
CN113766034A (zh) * | 2021-09-15 | 2021-12-07 | 城云科技(中国)有限公司 | 基于区块链的业务处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116595024B (zh) | 2023-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11356282B2 (en) | Sending cross-chain authenticatable messages | |
CN104699718B (zh) | 用于快速引入业务数据的方法和装置 | |
CN110189121B (zh) | 数据处理方法、装置、区块链客户端和区块链节点 | |
CN108418851B (zh) | 策略发布系统、方法、装置及设备 | |
CN106033439A (zh) | 一种分布式事务处理方法及系统 | |
CN111201754A (zh) | 用于提供区块链的环节的密码学保护的和经过滤的以及经排序的交易数据集的集合的设备 | |
CN111859470B (zh) | 一种业务数据上链方法及装置 | |
CN110008665B (zh) | 一种区块链的权限控制方法及装置 | |
CN110555079B (zh) | 数据处理方法、装置、设备以及存储介质 | |
CN111953648A (zh) | 基于区块链预言机的数据处理方法、装置及电子设备 | |
CN109885612B (zh) | 区块链智能合约的同步生效方法及装置 | |
CN112579319A (zh) | 一种基于LRU Cache优化的服务调用方法及装置 | |
CN112860953A (zh) | 图数据库的数据导入方法、装置、设备及存储介质 | |
CN116595024B (zh) | 一种海量数据区块链应用的处理方法及装置 | |
CN109410063A (zh) | 基于区块链的交易处理方法、装置和存储介质 | |
CN109309858B (zh) | 一种互斥图标的显示方法、装置、设备及介质 | |
CN110109912A (zh) | 一种标识符生成方法和装置 | |
CN116700929A (zh) | 基于人工智能的任务批量处理方法及系统 | |
CN114978686A (zh) | 数字资产上链方法及装置 | |
US20150120607A1 (en) | System and method for customer event email consolidation and delivery | |
CN114119224A (zh) | 基于账户链和守护链的dag结构下的智能合约非增量排序执行方法、系统、设备及存储介质 | |
CN109407922B (zh) | 一种图标显示的控制方法、装置、设备及介质 | |
CN113111111A (zh) | 多数据源数据库接入方法 | |
CN107544854B (zh) | 一种跨进程数据的同步存取方法及系统 | |
US20140108420A1 (en) | Index creation method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |