基于区块链的数据交互方法、装置、电子设备及存储介质与流程



1.本发明实施例涉及区块链技术领域,尤其涉及一种基于区块链的数据交互方法、装置、电子设备及存储介质。


背景技术:



[0002]“大数据”是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产。近年来,大数据的发展势头极为猛烈。一方面,互联网、移动互联网、物联网以及云计算的规模和应用的激增,大量的用户和应用的交互导致产生巨量的数据。另一方面,随着数据采集技术的进步,诸如卫星遥感、传感器以及能源设备等,也导致每时每刻都在产生巨量的数据。
[0003]
大数据促进社会进步的同时,也带来很多的问题和挑战,尤其是大数据治理和隐私保护等问题。区块链技术具备去中心化、不可篡改、透明化等特征,在改善大数据安全服务方面具有巨大的潜力。在大数据环境下应用区块链技术,包括大数据的采集、存储、分析和隐私保护等,可以通过区块链的共识算法确保数据的完整性,并实现保障数据的安全、保障数据隐私的安全、保障数据存储的安全以及保障数据完整性的目的。
[0004]
然而,大数据往往存在高并发的特点。在大数据环境下应用区块链技术,如果不能解决大数据高并发的问题,会导致区块链中点对点的交易暴增,从而影响网络的可靠性和稳定性。以电力数据为例说明,电力不同于常规的数据交易和金融交易,必须满足电力网络的物理约束条件。分布式发用电存在波峰波谷较大以及不确定性较大等问题,大量的数据交易同时进行,十分容易造成区块环链中点对点数据交易暴增以及区块环链上通信量过大等问题。


技术实现要素:



