CN116258609A - 一种电力***交易协同方法、装置及存储介质 - Google Patents
一种电力***交易协同方法、装置及存储介质 Download PDFInfo
- Publication number
- CN116258609A CN116258609A CN202310542553.9A CN202310542553A CN116258609A CN 116258609 A CN116258609 A CN 116258609A CN 202310542553 A CN202310542553 A CN 202310542553A CN 116258609 A CN116258609 A CN 116258609A
- Authority
- CN
- China
- Prior art keywords
- node
- transaction
- blockchain
- power market
- cross
- 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
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000007246 mechanism Effects 0.000 claims abstract description 34
- 238000005192 partition Methods 0.000 claims abstract description 33
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 28
- 239000012634 fragment Substances 0.000 claims description 74
- 239000003795 chemical substances by application Substances 0.000 claims description 62
- 238000012790 confirmation Methods 0.000 claims description 52
- 238000004891 communication Methods 0.000 claims description 22
- 238000013507 mapping Methods 0.000 claims description 11
- 238000012856 packing Methods 0.000 claims description 7
- 238000012216 screening Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 7
- 230000003993 interaction Effects 0.000 description 6
- 239000004973 liquid crystal related substance Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004146 energy storage Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Finance (AREA)
- Health & Medical Sciences (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- General Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- Water Supply & Treatment (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Public Health (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种电力***交易协同方法、装置及存储介质,涉及区块链技术领域,该方法包括:通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点;通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易。从而降低了区块链响应电力***的时延。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种电力***交易协同方法、装置及存储介质。
背景技术
随着新型电力***不断发展,源网荷储全环节多主体互动正成为提高电网运行效率和可靠性的重要手段。然而,源网荷储多主体间存在协同效率低的问题。区块链作为一种开放、共享、协同的技术,可以改善多主体协同效率低下的问题。但是随着各类新设备以及多元负荷大规模接入,区块链的吞吐量难以满足大量设备的实时数据快速上链需求。
现有技术提出了一种基于边缘计算和区块链协同的源网荷储物联网架构,该架构将源网荷储基础架构结合边缘计算和区块链技术,利用调度端高性能计算能力和边缘节点辅助计算能力,提高了源网荷储应用过程的安全性。然而,该方案还没有考虑到源网荷储大规模接入给区块链和边缘节点带来的压力,在源网荷储大规模接入场景下,在进行电力交易时,区块链响应电力***的时延难以保证。
发明内容
有鉴于此,本申请的主要目的在于提供一种电力***交易协同方法、装置及存储介质,实现降低区块链响应电力***的时延。
本申请第一方面提供了一种电力***交易协同方法,该方法包括:
通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点;
通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易。
在本申请第一方面的一些实现方式中,通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,包括:
将第一节点映射到第一节点所属的通信范围内的第三节点所对应的散列表中,以得到多个节点散列表;
从多个节点散列表中筛选出满足如下条件的节点散列表作为最佳节点散列表:节点散列表的长度等于目标聚类大小,并且节点散列表中的节点所构成的区块链分片的计算能力和存储能力满足电力业务需求;
确定最佳节点散列表中的节点构成第一节点所属的第一区块链分片。
在本申请第一方面的一些实现方式中,将第一节点映射到第一节点所属的通信范围内的第三节点对应的散列表中,包括:
将第一节点添加至满足如下条件的第三节点对应的节点散列表中:第一节点与第三节点的欧式距离小于节点间的通信范围,或,第一节点与第三节点间存在直接物理连接。
在本申请第一方面的一些实现方式中,节点散列表包括至少一个第三节点,该方法还包括:
在节点散列表的长度等于目标聚类大小的节点散列表中,将与第一节点之间的欧式距离为最大值的第三节点替换为未添加至节点散列表并且与第一节点之间的欧式距离低于最大值的第三节点,直至遍历完未添加至节点散列表中所有第三节点。
在本申请第一方面的一些实现方式中,通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易,包括:
通过跨分片代理节点接收源电力市场主体发送的交易请求,并根据交易请求生成第一交易事务;
通过跨分片代理节点将第一交易事务发送至第一节点进行确认,以使得第一节点在对第一交易事务进行确认后向跨分片代理节点以及源电力市场主体发送第一交易确认消息;
通过跨分片代理节点接收第一交易确认消息,并根据交易请求生成第二交易事务,将第二交易事务发送至第二节点进行确认,以便第二节点在对第二交易事务进行确认后向跨分片代理节点发送第二交易确认消息;
通过跨分片代理节点接收源电力市场主体在接收第一交易确认消息后发送的交易请求对应的交易资金数值;
通过跨分片代理节点在接收第二交易事务确认消息后,将交易资金数值发送至目标电力市场主体。
在本申请第一方面的一些实现方式中,第一交易事务包括:交易金额锁定时间,方法还包括:
当第一节点返回第一交易确认消息时,获取第一区块链分片当前的区块链高度,为第一区块链高度;
当第一节点发送交易资金数值时,获取第一区块链分片当前的区块链高度,为第二区块链高度;
当第二区块链高度大于或等于第一区块链高度,并且第二区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,通过第一节点向跨分片代理节点发送金额锁定请求,以请求跨分片代理节点将交易资金数值锁定。
在本申请第一方面的一些实现方式中,第二交易事务包括:交易金额锁定时间,方法还包括:
将第一交易事务添加至第一区块链分片的交易池中;
当第二节点返回第二交易确认消息时,获取第一区块链分片当前的区块链高度,为第三区块链高度,并在第三区块链高度大于或等于第一区块链高度,并且第三区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,将交易池中的第一交易事务打包到电力***区块链。
在本申请第一方面的一些实现方式中,区块链分片采用有向无环图DAG结构。
本申请第二方面提供了一种电力***交易协同装置,该装置包括:
区块链分片单元,用于通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点;
跨分片交易单元,用于通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易。
在本申请第二方面的一些实现方式中,区块链分片单元具体用以执行以下操作:
通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,包括:
将第一节点映射到第一节点所属的通信范围内的第三节点所对应的散列表中,以得到多个节点散列表;
从多个节点散列表中筛选出满足如下条件的节点散列表作为最佳节点散列表:节点散列表的长度等于目标聚类大小,并且节点散列表中的节点所构成的区块链分片的计算能力和存储能力满足电力业务需求;
确定最佳节点散列表中的节点构成第一节点所属的第一区块链分片。
在本申请第二方面的一些实现方式中,将第一节点映射到第一节点所属的通信范围内的第三节点对应的散列表中,包括:
将第一节点添加至满足如下条件的第三节点对应的节点散列表中:第一节点与第三节点的欧式距离小于节点间的通信范围,或,第一节点与第三节点间存在直接物理连接。
在本申请第二方面的一些实现方式中,节点散列表包括至少一个的第三节点,该装置还包括:
节点替换单元,用于在节点散列表的长度等于目标聚类大小的节点散列表中,将与第一节点之间的欧式距离为最大值的第三节点替换为未添加至节点散列表并且与第一节点之间的欧式距离低于最大值的第三节点,直至遍历完未添加至节点散列表中所有第三节点。
在本申请第二方面的一些实现方式中,跨分片交易单元具体用于执行以下操作:
通过跨分片代理节点接收源电力市场主体发送的交易请求,并根据交易请求生成第一交易事务;
通过跨分片代理节点将第一交易事务发送至第一节点进行确认,以使得第一节点在对第一交易事务进行确认后向跨分片代理节点以及源电力市场主体发送第一交易确认消息;
通过跨分片代理节点接收第一交易确认消息,并根据交易请求生成第二交易事务,将第二交易事务发送至第二节点进行确认,以便第二节点在对第二交易事务进行确认后向跨分片代理节点发送第二交易确认消息;
通过跨分片代理节点接收源电力市场主体在接收第一交易确认消息后发送的交易请求对应的交易资金数值;
通过跨分片代理节点在接收第二交易事务确认消息后,将交易资金数值发送至目标电力市场主体。
在本申请第二方面的一些实现方式中,第一交易事务包括:交易金额锁定时间,该装置还包括:区块链高度获取单元,该区块链高度获取单元用于执行以下操作:
当第一节点返回第一交易确认消息时,获取第一区块链分片当前的区块链高度,为第一区块链高度;
当第一节点发送交易资金数值时,获取第一区块链分片当前的区块链高度,为第二区块链高度;
当第二区块链高度大于或等于第一区块链高度,并且第二区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,通过第一节点向跨分片代理节点发送金额锁定请求,以请求跨分片代理节点将交易资金数值锁定。
在本申请第二方面的一些实现方式中,第二交易事务包括:交易金额锁定时间,区块链高度获取单元还用于执行以下操作:
将第一交易事务添加至第一区块链分片的交易池中;
当第二节点返回第二交易确认消息时,获取第一区块链分片当前的区块链高度,为第三区块链高度,并在第三区块链高度大于或等于第一区块链高度,并且第三区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,将交易池中的第一交易事务打包到电力***区块链。
在本申请第二方面的一些实现方式中,区块链分片采用有向无环图DAG结构。
本申请第三方面提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,该计算机程序用于执行如本申请第一方面所提供的方法。
相对于现有技术,本申请所提供的技术方案具有如下有益效果:
通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点;通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易。通过为电力市场主体边缘侧的节点进行分片以得到多个区块链分片,并通过跨分片交易机制建立不同区块链分片中的电力市场主体的电力交易,从而降低了区块链响应电力***的时延。
附图说明
图1为本申请实施例提供的一种电力***交易协同方法的流程示意图;
图2为本申请实施例提供的又一种电力***交易协同方法的流程示意图;
图3为本申请实施例提供的又一种电力***交易协同方法的流程示意图;
图4为本申请实施例提供的又一种电力***交易协同方法的流程示意图;
图5为本申请实施例提供的又一种电力***交易协同方法的流程示意图;
图6为本申请实施例提供的一种电力***交易协同架构的示意图;
图7为本申请实施例提供的一种基于DAG的交易架构的示意图;
图8为本申请实施例提供的一种电力***交易协同装置的示意图;
图9为本申请实施例提供的一种跨分片交易机制的简化流程示意图;
图10为本申请实施例提供的一种吞吐量与接入电力市场主体数关系的曲线图;
图11为本申请实施例提供的一种吞吐量随跨分片域业务占比变化的曲线图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等,如果存在是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在现有技术提出的一种基于边缘计算和区块链协同的源网荷储物联网架构中,在该架构中,由临近物联网终端侧的边缘计算节点以及电力***中的调度端的高性能计算能力来分担处理电力***中的任务,并且进一步引入了区块链,利用“边缘计算 + 区块链”的源网荷储关键技术,搭建了基于该技术的源网荷储架构。然而,其采用的是传统的区块链,由于传统区块链作为一种高冗余的分布式账本技术,接入区块链的数据将在每一个区块链节点存储,且传统区块链网络中所有节点需要通过共识机制共同验证事务,在大规模电力业务接入的场景下,区块链响应电力***的时延难以保证。
有鉴于此,请参阅图1所示,本申请实施例提供了一种电力***交易协同方法,具体包括以下步骤:
S101:通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片。
其中,多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点。
电力***区块链是指的运用了区块链技术的以采用“电源、电网、负荷、储能”为整体规划的新型电力运行模式的***区块链,电力市场主体指的是电力***中的各参与主体,可以包括电力供应企业、电力交易企业、储能企业、电力用户等;电力市场主体的边缘侧的节点可以指的是与电力市场主体之间相连的节点;区块链分片指的是由若干个节点组成的较小的区块链网络,具体地,源电力市场主体指的是在电力交易中作为交易请求方的电力市场主体,目标电力市场主体指的是在电力交易中作为交易被请求方的电力市场主体,第一节点可以指的在电力交易中作为交易请求方的电力市场主体所接入的节点,第二节点可以指在电力交易中作为交易被请求方的电力市场主体所接入的节点,第一区块链指的是第一节点所属的区块链分片,第二区块链分片指的是第二节点所属的区块链分片。
在本申请的实施例中,聚类算法也可称为区块链节点聚类算法或区块链节点分片算法,用于对多个节点进行聚类,并根据聚类后的结果对节点进行分片,以得到多个区块链分片。以步骤S101整体进行举例,假设在一个大型的电力***中,电力市场主体的边缘侧包含有几百个节点,这些节点之间需要与区块链进行实时交互以确保电力***的正常运行。当大量电力市场主体接入时会伴随着大量的电力交易需要处理,因此可以采用分片技术来提高区块链性能。具体来说,通过使用区块链节点聚类算法对这些节点的集合进行聚类,将它们分成若干个子集,每个子集可以称为一个区块链。每个分片只包含部分节点,这些节点之间可以通过区块链进行电力交易,而不会影响到其他分片中的节点。在本申请该实施例的一些实现方式中,区块链分片采用有向无环图DAG结构。
S102:通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易。
电力交易又可称为电力交易关系,指的是个电力市场主体之间的电力交换,例如购电、输电、售电等;跨分片交易机制指的是一种用于不同区块链分片之间进行交易的机制,可以是不同区块链中的节点进行数据交换。
在本申请的实施例中,步骤S102的目的在于实现不同区块链的电力交易,以步骤整体进行举例,假设有一个大型的电力***,其中有多个电力市场主体,为了确保电力***的可靠性和安全性,我们将整个电力***分成了多个区块链分片,每个区块链分片包括多个节点以及多个接入节点的电力市场主体。由于不同区块链分片之间是相互独立的,所以它们之间存在一定的物理隔离。因此,不同区块链分片中的节点进行电力交易可能需要多个区块链分片或者多个节点的中转,甚至是无法直接与其他分片中的节点进行电力交易,为了解决这个问题,我们需要引入跨分片交易机制。通过这种机制,不同区块链分片中的节点可以直接与其他分片中的节点进行电力交易,例如,区块链分片A中的电力市场主体需要向区块链分片B中的电力市场主体购买一定数量的电力,在没有跨分片交易机制的情况下,这个交易可能会非常复杂,需要经过多个节点的中转才能完成。但是,如果我们引入了跨分片交易机制,区块链分片A中的节点可以直接与分片B中的节点进行电力交易,从而简化了交易流程,提高交易效率。
在图1所示的流程中,通过聚类算法对电力***区块链中电力市场主体的边缘侧的节点进行分片,以获到多个区块链分片;将节点分配到不同的区块链分片中,相较于不对节点进行分片的区块链具有更高的处理效率,从而降低区块链***的时延,并且对节点进行分片可以起到分散流量的作用,降低了在电力市场主体的大规模接入场景下发生数据拥堵的风险,从而进一步降低时延。通过跨分片代理机制建立源电力市场主体与目标电力市场主体的电力交易;通过引入跨分片代理机制来处理两个不同区块链分片中的节点所连接的电力市场主体进行电力交易,降低了区块链处理大量电力交易所带来的负担,进一步提升电力交易的处理效率从而降低了区块链时延。终上所述,本申请所提供的技术方案降低了区块链响应电力***中的电力交易的时延。
参见图2所示,图2为本申请实施例提供的又一种电力***交易协同方法的流程示意图,为面向源网荷储大规模接入的需求设计了区块链节点聚类算法,在图1所示的基础上,步骤S101具体包括以下步骤:
S201:将第一节点映射到第一节点所属的通信范围内的第三节点所对应的散列表中,以得到多个节点散列表;
其中,第三节点可以是所有边缘侧节点中除第一节点外的其他节点中的任意一个节点,即除第一节点之外的任意一个节点。散列表是一种用于实现关联数组或者映射等抽象数据类型的数据结构,它将每个元素与一个特定的索引相关联,以实现快速的原始查找或***,节点散列表可以指的是某个特定的第三节点所对应的散列表,在本申请的实施例中,某个特定的第三节点所对应的散列表中包括有第一节点、特定的第三节点以及添加至该特定的第三节点对应的散列表中的其他第三节点,可以理解的是,这些其他的第三节点指的是该特定的第三节点的通信范围内的第三节点,也就是说,节点散列表中的节点都属于该节点散列表所对应的特定第三节点的通信范围内。需要说明的是,节点散列表的键可以是节点的序列号,也可以是其他用于唯一标识节点的字符串。
在本申请实施的一些实现方式中,步骤S201更为具体的实施方式是:将第一节点添加至满足如下条件的第三节点对应的散列表中:第一节点与第三节点的欧式距离小于节点间的通信范围,或,第一节点与第三节点间存在直接物理连接。
其中,欧式距离指的是在欧几里得空间中两点之间的距离,在区块链网络中,可以通过计算节点坐标值来确认节点间的欧式距离;通信范围指的是节点可以与其他节点进行有效通信的最大距离范围;直接物理连接指的是节点间通过物理介质相连,该物理介质可以是电缆、光纤等。通过该步骤可以找出以下类型的节点:节点间具备可以直接传输数据的能力而无需通过第三个节点辅助,找出上述类型的节点是保障区块片分片整体的处理效率的基础。
在本申请的一些具体实现方式中,节点散列表包括至少一个的第三节点,在以欧式距离作为判断通信范围内的依据进行节点间映射时,可以进一步增加下述步骤:在节点散列表的长度等于目标聚类大小的节点散列表中,将与第一节点之间的欧式距离为最大值的第三节点替换为未添加至节点散列表并且与第一节点之间的欧式距离低于最大值的第三节点,直至遍历完未添加至节点散列表中的所有第三节点。
本步骤用于对节点散列表中的第三节点做进一步筛选,以得到更为优选的最佳节点散列表。以步骤整体进行举例,假设节点散列表中包括:第三节点A、第三节点B、第三节点C以及第一节点Z,其中,第三节点A与第一节点Z的欧式距离为124,第三节点B与第一节点Z的欧式距离为265,第三节点C与第一节点Z的欧式距离为315。当存在未添加至节点散列表,并且欧式距离小于第三节点C的315的第三节点D时,将节点散列表中的第三节点C替换为第三节点D。当节点散列表中的所有第三节点与第一节点Z的欧式距离均小于未添加至节点散列表的所有第三节点,则可以说明遍历结束。
S202:从多个节点散列表中筛选出满足如下条件的节点散列表作为最佳节点散列表:节点散列表的长度等于目标聚类大小,并且节点散列表中的节点所构成的区块链分片的计算能力和存储能力满足电力业务需求。
节点散列表的长度指的是节点散列表中的节点数量,目标聚类大小指的是期望的节点数量,也就是期望有多少个节点添加至节点散列表中。当节点散列表的长度等于目标聚类大小,也就意味着区块链节点聚类算法对当前节点散列表的聚类已经达到期望的聚类大小,可以进一步进行后续计算,相反,如果未达到期望的聚类大小,则继续通过步骤S201进行节点的添加。
在电力***中某片区域内的电力业务种类和需求大体上是固定的,可判断节点散列表中的节点所构成的分片的整体计算能力以及整体存储能力是否满足给定的电力业务的需求。通过该步骤可以综合考量区块链节点位置、计算能力、通信能力、所支持的电力业务等因素,对节点散列表进行筛选。
需要说明的是,节点散列表仅是用于模拟测试使用,而非进行对电力***中靠近电力市场主体的节点进行分片,真正用于后续对电力***中靠近电力市场主体的节点进行分片的是最佳节点散列表。最佳散列表指的是散列表长度得到目标聚类大小,并且节点散列表中的节点所构成的分片能够满足的任务需求的优选的节点散列表。
S203:确定最佳节点散列表中的节点构成第一节点所属的第一区块链分片。
在本申请的实施例中,最佳节点散列表中的节点包括一个第一节点以及若干个第三节点,基于上述节点构成第一区块链分片,也就是说,第一区块链分片由一个第一节点以及若干个第三节点构成。
在本申请的一些具体实现方式中,区块链节点聚类算法可通过以下算法实现:
1) 初始化向量对V
2) 为每个节点k创建散列表hashmap k ,用于选择可能的聚类节点
3) for i=1:n
4) for j=1:n
5) if 节点i与节点j间欧氏距离disti,j<min(节点i通信距离,节点j通信距离)then
6) 将节点j加入到hashmap k
7) end if
8) end for
9) 评估hashmap k 中节点的计算能力、存储能力、所支持电力业务并更新可以组成聚类的节点散列表
10) end for
11)根据所有节点的散列表更新聚类向量组V,其中每一组向量代表一组聚类节点。
在图2所示的流程中,设计了区块链节点聚类算法,通过散列表将电力***中靠近电力市场主体的节点进行聚类,将聚类结果作为区块链分片的依据。此外,该算法综合考量了区块链节点位置、计算能力、通信能力等因素,能够更加适应面向电力市场主体大量接入的需求。
参见图3所示,图3为本申请实施例提供的又一种电力***交易协同方法的流程示意图,在图1所示的基础上,步骤S102具体包括以下步骤:
S301:通过跨分片代理节点接收源电力市场主体发送的交易请求,并根据交易请求生成第一交易事务。
跨分片代理节点,有可以称为跨分片代理,指的是与参与电力交易的电力市场主体双方无利益关系,并且由区块链授权的可信的边缘节点或是可信的交易代理机构。第一事务指的是在跨分片交易过程中,根据交易请求所生成的事务,该第一交易事务可以包括交易请求中的相关信息。
在本申请的一些具体实现方式中,交易请求可以是源电力市场主体直接向跨分片代理节点发送,也可以是经过第一节点或第一区块链分片的转发,送达跨分片代理节点。
在本申请的一些具体实现方式中,交易请求可以包括:目标电力市场主体的身份序列号、跨分片代理的身份序列号、交易资金额、交易金锁定时间、源电力市场主体的交易序列号、跨分片代理的交易序列号以及源电力市场主体的签名。第一交易事务可以包括:交易请求中的信息、第一交易事务生成时源分片的第一区块链分片的区块链高度、跨分片代理的签名。
在本申请的一些具体实现方式中,具体地,源电力市场主体在完成交易相关内容的确认后,会选择一个合适的交易金锁定时间,交易金锁定时间用于保护源电力终端的交易资金,源电力市场主体在交易达成前需先向跨分片代理节点提供资金以验证其资金可支持交易进行,若在交易金锁定时间内交易事务未被确认或出现其他问题,交易资金将被退回至源电力市场主体。
其中,与/>分别代表源电力市场主体与跨分片代理节点的交易序列号。在区块链交易中节点每发出一次交易请求交易序列号加1,用于防止重放攻击。/>代表交易请求者源电力市场主体的签名,该签名可以通过椭圆曲线数字签名算法计算获得,椭圆曲线数字签名算法是使用椭圆曲线密码对数字签名算法的模拟,利用源电力市场主体的签名加密交易信息可验证这一信息是否来自于源电力市场主体。
S302:通过跨分片代理节点将第一交易事务发送至第一节点进行确认,以使得第一节点在对第一交易事务进行确认后向跨分片代理节点以及源电力市场主体发送第一交易确认消息。
第一交易确认消息指的是第一交易事务通过确认的消息,在本申请的该步骤中,第一交易确认消息可以是第一节点直接向跨分片代理节点发送,也可以是经过第一区块链分片的转发到跨分片代理节点。其中,第一区块链分片可以理解为跨分片代理节点与第一节点的消息中转站,即区块链分片用于进行跨分片代理节点与第一节点之间的消息转发。
在本申请的一些具体实现方式中,具体地,第一节点收到第一交易事务后,向源电力市场主体获取源电力市场主体的签名,通过源电力市场主体的签名以及第一交易事务中跨分片代理节点的签名对第一交易事务进行验证,并在验证通过后,获取源电力市场主体的公匙,并使用签名计算源电力市场主体的账户地址,通过交易请求以及第一交易事务中的交易相关信息获取源电力市场主体的IP地址以及目标电力市场主体的IP地址。并在验证源电力市场主体的交易序列号无误后,将第一交易事务添加至第一分片的交易池中,等待被打包进区块链中。
S303:通过跨分片代理节点接收第一交易确认消息,并根据交易请求生成第二交易事务,将第二交易事务发送至第二节点进行确认,以便第二节点在对第二交易事务进行确认后向跨分片代理节点发送第二交易确认消息。
第二节点指的是源电力市场主体请求的目标交易对象所接入的节点,即目标电力市场主体所接入的节点,第二交易确认消息指的是第二交易事务通过确认的消息。其中,第二交易确认请求可由第二节点直接向跨分片代理加点发送,也可由第二节点所属的第二区块链分片代为转发。
在本申请的一些具体实现方式中,跨分片代理节点会将交易资金锁定,同时源电力市场主体的交易序列号加1。
S304:通过跨分片代理节点接收源电力市场主体在接收第一交易确认消息后发送的交易请求对应的交易资金数值。
交易资金数值指的是源电力市场主体在本次电力交易中所指定的交易资金金额。
在本申请的实施例中,交易请求中携带有交易资金额的信息,源电力市场主体将与交易资金额的信息相对应的交易资金数值发送给跨分片代理节点。以生活中的例子对步骤整体进行举例,假设用户A希望通过银行转账的方式向用户B转账,则用户A需要在转账界面输入转账的金额,并在确认交易后先将钱汇入银行,由银行负责将钱转入用户B的账户。在此,源电力市场主体便是用户A,跨分片代理则是银行,用户B则是下一步骤中的目标电力市场主体。
S305:通过跨分片代理节点在接收第二交易事务确认消息后,将交易资金数值发送至目标电力市场主体。
在本申请的一些具体实现方式中,跨分片代理节点在将交易资金发送至目标电力市场主体的同时,跨分片代理节点的交易序列号加1。
在图3所示的流程中,建立了跨分片交易机制,通过引入可信第三方作为两个区块链分片之间进行电力交易的代理,负责与两个区块链分片中的节点所连接的电力市场主体的电力交易的交互,降低了区块链处理大量电力交易所带来的负担,进一步提升电力交易的处理效率。
参见图4所示,图4为本申请实施例提供的又一种电力***交易协同方法的流程示意图,在图3所示的基础上,第一交易事务以及第二交易事务包含有:交易金额锁定时间,还包括以下步骤:
S401:当第一节点返回第一交易确认消息时,获取第一区块链分片当前的区块链高度,为第一区块链高度。
第一区块链高度指的是第一区块分片所处区块,在向跨分片代理节点返回第一交易确认消息时在区块链中的相对位置。区块链高度可以理解为区块链中创世区块与末尾区块之间的区块数目。例如,在区块链的创建过程中,创世区块的高度为0,每生成一个新的区块,其高度值会比上一个区块高度值加1。获取第一区块链高度的目的在于确定该步骤执行时第一区块链分片在区块链中的时间戳。
S402:当第一节点发送交易资金数值时,获取第一区块链分片当前的区块链高度,为第二区块链高度。
第二区块链高度指的第一区块链分片所处区块,在第一节点向跨分片代理节点发送交易资金数值时在区块链中的相对位置。获取第二区块链高度的目的在于确认执行该步骤时第一区块链分片在区块链中的时间戳。
S403:当第二区块链高度大于或等于第一区块链高度,并且第二区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,通过第一节点向跨分片代理节点发送金额锁定请求,以请求跨分片代理节点将交易资金数值锁定。
该本申请该实施例中,跨分片代理节点在代理电力交易时,需要确保交易的资金安全性,因此,在第二区块链高度满足预设高度阈值时,跨分片代理节点对其进行锁定,以防止在交易过程中出现资金丢失或重复支付等情况。
需要说明的是,在交易完成时,被锁定的交易资金会被解除,以使交易资金数值能够顺利地被跨分片代理节点通过第二区块链分片转移至目标电力市场主体的账户中。
在图4所示的流程中,通过获取第一区块链高度以及第二区块链高度,当第二区块链高度大于或等于第一区块链高度,并且小于或等于第一区块链高度与交易金额锁定时间的总值,锁定交易资金,以确保电力交易的安全性和可靠性。
参见图5所示,图5为本申请实施例提供的又一种电力***交易协同方法的流程示意图,在图4所示的基础上,进一步增加了第一事务打包进电力***区块链的相关步骤,具体包括以下步骤:
S501:将第一交易事务添加至第一区块链分片的交易池中。
具体地,可以是第一节点接收到携带有源电力市场主体的交易序列号的第一事务后,对交易序列号进行验证,在验证无误后,将第一事务添加至所属区块链分片的交易池中,等待被到打包进区块链。
S502:当第二节点返回第二交易确认消息时,获取第一区块链分片当前的区块链高度,为第三区块链高度,并在第三区块链高度大于或等于第一区块链高度,并且第三区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,将交易池中的第一交易事务打包到电力***区块链。
将第一交易事务打包进区块的过程所实现的效果,可以理解为将电力交易的交易记录添加至区块链网络中。
在图5所示的流程中,将第一交易事务添加至交易池,等待被打包进区块。在第二节点返回第一交易确认消息时,将第一交易事务打包进区块链,从而确保交易记录被记录在区块链上。此外,及时地将第一交易事务打包进区块有助于较少网络拥塞,提高交易处理效率。
参见图6所示,图6为本申请实施例提供的一种电力***交易协同架构,本申请该实施例面向电力市场主体大规模接入与多边协同需求,提出了一种电力***交易协同架构,又可称为分片区块链结构,通过分片技术提高传统区块链的可扩展性,该架构包括电力***层、边缘区块链层以及云区块链层。各层的具体说明如下:
电力***层,用于为接入至电力***中的电力市场主体办理提供电力业务。
边缘区块链层,用于通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点;还用于通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易;还用于将电力市场主体办理电力业务产生的电力业务数据存储至存储服务器,并生成电力业务数据的数据索引以及数据快照上传至云区块链层;
云区块链层,用于存储数据快照以及数据索引。
其中,电力***层由电力***中的各参与主体组成,具体为接入电力***中的包括电源、电网、负荷、储能在内的电力市场主体。各电力市场主体通过发布电力业务需求在区块链中办理电力业务,此外,各个电力市场主体可以通过区块链实现多边协同,并可通过跨分片交易机制与其他区块链分片中的电力市场主体达成电力交易。
边缘区块链层采用了区块链节点聚类算法来将电力***中电力市场主体的边缘侧的节点分成多个区块链分片。这种分片技术可以让单一区块链分片中的节点只负责处理接入该分片的电力市场主体的电力业务,从而避免了网络拥堵和交易延迟。此外,由于每个节点只维护与其所在区块链分片有关的数据,因此不会发生数据冗余和浪费,从而提高了电力业务的处理效率。
各区块链分片中关于电力业务的相关数据只会存储在该区块链分片的节点中,而不会存储在云区块链层中。边缘区块链层会定期生成数据快照以及数据索引并上传至云区块链以供云区块链层进行数据验证、快照备份以及数据查询。由于边缘区块链仅会将占用存储空间较小的数据索引、数据快照上传至公开的云区块链中,降低了传统区块链中节点的计算与存储压力,充分利用了边缘侧节点的计算和存储资源,提高了传统区块链的可扩展性。此外,通过跨分片交易机制,电力市场主体可以在不同的区块链分片之间进行电力交易,从而实现多主体实时多边协同,且不会泄漏数据。这种跨分片交易机制有效保护了电力***中各电力市场主体的数据隐私,同时又保证了交易的安全性和高效性。
总体上,边缘区块链层通过分片技术和跨分片交易机制实现了多主体实时多边协同,提高了电力***的可扩展性和处理效率,同时又保证了数据隐私和交易安全。
在本申请的一些具体实现方式中,为满足电力市场主体大规模接入的高延展性要求,区块链分片采用有向无环图(Directed Acylic Graph, DAG)结构,基于DAG结构的区块链具有异步记账的特点,这就意味着节点不必等待其他节点完成数据同步,就可以直接处理新的电力交易,从而大大提高了交易的处理效率和吞吐量。参见如图7所示,图7为本申请实施例提供的一种基于DAG的交易架构的示意图;为了实现异步记账,基于DAG的交易结构中的每一笔交易在获得确认后,仅需在交易头中引用任意两个区块链中存在的已有交易,而不是强制其等待前一个交易完成后引用前一个交易。
此外,由于DAG结构不需要节点之间进行同步,因此在数据处理过程中也可以避免因等待数据同步而造成的时间浪费,更加适用于电力市场主体大规模接入的场景。此外,在DAG结构的区块链中,每个节点都是独立的,可以直接处理新的电力交易,这也为电力***的高延展性要求提供了有效的解决方案。在本申请的实施例中,通过采用基于DAG结构的区块链,电力市场主体的数量和规模都可以得到有效的扩展和管理,从而实现实时多边协同和高效的电力交易。
此外,采取DAG架构的区块链将每个单独的电力交易视作一个独立的单元,每个单元将同时连接前后的单元并构成有向无环图。由于交易之间相互连接,不存在传统区块链中的矿工排序环节,因此不存在传统链式区块链中高手续费高优先权的现象。
参见图8所示,图8为本申请实施例提供的一种电力***交易协同装置,该装置包括:
区块链分片单元801,用于通过区块链节点聚类算法对电力***中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片;多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点;
跨分片交易单元802,用于通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易。
本申请第二方面提供了一种电力***交易协同装置,该装置包括:
区块链分片单元,用于通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,多个区块链分片包括:第一区块链分片以及第二区块链分片,第一区块链分片包括:连接源电力市场主体的第一节点,第二区块链分片包括:连接目标电力市场主体的第二节点;
跨分片交易单元,用于通过跨分片交易机制建立源电力市场主体与目标电力市场主体的电力交易。
在本申请的一些实现方式中,区块链分片单元具体用以执行以下操作:
通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,包括:
将第一节点映射到第一节点所属的通信范围内的第三节点所对应的散列表中,以得到多个节点散列表;
从多个节点散列表中筛选出满足如下条件的节点散列表作为最佳节点散列表:节点散列表的长度等于目标聚类大小,并且节点散列表中的节点所构成的区块链分片的计算能力和存储能力满足电力业务需求;
确定最佳节点散列表中的节点构成第一节点所属的第一区块链分片。
在本申请的一些实现方式中,将第一节点映射到第一节点所属的通信范围内的第三节点对应的散列表中,包括:
将第一节点添加至满足如下条件的第三节点对应的节点散列表中:第一节点与第三节点的欧式距离小于节点间的通信范围,或,第一节点与第三节点间存在直接物理连接。
在本申请的一些实现方式中,该装置还包括:
节点替换单元,用于在节点散列表的长度等于目标聚类大小的节点散列表中,将与第一节点之间的欧式距离为最大值的第三节点替换为未添加至节点散列表并且与第一节点之间的欧式距离低于最大值的第三节点,直至遍历完未添加至节点散列表中所有第三节点。
在本申请的一些实现方式中,跨分片交易单元具体用于执行以下操作:
通过跨分片代理节点接收源电力市场主体发送的交易请求,并根据交易请求生成第一交易事务;
通过跨分片代理节点将第一交易事务发送至第一节点进行确认,以使得第一节点在对第一交易事务进行确认后向跨分片代理节点以及源电力市场主体发送第一交易确认消息;
通过跨分片代理节点接收第一交易确认消息,并根据交易请求生成第二交易事务,将第二交易事务发送至第二节点进行确认,以便第二节点在对第二交易事务进行确认后向跨分片代理节点发送第二交易确认消息;
通过跨分片代理节点接收源电力市场主体在接收第一交易确认消息后发送的交易请求对应的交易资金数值;
通过跨分片代理节点在接收第二交易事务确认消息后,将交易资金数值发送至目标电力市场主体。
在本申请的一些实现方式中,第一交易事务包括:交易金额锁定时间,该装置还包括:区块链高度获取单元,该区块链高度获取单元用于执行以下操作:
当第一节点返回第一交易确认消息时,获取第一区块链分片当前的区块链高度,为第一区块链高度;
当第一节点发送交易资金数值时,获取第一区块链分片当前的区块链高度,为第二区块链高度;
当第二区块链高度大于或等于第一区块链高度,并且第二区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,通过第一节点向跨分片代理节点发送金额锁定请求,以请求跨分片代理节点将交易资金数值锁定。
在本申请第二方面的一些实现方式中,第二交易事务包括:交易金额锁定时间,区块链高度获取单元还用于执行以下操作:
将第一交易事务添加至第一区块链分片的交易池中;
当第二节点返回第二交易确认消息时,获取第一区块链分片当前的区块链高度,为第三区块链高度,并在第三区块链高度大于或等于第一区块链高度,并且第三区块链高度小于或等于第一区块链高度与交易金额锁定时间的总值时,将交易池中的第一交易事务打包到电力***区块链。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,该计算机程序用于执行本申请实施例提供的电力***交易协同方法。
参见图9所示,为使本申请实施例的所提供的一种跨分片交易机制中的交互关系更加直观易懂,本申请提供了一种跨分片交易机制的流程图,将整个电力交易的环节分为六个步骤,具体为:
步骤1:源分片向跨分片代理节点发送交易请求1,其中,源分片可以理解为第一节点;
步骤2:跨分片接收交易请求1,向源分片发送交易事务1。其中,源分片可以理解为第一区块链分片;
步骤3:源分片中的源节点对交易事务1进行确认;
步骤4:交易事务1被确认后,跨分片代理节点向目标分片发送交易事务2,其中,目标分片可以理解为第二区块链分片;
步骤5:目标分片中的目标节点对交易事务2进行确认,其中,目标节点可以理解为第二节点。
本申请实施例提供的一种电力***交易协同方法,其优点在于,通过分片技术提高传统区块链的可扩展性,解决了传统区块链面临大量业务请求与大规模数据存储时的效率低下问题,同时通过跨分片交易机制,实现接入不同分片主体的高效安全协同。下面结合仿真实例进行说明:
本申请在仿真实例中,将运用了本申请所提的一种电力***交易协同方法的分片区块链架构与传统区块链架构作对比,模拟电力***中若干节点定期向区块链发出服务请求的场景,其中服务请求包括身份认证请求、跨域协同请求、跨域资源交易请求、数据存储请求四种。首先令电力市场主体发出的四种服务请求数量相同,用每秒确认的交易数作为吞吐量,增加***中电力市场主体数量,区块链***吞吐量变化如图10所示,需要说明的是,图10中上方的曲线为运用了本申请实施例所提供的一种电力***交易协同方法的区块链分片架构,下方的曲线为传统的区块链结构。
由图10可知,电力市场主体数量不多时本发明所提架构吞吐量与传统区块链接近,随着***中电力市场主体不断增加,服务请求也不断增多,传统区块链逐渐面临***瓶颈,吞吐量增长缓慢,而运用了本申请所提供的一种电力***交易协同方法的分片区块链架构通过分片提高可扩展性,可满足大量电力市场主体的接入与服务请求,因此吞吐量依旧快速增长。
除此之外,为进一步验证本申请实施例所提供跨分片交易机制的吞吐量,设定固定接入电力市场主体数量为500,改变跨分片资源交易请求的占比,得到吞吐量对比如图11所示,需要说明的是,图11上方的曲线为运用了本申请实施例所提供的一种电力***交易协同方法的区块链分片架构,下方的曲线为传统的区块链结构。
跨分片交易由于需要较多的交易验证,更多的跨分片交易业务往往给区块链带来更大的压力。由图11可知,分片机制并未影响不同域之间的交互,同时在跨分片交互数量增长时,本申请所提供的跨分片交易机制还可保证仅交易双方所接入分片需验证交易,降低了区块链验证大量交易带来的负担。
最后,还需要说明的是,在本申请实施例中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种电力***交易协同方法,其特征在于,所述方法包括:
通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,所述多个区块链分片包括:第一区块链分片以及第二区块链分片,所述第一区块链分片包括:连接源电力市场主体的第一节点,所述第二区块链分片包括:连接目标电力市场主体的第二节点;
通过跨分片交易机制建立所述源电力市场主体与所述目标电力市场主体的电力交易。
2.根据权利要求1所述的方法,其特征在于,通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,包括:
将所述第一节点映射到所述第一节点所属的通信范围内的第三节点所对应的散列表中,以得到多个节点散列表;
从所述多个节点散列表中筛选出满足如下条件的节点散列表作为最佳节点散列表:所述节点散列表的长度等于目标聚类大小,并且所述节点散列表中的节点所构成的区块链分片的计算能力和存储能力满足电力业务需求;
确定所述最佳节点散列表中的节点构成所述第一节点所属的所述第一区块链分片。
3.根据权利要求2所述的方法,其特征在于,所述将所述第一节点映射到所述第一节点所属的通信范围内的第三节点对应的散列表中,包括:
将所述第一节点添加至满足如下条件的所述第三节点对应的散列表中:所述第一节点与所述第三节点的欧式距离小于节点间的通信范围,或,所述第一节点与所述第三节点间存在直接物理连接。
4.根据权利要求3所述的方法,其特征在于,所述节点散列表包括至少一个所述第三节点,所述方法还包括:
在所述节点散列表的长度等于所述目标聚类大小的所述节点散列表中,将与所述第一节点之间的欧式距离为最大值的第三节点替换为未添加至所述节点散列表并且与所述第一节点之间的欧式距离低于所述最大值的第三节点,直至遍历完未添加至所述节点散列表中的所有第三节点。
5.根据权利要求1所述的方法,其特征在于,所述通过跨分片交易机制建立所述源电力市场主体与所述目标电力市场主体的电力交易,包括:
通过跨分片代理节点接收所述源电力市场主体发送的交易请求,并根据所述交易请求生成第一交易事务;
通过所述跨分片代理节点将所述第一交易事务发送至所述第一节点进行确认,以使得所述第一节点在对所述第一交易事务进行确认后向所述跨分片代理节点以及所述源电力市场主体发送第一交易确认消息;
通过所述跨分片代理节点接收所述第一交易确认消息,并根据所述交易请求生成第二交易事务,将所述第二交易事务发送至所述第二节点进行确认,以便所述第二节点在对所述第二交易事务进行确认后向所述跨分片代理节点发送第二交易确认消息;
通过所述跨分片代理节点接收所述源电力市场主体在接收所述第一交易确认消息后发送的所述交易请求对应的交易资金数值;
通过所述跨分片代理节点在接收所述第二交易确认消息后,将所述交易资金数值发送至所述目标电力市场主体。
6.根据权利要求5所述的方法,其特征在于,所述第一交易事务包括:交易金额锁定时间,所述方法还包括:
当所述第一节点返回所述第一交易确认消息时,获取所述第一区块链分片当前的区块链高度,为第一区块链高度;
当所述第一节点发送所述交易资金数值时,获取所述第一区块链分片当前的区块链高度,为第二区块链高度;
当所述第二区块链高度大于或等于所述第一区块链高度,并且所述第二区块链高度小于或等于所述第一区块链高度与所述交易金额锁定时间的总值时,通过所述第一节点向所述跨分片代理节点发送金额锁定请求,以请求所述跨分片代理节点将所述交易资金数值锁定。
7.根据权利要求6所述的方法,其特征在于,所述第二交易事务包括:所述交易金额锁定时间,所述方法还包括:
将所述第一交易事务添加至所述第一区块链分片的交易池中;
当所述第二节点返回所述第二交易确认消息时,获取所述第一区块链分片当前的区块链高度,为第三区块链高度,并在所述第三区块链高度大于或等于所述第一区块链高度,并且所述第三区块链高度小于或等于所述第一区块链高度与所述交易金额锁定时间的总值时,将所述交易池中的所述第一交易事务打包到所述电力***区块链。
8.根据权利要求1所述的方法,其特征在于,所述区块链分片采用有向无环图DAG结构。
9.一种电力***交易协同装置,其特征在于,所述装置包括:
区块链分片单元,用于通过聚类算法对电力***区块链中处于不同电力市场主体的边缘侧的节点进行分片,以得到多个区块链分片,所述多个区块链分片包括:第一区块链分片以及第二区块链分片,所述第一区块链分片包括连接源电力市场主体的第一节点,所述第二区块链分片包括连接目标电力市场主体的第二节点;
跨分片交易单元,用于通过跨分片交易机制建立所述源电力市场主体与所述目标电力市场主体的电力交易。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310542553.9A CN116258609B (zh) | 2023-05-15 | 2023-05-15 | 一种电力***交易协同方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310542553.9A CN116258609B (zh) | 2023-05-15 | 2023-05-15 | 一种电力***交易协同方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116258609A true CN116258609A (zh) | 2023-06-13 |
CN116258609B CN116258609B (zh) | 2023-07-21 |
Family
ID=86681099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310542553.9A Active CN116258609B (zh) | 2023-05-15 | 2023-05-15 | 一种电力***交易协同方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116258609B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117114886A (zh) * | 2023-10-23 | 2023-11-24 | 北京邮电大学 | 一种基于双层共识机制的区块链碳交易方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109525678A (zh) * | 2018-12-25 | 2019-03-26 | 众安信息技术服务有限公司 | 区块链网络***以及相应的节点设备发现方法 |
CN112529706A (zh) * | 2020-12-10 | 2021-03-19 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN113660327A (zh) * | 2021-08-12 | 2021-11-16 | 厦门潭宏信息科技有限公司 | 一种区块链***、区块链节点加入方法和交易方法 |
CN114490020A (zh) * | 2021-12-03 | 2022-05-13 | 清华大学 | 一种区块链分片方法、***及电子设备 |
CN116094721A (zh) * | 2022-11-30 | 2023-05-09 | 新疆大学 | 一种基于聚类的可扩展的分片共识算法 |
-
2023
- 2023-05-15 CN CN202310542553.9A patent/CN116258609B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109525678A (zh) * | 2018-12-25 | 2019-03-26 | 众安信息技术服务有限公司 | 区块链网络***以及相应的节点设备发现方法 |
CN112529706A (zh) * | 2020-12-10 | 2021-03-19 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN113660327A (zh) * | 2021-08-12 | 2021-11-16 | 厦门潭宏信息科技有限公司 | 一种区块链***、区块链节点加入方法和交易方法 |
CN114490020A (zh) * | 2021-12-03 | 2022-05-13 | 清华大学 | 一种区块链分片方法、***及电子设备 |
CN116094721A (zh) * | 2022-11-30 | 2023-05-09 | 新疆大学 | 一种基于聚类的可扩展的分片共识算法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117114886A (zh) * | 2023-10-23 | 2023-11-24 | 北京邮电大学 | 一种基于双层共识机制的区块链碳交易方法及*** |
CN117114886B (zh) * | 2023-10-23 | 2024-04-09 | 北京邮电大学 | 一种基于双层共识机制的区块链碳交易方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN116258609B (zh) | 2023-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109871669B (zh) | 一种基于区块链技术的数据共享解决方法 | |
US10459946B2 (en) | Method and system for tuning blockchain scalability, decentralization, and security for fast and low-cost payment and transaction processing | |
CN109472572B (zh) | 基于区块链主链加并行多子链的合约*** | |
US11481375B2 (en) | Point-to-point distributed decentralized system | |
JP7165148B2 (ja) | ブロックチェーンネットワークにおける整合性のある分散型メモリプールのための方法及びシステム | |
US20230316273A1 (en) | Data processing method and apparatus, computer device, and storage medium | |
CN110741372A (zh) | 用于管理区块链网络上的交易的计算机实现的***和方法 | |
US20090182814A1 (en) | solving mixed integer programs with peer-to-peer applications | |
CN109522362A (zh) | 基于区块链数据的非完全数据同步方法、***及设备 | |
Mišić et al. | Adapting PBFT for use with blockchain-enabled IoT systems | |
CN112073222B (zh) | 一种基于区块链跨链技术的空天地网络移动管理架构 | |
US11902456B2 (en) | Blockchain sharding with adjustable quorums | |
CN112907252B (zh) | 一种基于多人链下通道的区块链交易方法及*** | |
WO2022121538A1 (zh) | 基于区块链的数据同步方法、***及相关设备 | |
JP2022508247A (ja) | 信頼度ベースのコンセンサスを伴う高性能分散型記録システム | |
CN116258609B (zh) | 一种电力***交易协同方法、装置及存储介质 | |
Qin et al. | A secure and effective construction scheme for blockchain networks | |
Ren et al. | HCNCT: A cross-chain interaction scheme for the blockchain-based metaverse | |
Li et al. | Jenga: Orchestrating smart contracts in sharding-based blockchain for efficient processing | |
Panwar et al. | Blanc: Blockchain-based anonymous and decentralized credit networks | |
CN110351362A (zh) | 数据验证方法、设备及计算机可读存储介质 | |
CN116233145B (zh) | 一种基于分片策略的区块链异步共识方法及装置 | |
CN113449322A (zh) | 基于区块链的数据共享方法、装置、电子设备及可读介质 | |
Wang et al. | A fast and secured peer-to-peer energy trading using blockchain consensus | |
CN112231415B (zh) | 区块链网络的数据同步方法、***、电子设备及可读介质 |
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 |