CN111767344A - 提高数据处理能力的新型联盟链 - Google Patents
提高数据处理能力的新型联盟链 Download PDFInfo
- Publication number
- CN111767344A CN111767344A CN202010583079.0A CN202010583079A CN111767344A CN 111767344 A CN111767344 A CN 111767344A CN 202010583079 A CN202010583079 A CN 202010583079A CN 111767344 A CN111767344 A CN 111767344A
- Authority
- CN
- China
- Prior art keywords
- task
- module
- data processing
- chain
- novel
- 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.)
- Withdrawn
Links
Images
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/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- 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/25—Integrating or interfacing systems involving database management systems
-
- 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
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种提高数据处理能力的新型联盟链,属于分布式系统技术领域。它解决了现有技术对于位于链上的原来越多的账本数据进行查询、计算、统计、分析等任务时越来越难于应付的问题。本提高数据处理能力的新型联盟链,包括运行在底层的区块链平台的各共识节点,每共识节点上设有包括下述的模块:任务接收模块,该模块用于接收至少一个计算任务数据包;任务分发模块,该模块用于将计算任务数据包分发给其它的共识节点;任务执行模块,该模块用于执行被任务分发模块分发到的计算任务数据包等。本提高数据处理能力的新型联盟链的优点在于:解决当前系统瓶颈,面对大数据时可以快速进行查询、统计、计算、分析任务,挖掘数据价值。
Description
技术领域
本发明属于分布式系统技术领域,尤其是涉及一种提高数据处理能力的新型联盟链。
背景技术
区块链技术,区块链是一种新型去中心化分布式账本技术,能安全地存储交易或其他数据,特点是存储在区块链上的信息不可伪造和篡改,区块链共识算法驱动区块链上的每个节点都参与到交易的验证过程中,保证区块链上交易都是经过确认可信的,区块链上每个节点都维护一个公共的账本,任何一个节点对自己所维护的账本的修改都将不被其他节点所承认,从而保证公共账本不可被伪造和篡改。
另外,按开放程度,可将区块链划分为公有链、联盟链、私有链,具体地,这里的公有链系统最为开放,任何人都可以参与区块链数据的维护和读取,容易部署应用程序,完全去中心化不受任何机构控制;这里的联盟链是需要注册许可才能访问的区块链,从使用对象来看,联盟链仅限于联盟成员参与,联盟链往往采取指定节点计算的方式,且记账节点数量相对较少;这里的私有链最为封闭,仅限于企业、国家机构或者单独个体内部使用,正是由于联盟链的开放程度介于公有链和私有链之间,其既具有分布式账本的功能同时安全性又相对于公有链要高,因此备受更多地用户的欢迎。
现有的联盟链对于账本数据的存储是采用key、value型数据库,随着数据量的越来越大,当数据达到TB、PB级甚至更高时,无法对庞大的账本数据进行查询、计算、统计、分析等任务。
发明内容
本发明的目的是提供一种解决上述问题的提高数据处理能力的新型联盟链。
为达到上述目的,本发明采用了下列技术方案:本发明的提高数据处理能力的新型联盟链,包括运行在底层的区块链平台的各共识节点,其特征在于,每共识节点上设有包括下述的模块:
任务接收模块,该模块用于接收至少一个计算任务数据包;
任务分发模块,该模块用于将计算任务数据包分发给其它的共识节点;
任务执行模块,该模块用于执行被任务分发模块分发到的计算任务数据包。
在上述的提高数据处理能力的新型联盟链中,每共识节点上还设有任务结果收集模块,该模块由负责调用任务分发模块的共识节点调用,用于收集其它执行了任务执行模块的共识节点的任务结果。
在上述的提高数据处理能力的新型联盟链中,每共识节点上还设有任务结果汇总模块,该模块由负责调用任务分发模块的共识节点调用,用于将收集到的任务结果进行汇总运算。
在上述的提高数据处理能力的新型联盟链中,每共识节点上还设有任务分解模块,该模块负责将接收到的计算任务数据包分解成一个或多个可被任务执行模块执行的单条计算任务,该模块由任务分发模块调用。
在上述的提高数据处理能力的新型联盟链中,负责调用任务分发模块的共识节点本身也须接受来自任务分发模块的计算任务。
在上述的提高数据处理能力的新型联盟链中,当计算任务数据包分解的单条计算任务的数量大于本链上的共识节点的数量,则任务分发模块在分发任务时需保证每个共识节点被分发到单条计算任务的数量至少为计算任务数据包分解的单条计算任务的数量除以本链上的共识节点的数量后得到的商值。
在上述的提高数据处理能力的新型联盟链中,每所述的共识节点上存储的区块数据位于KV数据库或基于Hadoop的Hive数据库上。
在上述的提高数据处理能力的新型联盟链中,每共识节点上还设有基于Hadoop的Hive数据库的共识节点上还设有能在数据尚未写入硬盘时即在存储器内分析运算的Spark运算模块。
与现有技术相比,本提高数据处理能力的新型联盟链的优点在于:
1、不同于现有的联盟链上数据处理只有单个节点独自完成,本方案中对于用户发出的数据处理请求通过任务分发模块将数据处理任务发送给多个节点,让多个节点同时处理用户发出的数据处理请求,不仅大大分担了原有的负责单独处理数据的节点的计算资源、存储资源,同时提高了链上的共识节点的总的工作效率;
2、任务分解模块的设置,有利于将用户发出的数据处理请求进行多个拆分后再通过任务分发模发送至链上的其它的尤其与其相邻的共识节点,不仅减轻了被派发任务的共识节点的计算资源、存储资源,同时也有利于链上的更多的共识节点参与到该数据处理中,已进一步提高数据处理速度;
3、在基于现有的链上的共识节点只设置KV数据库上,通过增加新的设置有基于Hadoop的Hive数据库的共识节点,由于Hadoop的Hive数据库具有存储关系表的功能,有利于数据执行数据查询、统计、计算、分析等处理任务,以进一步提高本链的数据处理功能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1提供了本发明实施例的系统架构示意图。
具体实施方式
下面结合附图并通过实施例对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1、交易(Transaction),等同于计算机术语“事物”,包括三种不同的交易类型:部署(Deploy),调用(Invoke)和查询(Query)。部署交易用于向区块链网络的节点安装指定的链码,调用和查询类型的交易用于调用部署号的链码,以实现对账本中的目标账户的相关数据的操作,包括增、删、查、改的操作修改账户中的键值(Key-Value)对形式的数据,或者在账本中增加新的账户,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本发明实施例遵循了这一习惯。
2、区块(Block),记录一段时间内交易所更新的账本数据的数据结构,被标记上时间戳和之前一个区块的独特标记(例如数字指纹),区块经过区块链网络中节点的共识验证后,会被追加到区块链的末尾成为新区块。
3、区块链(Blockchain),区块以顺序相连的方式组合成的一种链式数据结构,在每个区块中引用前一个区块或者其子集的哈希值,从而以密码学的方式保证所记录交易的不可篡改和不可伪造。
4、区块链网络,通过共识的方式将新区块纳入区块链的一系列的、无中心的节点的集合。
5、账本(Ledger),区块链网络中以账户为维度所记录的数据的总和,包括账本数据、账本状态、账本状态证明和区块索引等元素。
6、账本数据,实际区块数据存储,即区块链中记录的一系列有序的、不可篡改的交易的记录,可以表现为文件系统的文件的形式,交易中调用的智能合约被执行时,实现对账户/账户中数据的更新。
7、共识(Consensus),是区块链网络中的一个过程,用于在涉及的多个节点之间对交易结果达成一致,实现共识的机制包括工作量证明(PoW)、权益证明(PoS,Proof ofStake)、股份授权证明(DPoS,Delegated Proof-of-Stake)、消逝时间量证明(PoET,Proofof Elapsed Time)等。
8、智能合约(Smart Contracts),建成合约,也称为链码(Chaincode),部署在区块链网络中的根据条件而触发执行的程序,链码运行在一个安全的容器中,来初始化和管理账本数据和账本状态。
下面结合附图并通过实施例对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
实施例1
如图1所示,本提高数据处理能力的新型联盟链,包括运行在底层的区块链平台的各共识节点,每共识节点上设有包括下述的模块,任务接收模块、任务分发模块、任务执行模块。
各模块的具体介绍如下。
任务接收模块,该模块用于接收至少一个计算任务数据包。
这里的任务分发模块位于一个最先接收到数据处理请求的共识节点上。
需要说明的是计算任务数据包括至少一条数据处理请求,如查询请求、统计请求、分析请求,或者是上述请求的任意两个及以上的组合。
任务分发模块,该模块用于将计算任务数据包分发给其它的共识节点。
当计算任务数据包不止一个时,可以通过本任务分发模块将所接收的所有计算任务数据包分发给其它共识节点,比如可以只将一个计算任务数据包分发给一个共识节点,当然若该共识节点的计算资源和存储资源充足,可根据其处理能力分发给其更多的计算任务数据包,以达到能者多干的目的。
需要说明的是,这里的任务分发模块与任务接收模块处于同一个共识节点上。
任务执行模块,该模块用于执行被任务分发模块分发到的单个计算任务数据包。
需要说明的是,这里的任务执行模块位于链上的每个共识节点上,这样能让任务分发模块具有发给链上每个共识节点成为可能。
当然上述的任务接收模块、任务分发模块和任务执行模块安装在链上的每一个共识节点上,因为每一个共识节点都有可能是最先接收到用户的数据处理请求的节点。
作为优选,负责调用任务分发模块的共识节点本身也须接受来自任务分发模块的计算任务。
实施例2
本实施例与实施例1共同的不同之处在于:每共识节点上还设有任务结果收集模块,该模块由负责调用任务分发模块的共识节点调用,用于收集其它执行了任务执行模块的共识节点的任务结果。
在实施例1中,任务执行模块执行完任务数据包后将任务结果独自发送给请求方,这可能使请求方收到多个任务结果数据,其为此可能还需要将任务结果再次处理,本实施例中通过任务结果收集模块向完成了任务执行模块的共识节点收集相关的任务结果数据,通常调用这个任务结果收集模块的共识节点也就是执行任务分发模块的共识节点,然后由该执行任务结果收集模块的节点向请求用户发送收集在一起的任务结果数。
另外地,每共识节点上还设有任务结果汇总模块,该模块由负责调用任务分发模块的共识节点调用,用于将收集到的任务结果进行汇总运算。
对于对任务结果数据有汇总需求的,可以调用任务结果汇总模块,即在调用任务结果收集模块后进行对收集的任务结果进行一次汇总,然后再发于请求用户。
实施例3
本实施例与实施例1共同的不同之处在于:每共识节点上还设有任务分解模块,该模块负责将接收到的计算任务数据包分解成一个或多个可被任务执行模块执行的单条计算任务,该模块由任务分发模块调用。
通过将计算任务数据包分解成一个或多个单条计算任务,可以为调用任务执行模块的共识节点节约计算资源、存储资源。
当计算任务数据包分解的单条计算任务的数量大于本链上的共识节点的数量,则任务分发模块在分发任务时需保证每个共识节点被分发到单条计算任务的数量至少为计算任务数据包分解的单条计算任务的数量除以本链上的共识节点的数量后得到的商值。
为了提高链上的共识节点的利用率、以及各节点的计算负荷的均匀性,尽量使链上的每个共识节点都能又计算任务被分派。
实施例4
本实施例与实施例1共同的不同之处在于:每所述的共识节点上存储的区块数据位于KV数据库或基于Hadoop的Hive数据库上。
需要说明的是,这里的KV数据库是指其以一个Key对于一个Value的形式来存储区块数据中的交易记录,而这里的Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。还可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL去查询分析需要的内容,这套SQL简称HQL。使用hive的优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析,Hive将元数据存储在数据库(RDBMS)中,比如MySQL、Derby中,Hive有三种模式连接到数据,其方式是为单用户模式。
另外地,每共识节点上还设有基于Hadoop的Hive数据库的共识节点上还设有能在数据尚未写入硬盘时即在存储器内分析运算的Spark运算模块。
这里的Spark运算模块即Apache Spark,是一个开源集群运算框架,相对于Hadoop的MapReduce会在运行完工作后将中介数据存放到磁盘中,Spark使用了存储器内运算技术,能在数据尚未写入硬盘时即在存储器内分析运算。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (8)
1.一种提高数据处理能力的新型联盟链,包括运行在底层的区块链平台的各共识节点,其特征在于,每共识节点上设有包括下述的模块:
任务接收模块,该模块用于接收至少一个计算任务数据包;
任务分发模块,该模块用于将计算任务数据包分发给其它的共识节点;
任务执行模块,该模块用于执行被任务分发模块分发到的计算任务数据包。
2.根据权利要求1所述的提高数据处理能力的新型联盟链,其特征在于,每共识节点上还设有任务结果收集模块,该模块由负责调用任务分发模块的共识节点调用,用于收集其它执行了任务执行模块的共识节点的任务结果。
3.根据权利要求2所述的提高数据处理能力的新型联盟链,其特征在于,每共识节点上还设有任务结果汇总模块,该模块由负责调用任务分发模块的共识节点调用,用于将收集到的任务结果进行汇总运算。
4.根据权利要求1所述的提高数据处理能力的新型联盟链,其特征在于,每共识节点上还设有任务分解模块,该模块负责将接收到的计算任务数据包分解成一个或多个可被任务执行模块执行的单条计算任务,该模块由任务分发模块调用。
5.根据权利要求4所述的提高数据处理能力的新型联盟链,其特征在于,负责调用任务分发模块的共识节点本身也须接受来自任务分发模块的计算任务。
6.根据权利要求5所述的提高数据处理能力的新型联盟链,其特征在于,当计算任务数据包分解的单条计算任务的数量大于本链上的共识节点的数量,则任务分发模块在分发任务时需保证每个共识节点被分发到单条计算任务的数量至少为计算任务数据包分解的单条计算任务的数量除以本链上的共识节点的数量后得到的商值。
7.根据权利要求1所述的提高数据处理能力的新型联盟链,其特征在于,每所述的共识节点上存储的区块数据位于KV数据库或基于Hadoop的Hive数据库上。
8.根据权利要求7所述的提高数据处理能力的新型联盟链,其特征在于,每共识节点上还设有基于Hadoop的Hive数据库的共识节点上还设有能在区块数据尚未写入硬盘时即在存储器内分析运算的Spark运算模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010583079.0A CN111767344A (zh) | 2020-06-23 | 2020-06-23 | 提高数据处理能力的新型联盟链 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010583079.0A CN111767344A (zh) | 2020-06-23 | 2020-06-23 | 提高数据处理能力的新型联盟链 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767344A true CN111767344A (zh) | 2020-10-13 |
Family
ID=72722816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010583079.0A Withdrawn CN111767344A (zh) | 2020-06-23 | 2020-06-23 | 提高数据处理能力的新型联盟链 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767344A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115456619A (zh) * | 2022-09-27 | 2022-12-09 | 山东鲁商通科技有限公司 | 一种基于区块链技术的虚拟预付卡发行系统和方法 |
-
2020
- 2020-06-23 CN CN202010583079.0A patent/CN111767344A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115456619A (zh) * | 2022-09-27 | 2022-12-09 | 山东鲁商通科技有限公司 | 一种基于区块链技术的虚拟预付卡发行系统和方法 |
CN115456619B (zh) * | 2022-09-27 | 2024-02-20 | 山东鲁商通科技有限公司 | 一种基于区块链技术的虚拟预付卡发行系统和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220188332A1 (en) | Distributed transaction database log with immediate reads and batched writes | |
Bakshi | Considerations for big data: Architecture and approach | |
CN106777351B (zh) | 基于art树分布式系统图存储计算系统及其方法 | |
CN111770149B (zh) | 基于分布式存储的新型联盟链系统 | |
Xia et al. | Big traffic data processing framework for intelligent monitoring and recording systems | |
CN104363222A (zh) | 一种基于Hadoop的网络安全事件分析方法 | |
Orakzai et al. | Distributed mining of convoys in large scale datasets | |
CN111767344A (zh) | 提高数据处理能力的新型联盟链 | |
Seera et al. | Perspective of database services for managing large-scale data on the cloud: a comparative study | |
CN111915295A (zh) | 提升交易执行速度的联盟链 | |
Wang et al. | A distributed data storage strategy based on lops | |
Carstoiu et al. | High performance eventually consistent distributed database Zatara | |
CN111767251A (zh) | 利于大文件存储的联盟链 | |
Balicki et al. | Big data processing by volunteer computing supported by intelligent agents | |
CN109635042B (zh) | Oltp与olap一体化的汽车金融大数据系统 | |
CN111478932B (zh) | 智能合约数据的处理方法、区块链网络及存储介质 | |
CN113177089A (zh) | 一种分布式数据存储引擎调度方法 | |
Castillo-García et al. | Design of a Dynamic Horizontal Fragmentation Method for Multimedia Databases | |
Begum et al. | A SURVEY ON CLOUD DBMS ENABLED DATA TRANSACTIONS AND DATA STORAGE | |
Zhong et al. | Big data workloads drawn from real-time analytics scenarios across three deployed solutions | |
Mayuri et al. | A Study on Use of Big Data in Cloud Computing Environment | |
Gupta et al. | Role of Big Data in e-Healthcare Application for Managing a Large Amount of Data | |
Zhang et al. | Hierarchical Storage for Massive Social Network Data Based on Improved Decision Tree | |
Nalini et al. | SecQSON: Secure Query Scheduling and Ontology-Based Searching in Map-Evaluate-Reduce-Enabled Grid Environment | |
Somasekhar | CLOUD COMPUTING WITH BIG DATA AS A SERVICE |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201013 |
|
WW01 | Invention patent application withdrawn after publication |