[0005]
本发明实施例提供一种基于区块链的数据交互方法、装置、电子设备及存储介质,能够提高基于区块链的数据交互量的可控性,从而提高在大数据下应用区块链网络的可靠性和稳定性。
[0006]
根据本发明的一方面,提供了一种基于区块链的数据交互方法,应用于区块链节点,包括:
[0007]
获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息;
[0008]
调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态;
[0009]
根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量;
[0010]
根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。
[0011]
根据本发明的另一方面,提供了一种基于区块链的数据交互装置,配置于区块链节点,包括:
[0012]
数据交互请求获取模块,用于获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息;
[0013]
当前设备算力状态确定模块,用于调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态;
[0014]
当前交互数据量确定模块,用于根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量;
[0015]
当前交互数据确定模块,用于根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。
[0016]
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
[0017]
至少一个处理器;以及
[0018]
与所述至少一个处理器通信连接的存储器;其中,
[0019]
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的基于区块链的数据交互方法。
[0020]
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的基于区块链的数据交互方法。
[0021]
本发明实施例通过区块链节点获取第一交互设备的数据交互请求后,调用交互智能合约根据数据交互请求包括的设备运行数据确定第一交互设备的当前设备算力状态,以根据第一交互设备的当前设备算力状态确定第一交互设备的当前交互数据量,从而根据当前交互数据量确定第一交互设备当前向第二交互设备发送的当前交互数据。相应的,第一交互设备则可以在管控的情况下向第二交互设备发送当前交互数据量的交互数据,解决区块链网络中因大数据高并发导致的网络可靠性和稳定性较低等问题,能够提高基于区块链的数据交互量的可控性,从而提高在大数据下应用区块链网络的可靠性和稳定性。
[0022]
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0023]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0024]
图1是本发明实施例一提供的一种基于区块链的数据交互方法的流程图;
[0025]
图2是本发明实施例一提供的一种新区块链上链的流程示意图;
[0026]
图3是本发明实施例一提供的一种区块链结构的示意图;
[0027]
图4是本发明实施例一提供的一种pop共识机制工作流程示意图;
[0028]
图5是本发明实施例一提供的一种基于交互智能合约确定设备算力状态的流程示意图;
[0029]
图6是本发明实施例提供的一种能源终端设备基于区块链进行能源数据交互的流程示意图;
[0030]
图7是本发明实施例二提供的一种基于区块链的数据交互装置的示意图;
[0031]
图8为本发明实施例三提供的一种电子设备的结构示意图。
具体实施方式
[0032]
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0033]
需要说明的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0034]
实施例一
[0035]
图1是本发明实施例一提供的一种基于区块链的数据交互方法的流程图,本实施例可适用于在区块链网络中根据设备的算力状态确定设备当前的数据交互量的情况,该方法可以由基于区块链的数据交互装置来执行,该装置可以由软件和/或硬件的方式来实现,并一般可集成在电子设备中,该电子设备可以是终端设备,也可以是服务器设备,作为区块链节点参与区块链网的运行,本发明实施例并不对电子设备的具体设备类型进行限定。相应的,如图1所示,该方法包括如下操作:
[0036]
s110、获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息。
[0037]
其中,第一交互设备可以是具有利用区块链网络进行数据交互的设备。数据交互请求则可以是与指定的交互设备进行数据交互的请求。设备运行数据可以是第一交互设备当前的运行参数数据,第二交互设备则可以是第一交互设备所指定进行数据交互的设备。
[0038]
可选的,第一交互设备同样可以作为区块链节点参与区块链网络的运行。也即,当第一交互设备为区块链节点时,可以直接执行本发明实施例所提供的基于区块链的数据交互方法。如果第一交互设备不是区块链网络中的区块链节点,则第一交互设备可以向区块链网络中保持通信连接的区块链节点发送数据交互请求,以通过区块链节点执行本发明实施例所提供的基于区块链的数据交互方法。同理,第二交互设备可以是区块链网络中的某一个区块链节点,也可以是与区块链节点通信连接的另外一个交互设备,本发明实施例对此并不进行限制。
[0039]
具体的,第一交互设备可以向区块链网络发起数据交互请求。如果第一交互设备本身为区块链节点,可以将数据交互请求发送至区块链网络进行广播。如果第一交互设备
不是区块链节点,可以向区块链网络中保持通信连接的区块链节点发送数据交互请求,区块链节点接收到数据交互请求后,可以在区块链网络中进行广播。
[0040]
在本发明的一个可选实施例中,在所述获取第一交互设备的数据交互请求之前,还可以包括:获取各交互设备发送的交互数据上链请求;在确定具备区块生成权限的情况下,采用交互数据上链智能合约对各所述交互设备的交互数据进行数据处理,得到交互数据处理结果,并将所述交互数据处理结果进行上链存储。
[0041]
其中,交互数据上链请求可以是在区块链网络中存储交互数据的请求。区块生成权限也即具备生成区块的权限。交互数据上链智能合约可以是对交互数据在区块链网络中的存储行为进行约束的智能合约。
[0042]
可选的,在各交互设备进行数据交互之前,还可以将交互数据发布到区块链中进行存储。相应的,各交互设备可以向区块链网络中发送交互数据上链请求,具有区块生成权限的区块链节点(也即当前的记账节点)可以按照交互数据上链智能合约对各交互数据上链请求包括的交互数据进行处理,例如可以是数据加密等各种数据上链的处理方式,将处理后的交互数据处理结果进行上链存储。
[0043]
在本发明的一个可选实施例中,所述第一交互设备和所述第二交互设备为电力系统中的能源设备;所述数据交互请求为能源数据交互请求。
[0044]
在一个具体的例子中,以分布式环境和大量低压可再生能源接入的电网系统为例具体说明。针对海量的分布式可再生能源数据,基于区块链的数据可靠性,首先搭建区块链,如果能源终端设备不加入区块链网络,则可以为接入智能电网的每一个能源终端设备创建区块链节点账户,以针对分布式可再生能源接入构建能源接入账户。其次,将每一种接入能源终端设备产生的能源数据写入区块节点,最后将其发布至区块链上进行存储。如此,区块链网络中各个区块链节点上均可获取全部的能源数据信息,能够保证能源数据的安全性、可靠性和不可篡改性。
[0045]
图2是本发明实施例一提供的一种新区块链上链的流程示意图,具体的,如图2所示,搭建的区块链可以包括一个创世区块以及多个包括各能源终端信息的历史区块和新区块,创世区块作为初始区块,每一个区块的区块头部可以包括上一区块的哈希值。为保证可追溯性,区块头中可以记录有时间戳;每一个能源终端设备产生的能源信息可以写入区块体中。可选的,能源终端设备产生的能源信息可以包括本地消纳的能源信息量以及并入大电网中的能源信息量等,如发电设备、变送设备和用电设备等能源终端的能源信息,包括电压信息、电流信息以及产生和消耗的能量信息等,并以交易的形式记录在区块体内。
[0046]
图3是本发明实施例一提供的一种区块链结构的示意图。在一个具体的例子中,如图3所示,区块链中每一个区块都由区块头和区块体组成,形成能源信息的链式结构。区块可以是一段时间内能源信息的集合,用以记录这段时间范围内能源信息的具体内容。当个能源终端设备之间进行能源数据的数据交互时,还可以存储各能源终端设备之间能源信息的交互流程和交互内容等。其中,区块头中包含有版本号、前一区块头哈希值、当前区块的生成时间戳、merkle(梅克尔)根散列值和随机数等。区块体中则可以记录能源终端设备的能源信息、智能合约(交互数据上链智能合约和交互智能合约等)以及能源数据的交互流程和内容等。各能源终端设备以区块链的结构进行数据交互,每一个能源终端设备均可以利用区块链对能源数据进行监督和管理。
[0047]
可选的,区块链出块权竞争方式可以为:各分布式可再生能源终端节点按照区块链的数据结构打包生成新区块,采用pop(proof of participation)共识机制竞争出块权,示意图如图4所示。其中,pop共识机制的工作流程为:1、各区块链节点收集交易信息;2、leader节点(区块生成节点,也即记账节点)从交易池中不断提取交易;3、leader节点判断达到了交易集上限的条件后,开始提案自己的交易集;4、普通区块链节点收到leader节点广播的交易集后,先向leader节点要交易集的头部信息,然后可以判断自已没有哪些交易,并向leader要自己缺少的交易;6、各区块链节点收集到完整的交易集后,向其它所有区块链节点广播自己的投票;7、各区块链节点收集其它区块链节点的交易集投票,投票结果通过后,达成交易集共识,进入到区生成块阶段;8、在区块共识阶段,各区块链节点根据交易集生成区块,在交易集达成共识后按顺序验证交易集中的每一笔交易,最终得到一个状态树根hash(哈希),并结合交易集构成的交易树根hash、区块号、时间戳等构造区块头信息,然后每个节点各自对自己生成的新区块投票并收集其它节点的投票,得票数超过阈值的区块被认为验证通过。
[0048]
需要说明的是,在实现区块发布上链的过程中,较为普遍的共识机制有三种:pow(proof of work,工作量证明)共识机制、pos(proof of stake,权益证明)共识机制和dpos(delegated proof of stake,代理权益证明)共识机制。其中,pow共识机制通过制定极其复杂的运算从众多节点中选出拥有记账权的区块链节点,提高区块链节点获得记账权花费的代价以增加节点作假的成本,进而极大程度保证了区块链网络的安全性。但是pow机制中,绝大多数区块链节点都在作无意义的计算,且算力的强弱与区块链节点获得收益的多少紧密相关,故其会带来巨大的电力能源损耗。pos共识机制通过计算区块链节点持有占总币数的百分比和占有币数的时间来决定记账权。该机制避免了复杂的运算所带来的电力资源损耗问题,但是每一笔交易都需要网络中所有持有pos的区块链节点进行全体确认,故其处理事务的速度相对较慢。dpos共识机制是pos的升级版,通过制定不同的策略,不定时地选取一部分区块链节点授予其记账权,用作新区块的创建、验证、签名以及互相监督。这种机制不需要竞争记账权,相较于pow和制减少了区块创建和确认消耗的时间,降低了算力成本,但是其去中心化程度有所降低。而基于pop共识机制的区块链系统可以显著提升区块链网络的计算效率。
[0049]
s120、调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态。
[0050]
其中,交互智能合约可以是对各交互设备在区块链网络中对交互数据的交互行为进行约束的智能合约。当前设备算力状态可以是第一交互设备当前的计算能力状态。
[0051]
相应的,当区块链节点接收到第一交互设备的数据交互请求后,可以调用区块链中的交互智能合约,按照交互智能合约中算力状态智能感知规则来做出响应,对数据交互请求中包括的设备运行数据进行分析,确定第一交互设备的当前设备算力状态。
[0052]
在本发明的一个可选实施例中,所述调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态,可以包括:根据所述设备运行数据和所述交互智能合约确定所述第一交互设备的当前运行状态;根据所述第一交互设备的当前运行状态以及所述交互智能合约确定所述第一交互设备的当前设备算力状态。
[0053]
其中,当前运行状态可以是第一交互设备当前的运行状态。
[0054]
示例性的,当第一交互设备为能源终端设备时,运行状态可以是能源终端设备运行时产生的能源信息,如电压、电流和功率等信息。相应的,区块链节点可以调用交互智能合约对第一能源终端设备的设备运行数据进行分析,以确定第一能源终端设备的运行状态,并根据第一能源终端设备的运行状态确定第一能源终端设备的当前能够接纳的交互数据量的算力状态。
[0055]
在本发明的一个可选实施例中,所述交互智能合约包括交互响应条件和交互响应规则;所述根据所述设备运行数据和所述交互智能合约确定所述第一交互设备的当前运行状态,可以包括:确定所述设备运行数据匹配的目标交互响应条件;根据所述目标交互响应条件确定目标交互响应规则;根据所述设备运行数据和所述目标交互响应规则确定所述第一交互设备的当前运行状态;所述根据所述第一交互设备的当前运行状态以及所述交互智能合约确定所述第一交互设备的当前设备算力状态,可以包括:根据所述第一交互设备的当前运行状态以及所述目标交互响应规则确定所述第一交互设备的当前设备算力状态。
[0056]
其中,交互响应条件可以是交互智能合约中对设备运行数据进行匹配响应的条件。可以理解的是,设备运行数据类型和内容不同,与之匹配的交互响应条件也可以不同。交互响应规则可以是交互智能合约中各交互响应条件对应的响应规则,可以用于交互响应条件和对应的设备运行数据确定交互设的当前设备算力状态。
[0057]
图5是本发明实施例一提供的一种基于交互智能合约确定设备算力状态的流程示意图。在一个具体的例子中,如图5所示,交互智能合约本质上可以是由某一终端节点所制定的一种协议,可以预先配置多种交互响应条件和交互响应规则。当第一交互设备提出数据交互请求时,区块链节点可以首先对数据交互请求中包括的设备运行数据作为输入条件,利用交互智能合约内的算力状态智能感知规则来做出响应。具体的,交互智能合约可以首先对第一交互设备当前的设备运行数据与各种交互响应条件进行匹配,以确定匹配的目标交互响应条件,从而根据目标交互响应条件进一步确定与目标交互响应条件相匹配的目标交互响应规则。在确定目标交互响应规则之后,交互智能合约即可结合第一交互设备的当前运行状态,利用目标交互响应规则最终确定第一交互设备的当前设备算力状态。
[0058]
需要说明的是,交互智能合约还可以设置合约状态参数,以表明交互智能合约的有效性。
[0059]
s130、根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量。
[0060]
其中,当前交互数据量可以是当前允许第一交互设备进行数据交互的数据量。
[0061]
s140、根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。
[0062]
相应的,区块链节点在获取到第一交互设备的当前设备算力状态后,即可根据当前设备算力状态确定当前允许第一交互设备进行数据交互的当前交互数据量,并根据确定的当前交互数据量进一步确定第一交互设备当前向第二交互设备发送的当前交互数据。如果第一交互设备本身不是区块链节点,则区块链节点可以将当前交互数据量发送给第一交互设备,以使第一交互设备向第二交互设备发送不超过当前交互数据量的交互数据。如果第一交互设备本身是区块链节点,则可以直接按照当前交互数据量,向第二交互设备发送不超过当前交互数据量的交互数据。
[0063]
可选的,当前交互数据可以是区块链中存储的交互设备的数据。
[0064]
本发明实施例通过区块链节点获取第一交互设备的数据交互请求后,调用交互智能合约根据数据交互请求包括的设备运行数据确定第一交互设备的当前设备算力状态,以根据第一交互设备的当前设备算力状态确定第一交互设备的当前交互数据量,从而根据当前交互数据量确定第一交互设备当前向第二交互设备发送的当前交互数据。相应的,第一交互设备则可以在管控的情况下向第二交互设备发送当前交互数据量的交互数据,解决区块链网络中因大数据高并发导致的网络可靠性和稳定性较低等问题,能够提高基于区块链的数据交互量的可控性,从而提高在大数据下应用区块链网络的可靠性和稳定性。
[0065]
具体应用场景
[0066]
在新型电力系统中,新能源(太阳能和风能等)发电存在随机性、波动性和间歇性问题,故其比传统化石能源发电的可控程度和可预测程度更低,大规模开放应用新能源发电项目对电网发展提出了新的挑战。构建新型电力系统,大量的可再生能源设备接入,电力系统保持供应的同时也要注重减排。同时数以亿计的分布式可再生能源会产生不可估量的能源数据信息,海量的能源数据交互,给新型电力系统的安全稳定行带来潜在的影响。
[0067]
虽然传统智能电网采用分布式结构部署物理设备,但是电网中产生的能源数据仍由中心节点控制,且数据交互过程不进行高度加密,存在数据安全隐患。不仅如此,分布式能源种类繁多、通信环境复杂、运行状态多种多样以及输出特性和控制方法存在差异,能源数据的交互会存在单点故障和泄露等威胁。如,中心节点遭受攻击时会导致大量能源数据泄露、甚至造成区块链网络瘫痪;且形态各异的设备接入电力系统中,海量设备之间交互会产生大量结构、标准不一的数据,给能源数据交互带来更大的挑战。区块链作为一种新型的分布式技术,其能保障能源数据一致性的同时也可以维护电力系统高扩展、高并发以及高效率的进行通信。
[0068]
但是,在电力系统的能源信息中,利用区块链技术处理电力系统的可再生能源信息时,海量的分布式可再生能源信息的交互依然存在不可靠性、实时性低和信息量爆炸等问题。
[0069]
图6是本发明实施例提供的一种能源终端设备基于区块链进行能源数据交互的流程示意图。在一个具体的例子中,如图6所示,可以基于区块链结构,将能源终端设备的能源数据记入区块内,验证智能合约以及通过pop共识机制后可发布上链,进而可以基于区块链对能源数据在管控的条件下进行数据交互,避免区块链网络因大数据并发问题出现可靠性和稳定性的问题。
[0070]
具体的,首先可以获取能源终端设备的能源数据,如发电设备、变送设备和用电设备等能源终端设备的能源数据,包括但不限于电压、电流以及产生和消耗的能量数据等。精确获取能源终端设备的多维度能源数据,保证能源数据的真实有效性,以便进行后续的能源数据交互。
[0071]
其次,将能源数据写入区块中并通过共识机制后发布上链。能源终端设备可作为终端节点,将该设备的能源信息数据打包成区块,而后基于交互数据上链智能合约将能源信息以交易的形式写入能源区块中,再发布到区块链上。其他终端节点可参考区块链上的区块信息与其他终端节点进行能源数据交互。
[0072]
最后,能源终端设备进行数据交互时,可从区块链中获取能源区块,进而获得各终
端节点的能源数据。在交互过程中,可通过交互智能合约感知能源终端设备的当前设备算力状态,以根据当前设备算力状态确定能源终端设备当前可执行的数据交互量,从而有效控制能源数据交互量。通过部署交互智能合约,能源终端设备参照交互智能合约的规则才可对能源数据进行交互,从而避免大量数据并发导致的网络瘫痪等可靠性和稳定性问题,而后将能源数据的交互内容以交易的方式写入到能源区块进行存储,以保证分布式可再生能源接入的信息交互的同时实现交互过程可视化。
[0073]
在一个具体的例子中,假设能源终端设备a请求向能源终端设备b发送1000条能源数据,而区块链节点根据交互智能合约确定的能源终端设备a的当前设备算力状态只能发送100条能源数据,则可以先控制能源终端设备a向能源终端设备b发送100条能源数据。当前轮次的数据交互完成后,区块链可以继续判断能源终端设备a的当前设备算力状态。如果根据能源终端设备a的当前设备算力状态确定能源终端设备a只能发送500条能源数据,则可以先控制能源终端设备a向能源终端设备b发送500条能源数据。以此类推,直至能源终端设备a所有要求交互的能源数据发送完毕。假设能源终端设备a请求向能源终端设备b发送1000条能源数据,而区块链节点根据交互智能合约确定的能源终端设备a的当前设备算力状态只能发送5000条能源数据,则可以直接控制能源终端设备a向能源终端设备b发送1000条能源数据。如此可以避免能源终端设备一次性进行大量数据的交互,导致设备瘫痪,影响区块链网络的可靠性和稳定性。
[0074]
上述技术方案,通过区块链技术解决了分布式可再生能源接入的交互过程中的负载不均衡问题,以及实现了能源数据的永久可记录。采用区块链结构,将分布式可再生能源的能源数据分布于多个节点服务器上,可以保证数据完整性。当部分区块链节点遭到非法攻击时,数据的可靠性可依据其余节点保留的完整数据进行恢复,维持系统的稳定运行。在区块链中,可以通过共识对能源数据的交互过程进行一致性确认,以在确保数据安全性的同时提高请求事务的处理速度。可再生能源数据基于区块链中交互智能合约可以实现透明交互,并保证交互数据的不可篡改性和数据交互的稳定性、高效性。
[0075]
需要说明的是,以上各实施例中各技术特征之间的任意排列组合也属于本发明的保护范围。
[0076]
实施例二
[0077]
图7是本发明实施例二提供的一种基于区块链的数据交互装置的示意图,所述装置配置于区块链节点,如图7所示,所述装置包括:数据交互请求获取模块210、当前设备算力状态确定模块220、当前交互数据量确定模块230以及当前交互数据确定模块240,其中:
[0078]
数据交互请求获取模块210,用于获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息;
[0079]
当前设备算力状态确定模块220,用于调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态;
[0080]
当前交互数据量确定模块230,用于根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量;
[0081]
当前交互数据确定模块240,用于根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。
[0082]
本发明实施例通过区块链节点获取第一交互设备的数据交互请求后,调用交互智能合约根据数据交互请求包括的设备运行数据确定第一交互设备的当前设备算力状态,以根据第一交互设备的当前设备算力状态确定第一交互设备的当前交互数据量,从而根据当前交互数据量确定第一交互设备当前向第二交互设备发送的当前交互数据。相应的,第一交互设备则可以在管控的情况下向第二交互设备发送当前交互数据量的交互数据,解决区块链网络中因大数据高并发导致的网络可靠性和稳定性较低等问题,能够提高基于区块链的数据交互量的可控性,从而提高在大数据下应用区块链网络的可靠性和稳定性。
[0083]
可选的,当前设备算力状态确定模块220具体用于:根据所述设备运行数据和所述交互智能合约确定所述第一交互设备的当前运行状态;根据所述第一交互设备的当前运行状态以及所述交互智能合约确定所述第一交互设备的当前设备算力状态。
[0084]
可选的,交互智能合约包括交互响应条件和交互响应规则;当前设备算力状态确定模块220具体用于:确定所述设备运行数据匹配的目标交互响应条件;根据所述目标交互响应条件确定目标交互响应规则;根据所述设备运行数据和所述目标交互响应规则确定所述第一交互设备的当前运行状态;根据所述第一交互设备的当前运行状态以及所述目标交互响应规则确定所述第一交互设备的当前设备算力状态。
[0085]
可选的,基于区块链的数据交互装置还可以包括:交互数据上链请求获取模块,用于获取各交互设备发送的交互数据上链请求;上链存储模块,用于在确定具备区块生成权限的情况下,采用交互数据上链智能合约对各所述交互设备的交互数据进行数据处理,得到交互数据处理结果,并将所述交互数据处理结果进行上链存储。
[0086]
可选的,所述第一交互设备和所述第二交互设备为电力系统中的能源设备;所述数据交互请求为能源数据交互请求。
[0087]
上述基于区块链的数据交互装置可执行本发明任意实施例所提供的基于区块链的数据交互方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的基于区块链的数据交互方法。
[0088]
由于上述所介绍的基于区块链的数据交互装置为可以执行本发明实施例中的基于区块链的数据交互方法的装置,故而基于本发明实施例中所介绍的基于区块链的数据交互方法,本领域所属技术人员能够了解本实施例的基于区块链的数据交互装置的具体实施方式以及其各种变化形式,所以在此对于该基于区块链的数据交互装置如何实现本发明实施例中的基于区块链的数据交互方法不再详细介绍。只要本领域所属技术人员实施本发明实施例中基于区块链的数据交互方法所采用的装置,都属于本技术所欲保护的范围。
[0089]
实施例三
[0090]
图8示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
[0091]
如图8所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(rom)12、随机访问存储器(ram)13等,其中,存储器存储有可被
至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(rom)12中的计算机程序或者从存储单元18加载到随机访问存储器(ram)13中的计算机程序,来执行各种适当的动作和处理。在ram 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o)接口15也连接至总线14。
[0092]
电子设备10中的多个部件连接至i/o接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0093]
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如基于区块链的数据交互方法。
[0094]
在一些实施例中,基于区块链的数据交互方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由rom 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到ram 13并由处理器11执行时,可以执行上文描述的基于区块链的数据交互方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于区块链的数据交互方法。
[0095]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0096]
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0097]
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、
磁储存设备、或上述内容的任何合适组合。
[0098]
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者触觉输入)来接收来自用户的输入。
[0099]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
[0100]
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
[0101]
实施例四
[0102]
本发明实施例四还提供一种存储计算机程序的计算机存储介质,所述计算机程序在由计算机处理器执行时用于执行本发明上述实施例任一所述的基于区块链的数据交互方法:获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息;调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态;根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量;根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。
[0103]
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(read only memory,rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom,或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0104]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可
读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0105]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、射频(radio frequency,rf)等等,或者上述的任意合适的组合。
[0106]
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域网(wan)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0107]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
[0108]
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

技术特征:


1.一种基于区块链的数据交互方法,其特征在于,应用于区块链节点,包括:获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息;调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态;根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量;根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。2.根据权利要求1所述的方法,其特征在于,所述调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态,包括:根据所述设备运行数据和所述交互智能合约确定所述第一交互设备的当前运行状态;根据所述第一交互设备的当前运行状态以及所述交互智能合约确定所述第一交互设备的当前设备算力状态。3.根据权利要求2所述的方法,其特征在于,所述交互智能合约包括交互响应条件和交互响应规则;所述根据所述设备运行数据和所述交互智能合约确定所述第一交互设备的当前运行状态,包括:确定所述设备运行数据匹配的目标交互响应条件;根据所述目标交互响应条件确定目标交互响应规则;根据所述设备运行数据和所述目标交互响应规则确定所述第一交互设备的当前运行状态;所述根据所述第一交互设备的当前运行状态以及所述交互智能合约确定所述第一交互设备的当前设备算力状态,包括:根据所述第一交互设备的当前运行状态以及所述目标交互响应规则确定所述第一交互设备的当前设备算力状态。4.根据权利要求1所述的方法,其特征在于,在所述获取第一交互设备的数据交互请求之前,还包括:获取各交互设备发送的交互数据上链请求;在确定具备区块生成权限的情况下,采用交互数据上链智能合约对各所述交互设备的交互数据进行数据处理,得到交互数据处理结果,并将所述交互数据处理结果进行上链存储。5.根据权利要求1-4任一所述的方法,其特征在于,所述第一交互设备和所述第二交互设备为电力系统中的能源设备;所述数据交互请求为能源数据交互请求。6.一种基于区块链的数据交互装置,其特征在于,配置于区块链节点,包括:数据交互请求获取模块,用于获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息;当前设备算力状态确定模块,用于调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态;
当前交互数据量确定模块,用于根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量;当前交互数据确定模块,用于根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。7.根据权利要求6所述的装置,其特征在于,所述当前设备算力状态确定模块用于:根据所述设备运行数据和所述交互智能合约确定所述第一交互设备的当前运行状态;根据所述第一交互设备的当前运行状态以及所述交互智能合约确定所述第一交互设备的当前设备算力状态。8.根据权利要求7所述的装置,其特征在于,所述交互智能合约包括交互响应条件和交互响应规则;所述当前设备算力状态确定模块用于:确定所述设备运行数据匹配的目标交互响应条件;根据所述目标交互响应条件确定目标交互响应规则;根据所述设备运行数据和所述目标交互响应规则确定所述第一交互设备的当前运行状态;根据所述第一交互设备的当前运行状态以及所述目标交互响应规则确定所述第一交互设备的当前设备算力状态。9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的基于区块链的数据交互方法。10.一种计算机存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-5中任一项所述的基于区块链的数据交互方法。

技术总结


本发明实施例公开了一种基于区块链的数据交互方法、装置、电子设备及存储介质,方法包括:获取第一交互设备的数据交互请求;其中,所述数据交互请求包括所述第一交互设备的设备运行数据以及所述第一交互设备请求信息交互的第二交互设备的设备信息;调用交互智能合约根据所述设备运行数据确定所述第一交互设备的当前设备算力状态;根据所述第一交互设备的当前设备算力状态确定所述第一交互设备的当前交互数据量;根据所述当前交互数据量确定所述第一交互设备当前向所述第二交互设备发送的当前交互数据。本发明实施例的技术方案能够提高基于区块链的数据交互量的可控性,从而提高在大数据下应用区块链网络的可靠性和稳定性。性。性。


技术研发人员:

黄俊辉 叶晓君 林冠强 陈军宏 郑文杰 孙丹莹 陈杰宏

受保护的技术使用者:

广东电网有限责任公司惠州供电局

技术研发日:

2022.09.06

技术公布日:

2022/11/22

本文发布于:2024-09-20 11:48:28,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/8300.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:区块   数据   设备   所述
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议