CN116405179A - 基于区块链分片和dag的建筑物联网数据管理方法 - Google Patents
基于区块链分片和dag的建筑物联网数据管理方法 Download PDFInfo
- Publication number
- CN116405179A CN116405179A CN202310255276.3A CN202310255276A CN116405179A CN 116405179 A CN116405179 A CN 116405179A CN 202310255276 A CN202310255276 A CN 202310255276A CN 116405179 A CN116405179 A CN 116405179A
- Authority
- CN
- China
- Prior art keywords
- node
- data
- nodes
- dag
- slicing
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000006855 networking Effects 0.000 title claims abstract description 25
- 238000013523 data management Methods 0.000 title claims abstract description 20
- 239000012634 fragment Substances 0.000 claims abstract description 50
- 238000010276 construction Methods 0.000 claims abstract description 17
- 238000004806 packaging method and process Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 12
- 238000013500 data storage Methods 0.000 claims abstract description 7
- 238000005070 sampling Methods 0.000 claims description 20
- 230000003993 interaction Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 6
- 238000013467 fragmentation Methods 0.000 claims description 5
- 238000006062 fragmentation reaction Methods 0.000 claims description 5
- 230000002452 interceptive effect Effects 0.000 claims description 5
- 238000000638 solvent extraction Methods 0.000 claims description 4
- 238000012795 verification Methods 0.000 claims description 4
- 238000013480 data collection Methods 0.000 claims 1
- 230000011218 segmentation Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 description 9
- 238000013021 overheating Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- VYQNWZOUAUKGHI-UHFFFAOYSA-N monobenzone Chemical compound C1=CC(O)=CC=C1OCC1=CC=CC=C1 VYQNWZOUAUKGHI-UHFFFAOYSA-N 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
- G16Y30/10—Security thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种基于区块链分片和DAG的建筑物联网数据管理方法,包括:区块链分片网络构建步骤:获取建筑物联网***中边缘网关和云服务器的节点性能数据,通过自适应负载均衡算法将边缘节点和云服务器节点划分至不同分片后生成分片配置信息文件并存储;DAG区块链网络构建步骤:选取采集速率高于阈值的边缘网关或云服务器节点部署DAG区块链网络,生成DAG配置文件存储在节点本地;数据采集处理步骤:对采集的终端设备数据进行处理后存储至IPFS私有网络;数据封装步骤:对IPFS存储地址进行封装签名形成交易记录;数据存储步骤:对分片配置信息文件进行解析并确认对应分片,调用交易记录中的封装数据类型对应的存储合约上链存储。
Description
技术领域
本发明涉及区块链技术领域和建筑物联网领域,具体涉及一种基于区块链分片和DAG的建筑物联网数据管理方法。
背景技术
区块链技术是一种分布式数据库技术,它使用加密技术来存储和管理数据,以确保数据的安全性和完整性;同时使用智能合约来自动执行交易,以确保交易的安全性和透明度。将区块链技术与建筑物联网结合可以实现更安全、可靠的数据传输和存储,并且实现建筑物联网的自动化和智能化。然而由于物联网与建筑行业的深度融合,建筑物联网的终端设备及采集数据呈指数级增长,数据类型多样化;另外传统区块链单链式结构,每个节点都需要处理和验证每个交易,因此导致区块链与建筑物联网结合面临存储可扩展性和吞吐量较低问题。
针对存储可扩展性和吞吐量较低问题,区块链分片技术作为一种将区块链网络分割成多个独立的子网络,可以有效提高可扩展性和吞吐量。现有技术中,如针对通用物联网领域存储可扩展性问题,提出一种基于节点位置的分片方案,但是该方案并未考虑物联网节点之间的关联性,很有可能会导致跨分片交易频繁,造成资源浪费问题;如为解决区块链分片中频繁跨分片问题,以最优化跨分片交易查询成本为目的设计分片划分算法,但是该方案并未考虑物理网场景中各节点的性能、物理拓扑时延等实际因素,很有可能会造成分片过热的问题。
在建筑物联网中,不同类型的物联网设备计算和存储资源具有较大的差异,例如边缘网关的性能要远高于终端设备,并且设备物理拓扑位置相对固定,不会随其他节点加入退出而变化;而且不同物联网设备节点与其他节点交互频率不一致,例如在建筑中门禁网关节点与消防网关节点交互较为频繁,而与能源网关节点交互较少。将区块链分片技术应用于建筑物联网中解决存储可扩展性问题时,首先,现有分片技术方案通常不考虑建筑物联网实际场景中设备计算、存储性能,边缘节点的采样频率、采样数据量以及数据物理传输时延等因素,导致负载过低的节点聚集产生分片过热问题。其次,在区块链分片网络中,需要进行两次遍历查询获得指定交易数据,第一次遍历查询获得数据所在分片号,第二次根据时间、设备位置、数据类型三个维度获得符合条件的交易数据,两次遍历查询会导致查询效率降低。
据此,如何提出一种建筑物联网数据管理方法,在应用区块链分片技术提高存储可扩展性和吞吐量的同时,避免现有分片方案带来的分片过热和查询效率降低就成了迫切需要解决的问题。
发明内容
针对上述问题,本发明提供一种基于区块链分片和DAG的建筑物联网数据管理方法,其中,包括:
区块链分片网络构建步骤:获取建筑物联网***中所有边缘网关和云服务器的节点性能数据,根据所述节点性能数据通过预设的自适应负载均衡算法将所述边缘节点和云服务器节点划分至不同的分片后生成分片配置信息文件并存储在节点本地;
DAG网络构建步骤:选取各个分片中采集速率高于阈值的边缘网关或云服务器节点部署DAG区块链网络,同样生成DAG配置文件存储在节点本地;
数据采集处理步骤:通过所述边缘网关根据设定的采样频率采集各个智能化子***中的终端设备数据,所述边缘网关对所述终端设备数据进行处理形成多个数据文件并对所述数据文件进行解析后存储至IPFS私有网络,以获取IPFS存储地址;
数据封装步骤:通过所述边缘网关对所述存储地址进行封装后通过节点私钥对封装数据进行签名形成交易记录;
数据存储步骤:通过所述边缘网关对所述分片配置信息文件进行解析,确认所述边缘网关对应地分片后,调用交易记录中的封装数据类型对应存储合约上链存储;
数据查询步骤:对用户的查询请求进行解析形成时间、设备位置和数据类别三维查询条件,根据所述三维查询条件获取交易集合,根据所述交易集合中的交易数据的所述IPFS存储地址从所述IPFS私有网络中获得所述终端设备数据。
本发明相对于现有技术其功效在于:
(1)针对现有基于区块链的建筑物联网数据管理方法面临的区块链网络存储可扩展性和吞吐量较低问题,本发明采用区块链分片与IPFS网络相结合的存储方式,将原来的区块链单链网络分割成多个区块链分片,每个分片各自维护独立的区块链账本,以减少每个全节点的维护的副本数量;另外将区块链分片中的实际数据上传至IPFS私有网络中存储,只在区块链分片网络中存储IPFS地址信息,进一步减轻节点的存储压力。通过上述存储方式可以很大程度释放节点存储资源,提高区块链网络的存储扩展性和吞吐量。
(2)针对现有区块链分片技术应用于建筑物联网中造成的分片过热问题,本发明设计了符合建筑物联网节点性能特征和交互特征的分片划分算法,该算法依据建筑物联网集群节点的实际部署性能数据和节点之间的交互频率划分区块链分片网络,避免性能与交互频率较低的节点聚集,从而避免了分片过热问题。
(3)针对现有区块链分片技术应用于建筑物联网中导致的数据查询效率低的问题,本发明提出将DAG区块链与区块链分片网络相结合的方式,并且在分片网络中设计一种支持时间、设备位置和数据类型的三维条件查询的区块结构3D-Merkle树结构。将确认上链交易构造成3D-Merkle树结构,并生成根哈希值封装进区块头;之后将区块头和全节点IP地址列表上传至DAG区块链以实现快速定位区块的作用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的建筑物联网数据管理方法的流程图;
图2为图1中步骤S1的分步骤流程图;
图3为图1中步骤S12的分步骤流程图;
图4为图1中步骤S3的分步骤流程图;
图5为图1中步骤S5的分步骤流程图;
图6为图1中步骤S6的分步骤流程图;
图7为本发明的建筑物联网数据管理方法的应用流程图;
图8为步骤S12的应用流程图;
图9为3D-Merkle树构造方法流程示意图;
图10为3D-Merkle树根哈希生成方法流程示意图;
图11为两级索引方法流程示意图;
图12为3D-Merkle树三维条件查询方法流程示意图;
图13为基于区块链分片和DAG的建筑安防设备数据管理方法的模型示意图;
图14为基于区块链分片和DAG的建筑安防数据管理方法流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部分。
关于本文中所使用的“第一”、“第二”、“S1”、“S2”、…等,并非特别指称次序或顺位的意思,也非用以限定本发明,其仅为了区别以相同技术用语描述的元件或操作。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
请参照图1,图1为本发明的建筑物联网数据管理方法的流程图。如图1所示,本发明的一种基于区块链分片和DAG的建筑物联网数据管理方法包括:
区块链分片网络构建步骤S1:获取建筑物联网***中所有边缘网关和云服务器的节点性能数据,根据所述节点性能数据通过预设的自适应负载均衡算法将所述边缘节点和云服务器节点划分至不同的分片后生成分片配置信息文件并存储在节点本地;
DAG网络构建步骤S2:选取各个分片中采集速率高于阈值的边缘网关或云服务器节点部署DAG区块链网络,同样生成DAG配置文件存储在节点本地;
数据采集处理步骤S3:通过所述边缘网关根据设定的采样频率采集各个智能化子***中的终端设备数据,所述边缘网关对所述终端设备数据进行处理形成多个数据文件并对所述数据文件进行解析后存储至IPFS私有网络,以获取IPFS存储地址;
数据封装步骤S4:通过所述边缘网关对所述存储地址进行封装后利用节点私钥对封装数据进行签名形成交易记录;
数据存储步骤S5:通过所述边缘网关对所述分片配置信息文件进行解析,确认所述边缘网关对应地分片后,调用交易记录中的封装数据类型对应的存储合约上链存储;
数据查询步骤S6:对用户的查询请求进行解析形成时间、设备位置和数据类型三维查询条件,根据所述三维查询条件获取交易集合,根据所述交易集合中的交易数据的所述IPFS存储地址从所述IPFS私有网络中获得所述终端设备数据。
通过本发明的建筑物联网数据管理方法能够于使每个区块链分片数据负载均衡,提高数据吞吐量和存储可扩展性,并且在DAG区块链的支持下,提高数据查询效率。
其中,在本发明中,通过采集速率反映存储资源和计算资源(CPU处理效率)。
请参照图2-图3,图2为图1中步骤S1的分步骤流程图;图3为图2中步骤S12的分步骤流程图。如图2-图3所示,所述分片步骤S1包括:
步骤S11:获取建筑物联网***中所有边缘节点和云服务器的节点性能数据,确定边缘网关和云服务器节点的数量,各个节点的空间位置编号和数据类型编号,后将所述性能数据、节点数量以及节点空间位置和数据类型编号写入节点本地配置文件;
步骤S12:部署区块链分片网络环境、DAG区块链网络环境及星际文件***环境,利用自适应负载均衡算法根据节点性能数据将边缘网关和云服务器节点划分至不同的分片,并将节点与分片的对应关系写入所述节点本地配置文件;另外选取各个分片性能较高的边缘网关或云服务器节点部署DAG区块链网络,同样生成DAG配置文件存储在节点本地。
其中,所述步骤S12包括:
步骤S121:获取各节点的性能数据集合和分片数量;
步骤S122:根据所述节点采样数据量、计算资源和网络时延之间的关系计算得到各节点的采样频率,根据所述存储资源、采样频率和计算资源之间的关系计算得到各节点的负载值;
步骤S123:遍历所有节点,如果节点的负载值低于低负载标准值,则将所述节点加入低负载节点集合;如果节点的负载值高于高负载标准值,则将所述节点加入高负载节点集合;其余节点加入适宜负载集合;
步骤S124:将所述高负载节点集合及所述低负载节点集合按照低负载集合从小到大,高负载集合从大到小规则进行排序后,将两个集合的节点按顺序对分片数量取余并分配至对应分片,分片之后更新各节点为已分片状态;
步骤S125:将所述适宜负载集合的节点根据节点之间的交互积分表计算与各分片的交互积分总和,将节点分配至交互积分总和最大的分片;
步骤S126:输出最终分片结果,生成分片配置文件保存在各节点本地及DAG区块链中。
步骤S127:分片完成之后,分片网络中同样具有DAG区块链节点身份的边缘网关或服务器负责实时更新节点交互积分表,每隔一设定时间更新各节点的最新存储资源和计算资源,计算分片负载判断分片状态,若过热分片超过一阈值,则重新分片。
请参照图4,图4为图1中步骤S3的分步骤流程图。如图4所示,所述数据采集处理步骤S4包括:
步骤S41:通过利用椭圆曲线算法生成区块链分片节点的公、私钥后,将公钥广播至区块链分片网络中;
步骤S42:通过所述边缘网关调用数据采集接口,按照采样频率批量采集连接到该边缘网关节点的各个智能化子***中的终端设备数据;
步骤S43:通过所述边缘网关将采集的所述终端设备数据转换为Json或XML格式,并分类成多个数据文件,根据网关本地的配置文件解析所述数据文件的时间戳、设备位置编号及数据类型编号,并且将所述数据文件存储在星际文件***中获取所述存储地址。
进一步地,所述数据封装步骤S3包括:通过边缘网关对所述IPFS存储地址进行时间戳、设备位置编号以及数据类型编号三个维度的封装获得封装数据,之后利用边缘网关私钥对所述封装数据进行签名形成所述交易记录。
请参照图5,图5为图1中步骤S5的分步骤流程图。如图5所示,所述数据存储步骤S5包括:
步骤S51:通过边缘网关解析本地分片配置信息文件,判断所述边缘网关所属分片后,将所述交易记录广播至指定的区块链分片网络进行共识,验证有效的交易记录顺序排列,调用3D-Merkle树构造方法对确认存进区块的交易进行处理,构造完成后调用M-HASH方法生成3D-Merkle根哈希并封装进区块头;
步骤S52:通过区块链分片网络中同样具有DAG区块链节点身份的边缘网关或云服务器节点将区块头上传至DAG区块链网络同时,并将全节点IP地址列表添加至区块中,之后对区块进行共识验证并分布式存储。
其中,所述步骤S51包括:
a)首先将交易集合构造为3D-Merkle树节点集合;
b)获取当前正在构造3D-Merkle树的层数Depth和节点集合Node,通过Depth对节点维度长度3取模运算,得到当前层的划分维度splitDim;
c)将节点集合根据划分维度splitDim进行从小到大排序,取中间节点作为根节点,比中间节点小的节点作为Root的左子树节点,比中间节点大的节点作为Root的右子树节点;
d)对左、右子树节点集合递归执行前述步骤b)和c),直到所有节点完成划分。
其中,所述步骤S51还包括:
e)获取3D-Merkle树节点Root_node;
f)判断所述3D-Merkle树节点Root_node是否是叶子结点,如果是叶子节点则计算Root_node节点本身的哈希值,作为当前树的根哈希值赋值给Root_node的M-Hash字段;如果不是则将左、右孩子节点分别赋值给Root_node,递归执行前述步骤e)和f)计算左右子树的根哈希值,其次将左右子树的根哈希与Root_node本身的哈希值做连接最终获得3D-Merkle根哈希,具体地说如果是叶子节点则:Root_node.M-Hash=hash(Root_node);否则:Root_node.M-hash=Root_node.hash∪M-HASH(left)∪M-HASH(right);否则将左、右孩子节点分别赋值给Root_node,递归执行前述步骤e)和f),最终获得3D-Merkle根哈希。
请参照图6,图6为图1中步骤S6的分步骤流程图。如图6所示,所述数据查询步骤S6还包括:
步骤S61:用户通过终端设备向后台服务器发起查询请求,服务器验证用户身份,并解析所述查询请求形成具有时间、设备位置和数据类型的三维查询条件,服务器调用两级索引接口快速获取符合查询条件的交易集合;
步骤S62:服务器收到交易集合后,使用对应边缘网关节点的公钥验证交易签名,再根据交易数据中存储地址获取存储在IPFS私有网络中的真实数据,并返回给用户。
以下请参照图7-图12,对本发明建筑物联网数据管理方法进行具体说明如下,该方法的流程图如图7所示,具体包括以下步骤:
St1:确定建筑物联网***中的网络拓扑,即获取建筑物联网***中所有边缘节点和云服务器的性能数据Node_Performance,确定边缘网关和云服务器节点的数量,各个节点的空间位置编号P和数据类型编号D。之后将Node_Performance写入节点本地配置文件。
具体的,所述建筑物联网***网络拓扑是指将建筑物内的各种设备、传感器、控制器、网关等设备连接起来,形成一个完整的端-边-云网络***,以实现建筑物内部的设备之间的交互和数据传输。
需要补充说明的是,传感器、网关等设备一旦加入建筑物联网中则不会随意退出或加入,并且不会随新节点的加入而经常变换位置;另外终端设备的计算能力和存储能力有限,无法满足区块链节点的需求,因此不能作为区块链节点,所以在建筑物联网中区块链只能部署在边缘端和云端节点中。
具体的,所述节点的性能数据Node_Performance包含节点ID、节点的计算资源C、节点的存储资源M、节点的采样数据量D、与其他节点的交互积分表T、节点的采样频率F、节点连接终端设备的平均物理时延Tr、节点的负载值Load、节点的负载状态State。
需要补充说明的是,为了更好的量化边缘节点的计算资源C,设C为每秒节点处理的数据量;交互积分表T={t1,...,ti,...,tn}表示当前节点与其他节点的交互频率;节点的采样频率F其实是由采样数据量D、计算资源C和平均物理时延Tr共同决定,其关系表示为:F=D/C+Tr;节点的负载值Load是由存储资源M、计算资源C和交互频率F共同决定,其关系表示为:Load=M/CF;当节点为过低负载节点时State=0,适宜负载节点时State=1,过高负载节点时State=2。
具体的,所述边缘节点本地配置文件包括但不限于:节点的性能数据Node_Performance、节点连接终端设备及自身的物理位置编号P和数据类型编号D、节点与区块链分片的对应关系、同属一个区块链分片的节点信息。
需要补充说明的是,节点信息包括但不限于节点编号、所属区块链、节点IP地址、节点通信端口号。
St2、部署区块链分片网络环境、DAG区块链网络环境及星际文件***(IPFS)环境。利用自适应负载均衡算法(Adaptive Load Balancing Algorithm,ALBA)根据节点性能数据Node_Performance将边缘网关和云服务器节点划分至不同的分片,并将节点与分片的对应关系写入配置文件并保存在节点本地以及存储在DAG区块链中。由于云服务器计算和存储资源较大,可以将DAG区块链和IPFS私有网络部署在所有的云服务器节点或者选取每个分片中性能较高的边缘网关或云服务节点部署DAG区块链网络和IPFS网络。其中,在本实施例中,以私有网络为星际文件***(IPFS)作为较佳的实施方式。
具体的,所述区块链分片网络环境是将建筑物联网中边缘网关和云服务器节点划分成多个节点集群,每个集群节点运行独立的Hyperledger Fabric区块链网络。
需要补充说明的是,充当区块链节点的网关/服务器可以加入到分片网络的一条或多条分片中,需要根据场景需求和网关/服务器的计算、存储资源综合考虑。
需要补充说明的是,网关或服务器发起的数据存储请求会直接上传至网关或服务器节点所对应的区块链分片网络中,仅由该分片内的节点对存储数据进行共识确认,而其他节点无需耗费计算资源,因而在高并发场景下本申请所提供的数据管理方法能够具有较好的并发处理性能。
具体的,所述DAG区块链网络环境支持更高的交易吞吐量,更快的交易时间,与区块链分片网络高吞吐量特点相对应,此处用于接收各个分片区块的区块头并存储。而DAG区块链部署在从各个分片中选取出的计算资源和存储资源较高的网关或服务器节点。
需要补充说明的是,建筑物联网用户发起的数据查询请求首先会上传至DAG区块链中查询符合条件的区块头,通过区块头中存储的分片号、区块高度及节点IP地址快速定位数据区块,然后在再查询符合条件的交易集合。
具体地,所述IPFS是一种分布式的文件存储***,以文件形式存储数据,通过文件内容生成唯一的哈希值来标识文件;IPFS用于存储建筑物联网场景产生的物联网数据,从而减轻区块链网络的存储、带宽压力。
具体地,所述建筑物联网包括但不限于由建筑内部照明、监控、门禁、环境监测等设备构成的各类智能化子***。
所述智能化子***包括但不限于视频监控***、消防***、楼控***、环境监测***和/或出入口控制***。
具体地,所述建筑物联网集群是指由一个或多个楼宇、园区构成的集群。
具体地,所述智能化子***所属分类包括但不限于安防类、通行类、通讯类和/或能耗类***。
具体的,所述ALBA算法如图8所示,具体步骤如下所示:
Step1:获取各节点的性能数据集合Node={node1,...nodei,...noden}和分片数量m。其中nodei={ID,C,M,D,T,Tr,State}。
Step2:根据节点性能之间的关系F=D/C+Tr,计算得到各节点的采样频率F;根据关系L=M/FC计算得到各节点的负载值Load。
Step3:遍历所有区块链节点,如果节点的负载值Load低于低负载标准值X1,则将节点加入低负载节点集合LowLoad;如果Load高于高负载标准值X2,则将节点加入高负载节点集合HighLoad;其余节点加入适宜负载集合AvgLoad。
具体的,所述低负载标准值X1是指低负载节点的划分标准,如果节点的负载值Load小于X1,则认为节点为低负载节点;另外X1的计算方式为:同理,X2为高负载节点的划分标准,X2的计算方式为:/>节点负载值包含于[X1,X2]的节点称之为适宜负载节点。
Step4:将LowLoad集合节点按照负载值从小到大排序,HighLoad集合节点按照负载值从大到小排序,将两个集合节点按顺序分配至i%m分片,分片之后更新各节点State状态。
Step5:将AvgLoad集合节点按照节点之间的交互积分表T进行分片,即待分片节点与分片内节点的交互积分总和最大。
Step6:输出最终分片结果:Chain={chain1,...chaini,...chainn}。
Step7:分片完成之后,在区块链分片网络中同样具有DAG网络节点身份的边缘网关或云服务器实时更新节点交互积分表,每隔时间T更新各节点的最新存储资源M和计算资源C,计算分片负载判断分片状态,若过热分片超过1/3m,则调用该分片算法重新分片。
具体的,所述每隔时间T更新各节点计算C和存储资源M是由于在分片网络的运行过程中C和M是不断变化的,而节点负载值Load=M/CF,可能T时间后原本高负载节点变为低负载节点。
具体的,所述热分片是指低负载节点的数量超过分片内节点总数的51%,当分片内低负载节点越多,分片共识能力越差,导致数据堆积严重造成分片过热问题;同理冷分片则是高负载节点超过分片内节点总数的51%。
St3、生成区块链分片节点的公私钥。首先利用椭圆曲线算法(Elliptic CurveCryptography,ECC)生成节点的私钥Key_pri,其次利用私钥生成节点公钥Key_pub=Key_pri*G,G表示椭圆曲线上的生成点,之后将节点公钥广播至区块链分片网络中。
具体的,所述区块链节点的公私钥是一种加密技术,其中公钥是可以在区块链网络中共享的,而私钥则是保密的。当边缘网关采集到设备数据时,首先利用网关私钥对数据进行签名操作,然后将数据上传到区块链网络,其他节点对数据进行验证时需要用发起节点的公钥验签,保证数据未被篡改。
St4、建筑物联网中边缘网关调用数据采集接口,按照采样频率批量采集连接到该节点的各个智能化子***中的终端设备数据。
具体地,所述数据采集接口是指物联网设备厂家为物联网设备预设的专门供其他实体获取其数据的接口。
具体地,所述物联网数据包括但不限于设备运行数据、设备状态信息和/或设备采集的周围环境信息。
St5、边缘网关将采集的数据转换为Json或XML格式,并分类成多个数据文件fi,根据网关本地的配置文件解析fi的时间戳、设备位置编号及数据类型编号,并且将fi存储在IPFS私有网络中获取存储地址fi_ipfs_addr。
具体的,所述文件fi的时间戳是指网关批量采集设备数据的时间;
具体的,所述设备位置编号首先将设备位置通过经纬度来衡量,然后通过GeoHash算法将经纬度转换为可比较大小的字符串编号记录在边缘网关本地配置文件中。
具体地,所述存储地址fi_ipfs_addr是指将数据文件存储到IPFS私有网络后,所返回的标识文件存储地址的唯一哈希值。
St6、边缘网关对fi_ipfs_addr进行时间戳T、设备位置编号P以及数据类型编号D的封装,之后利用私钥Key_pri对封装数据进行签名形成交易记录Txi。
具体的,所述交易记录Txi的数据结构如表1所示,包括但不限于网关ID:gateway_ID、时间戳timestamp、设备位置编号porsition、数据类型编号datatype、IPFS存储地址fi_ipfs_addr、原始数据文件fi_hash值、签名sign。
表1
gateway_ID | timestamp | porsition | datatype | fi_ipfs_addr | fi_hash | sign |
具体的,所述数据网关ID用于唯一标识数据网关,在初始化时已为数据网关分配ID;
具体的,所述原始数据文件hash值是对转换后的原始Json或XML文件进行hash运算得到的结果。
St7、边缘网关解析本地分片配置信息文件,判断网关所属分片,将交易记录Txi广播至指定的区块链分片网络进行共识,验证有效的Txi顺序排列,调用3D-Merkle树构造方法Create3DMerkle()对确认存进区块的交易进行处理,构造完成后调用M-HASH()方法生成3D-Merkle根哈希并封装进区块头。
具体的,所述Txi顺序排列是指将共识节点验证通过的交易记录Tx按照时间戳顺序排列,并按照顺序打包进区块,现有区块链中每个区块的大小约为1—2MB。
具体的,所述3D-Merkle树构造方法Create3DMerkle()如图9所示,具体步骤如下所示:
Step1:首先将交易集合Tx={tx1,...txi,...txn}构造为3D-Merkle树节点集合Node={node1,...nodei,...noden}。
具体的,所述3D-Merkle树节点node如表2所示,包括但不限于三维度坐标Point、左孩子节点Left、右孩子节点Right、交易记录哈希值Tx_hash、节点哈希值Node_hash、节点的3D-Merkle哈希值M_hash。
表2
Left | Point | Tx_hash | Node_hash | M_hash | Right |
具体的,所述三维坐标Point包括节点所对应交易的时间戳T、设备位置编号P及数据类型编号D。
具体的,所述左孩子节点Left通过将左孩子节点哈希值Node_hash赋值给根节点的Left实现根节点与左孩子节点的连接,右孩子同理。
具体的,所述节点哈希值Node_hash是指将节点的各个字段相连接并做哈希运算得到指定长度的哈希值。
具体的,所述3D-Merkle哈希值M_hash是通过将左右孩子的M_hash值连接得到的。
需要说明的是,如果当前节点是叶子节点则M_hash值等于Node_hash,另外如果节点只有一个孩子节点,则将孩子节点复制一份生成M_hash。
Step2:获取当前正在构造3D-Merkle树的层数Depth和节点集合Node,通过Depth对节点维度长度取模运算,即Depth%len(nodei.Point),得到当前层的划分维度splitDim。
需要补充说明的是,3D-Merkle树的构造过程是按层Depth从上到下依次构造。
具体的,所述当前层的划分维度splitDim是指当前层的各个子树按照splitDim维度构造根节点。
需要补充说明的是,前层的划分维度splitDim是通过当前层深度Depth对节点维度长度取模得到,在建筑物联网中数据由时间T、位置P和数据类型D共同刻画,即节点的维度长度为3。
Step3:将节点集合根据维度splitDim进行从小到大排序,取中间节点作为根节点3D-Merkle Root。比中间节点小的节点作为Root的左子树节点,比中间节点大的节点作为Root的右子树节点。
Step4:对左右子树节点集合递归执行Step2和Step3,直到所有节点完成划分。
具体的,所述M-HASH()方法中3D-Merkle根哈希生成步骤如图10所示,具体步骤如下所示:
Step1:获取3D-Merkle节点Root_node。
Step2:判断Root_node是否是叶子结点,如果是叶子节点则:Root_node.M-Hash=hash(Root_node);否则:Root_node.M-hash=Root_node.hash∪M-HASH(left)∪M-HASH(right)。
Step3:将左右孩子节点分别赋值给Root_node,递归执行Step1和Step2,最终获得3D-Merkle根哈希。
St8、分片网络中的云服务器节点将区块头上传至DAG区块链网络同时,并将全节点IP地址列表IP_list添加至区块中,之后对区块进行共识验证并分布式存储。
具体的,所述区块头包含的字段如表3所示,包括但不限于版本号、分片号、区块高度、前一区块哈希值、所有交易记录时间戳范围[Tmin,Tmax]、所有交易记录位置编号范围[Pmin,Pmax]、所有交易记录数据类型编号范围[Dmin,Dmax]、3D-Merkle树根。
表3
具体的,所述版本号是指区块链的软件版本号,它用于标识不同的区块链软件版本,以便网络中的节点可以正确识别和处理来自不同版本的区块。
具体的,所述区块高度是指当前区块是区块链中的第几个区块,是一个整数,每添加一个区块高度就会增加一。
St9、用户通过终端设备向后台服务器发起查询请求Req={<...>,<t>,<p>,<d>},服务器验证用户身份,并解析查询请求形成三维查询条件[T/P/D]。服务器调用两级索引Two_level_index()接口快速获取符合查询条件的交易集合Data。
具体的,所述终端设备包括但不限于手机、平板和笔记本电脑。
具体的,所述后台服务器同样也作为区块链节点而存在,并在后台服务器中部署区块链应用程序。
具体的,所述两级索引Two_level_index()接口如图11所示,具体步骤如下所示:
Step1:获取三维查询条件[Tmin,Tmax],[Pmin,Pmax],[Dmin,Dmax]。
Step2:按照广度优先遍历算法查询DAG区块链中的区块头。
具体的,所述DAG区块链广度优先遍历算法规则如下:
(1)首先定义未访问节点队列Seq。
(2)从DAG的根节点DAG_root开始,将DAG_root标记为已访问状态。
(3)将DAG_root的邻接节点加入Seq,如果Seq为空则遍历结束。
(4)否则取出Seq中的第一个节点DAG_node,将其标记为已访问状态,然后将DAG_node的邻接未访问节点加入Seq。
(5)重复步骤(4)直到Seq为空结束。
Step3:如果T/P/D三个维度查询条件与区块头中的查询条件同时存在交集[T’min,T’max],[P’min,P’max],[D’min,D’max],则通过区块头中的分片号、区块高度以及区块体中全节点IP_list快速定位区块位置。
需要补充说明的是,只有当区块头中[T/P/D]三维坐标范围与三维查询条件存在交集时,区块体中才会存在符合条件的交易记录,在建筑物理网中查询经纬度为[W,E]的监控设备DEV_00001在12:00上传180MB的数据类别编号为DataType_00001监控视频数据,T必须包含12:00,P必须包含[W,E],D必须包含DataType_00001。
Step4:调用3D-Merkle_index()接口快速查询区块内符合三维查询条件的交易集合并返回。
Step5:如果T/P/D三个维度查询条件与区块头中的查询条件不同时存在交集,则继续查询下一区块。
具体的,所述Step4中3D-Merkle_index()接口如图12所示,具体步骤如下所示:
Step1:获取3D-Merkle树的根节点Root,查询树的当前层数Depth,查询条件[T’min,T’max],[P’min,P’max],[D’min,D’max]。
Step2:首先根据Depth%3判断当前层根据哪一维度W进行查询,如果Depth%3=0,W=T;如果Depth%3=1,W=P;如果Depth%3=2,W=D。
Step3:如果W=0:
Step3-2:如果Root.T<T’min,则查询Root的左孩子节点Left,即3D-Merkle_index(Root.Left,Data,Depth+1)。
Step3-3:如果Root.T>T’max,则查询Root的右孩子节点Right,即3D-Merkle_index(Root.Right,Data,Depth+1)。
Step4:当W=1,2时与Step3同理,最后返回符合查询条件的交易集合Data。
St10、服务器收到交易集合Data后,首先使用对应边缘网关节点的公钥Key_pub验证交易签名的正确性,保证交易数据未被篡改,其次根据交易数据中fi_IPFS_addr获取存储在IPFS私有网络中的真实数据,并返回给用户。
具体的,所述公钥验证交易签名的正确性是指利用发起交易边缘网关的公钥验证发起交易边缘网关私钥对交易的签名。
以下请参照图13-图14,图13为基于区块链分片和DAG的建筑安防设备数据管理方法的模型示意图;图14为基于区块链分片和DAG的建筑安防数据管理方法流程示意图。如图13-图14,以下结合图13-14,以采集安防数据为例,对本发明进行说明,本申请实施例包括以下步骤:
Step1、安防边缘网关调用数据采集接口,按照2s的采样频率从某建筑10楼采集安防数据。
Step2、边缘网关将采集的安防数据转换为Json,并根据不同的采样设备分成3份数据文件F={f1,f2,f3},根据网关本地配置文件解析F的时间戳、设备位置编号及数据类型编号,解析结果为F’={[12:00/[50,60]/datatype_00001],[12:02/[50,70]/datatype_00001],[12:04/[50,90]/datatype_00001]},并且将F存储在IPFS中获得存储地址F_addr={f1_ipfs_addr,f2_ipfs_addr,f3_ipfs_addr}。
Step3、边缘网关对F_addr进行时间戳T、设备位置编号P及数据类型D的封装,结果为Tx={tx1,tx2,tx3},之后利用网关私钥Key_pri对封装的三个交易数据进行签名。
Step4、边缘网关解析本地分片配置信息文件,确认安防数据存储在分片n中,将交易Tx广播到分片网络中共识,调用分片网络中的存储合约Shard_S_contract(包括Create3DMerkle()方法和M-HASH()方法)执行上链操作。
Step5、分片网络中的云服务器节点将区块头和全节点IP_list上传至DAG区块链数据存储合约DAG_S_contract执行上链操作。
Step6、企业用户User1通过手机向后台服务器发起查询请求Req={<...>,<12:00>,<[50,60]>,<datatype_00001>},服务器验证User1的身份同时解析形成三维查询条件[12:00/[50,60]/datatype_00001],服务器调用两级索引接口获取tx1。
Step7、服务器收到tx1后,使用边缘网关公钥Key_pub验证交易签名正确性,保证交易数据未被篡改;根据交易数据中f1_ipfs_addr获取存储在IPFS私有网络中的真实数据并返回给User1。
综上所述,本发明使每个区块链分片数据负载均衡,提高数据吞吐量和存储可扩展性,并且在DAG区块链和KD树数据结构的支持下,提高数据查询效率。
尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于区块链分片和DAG的建筑物联网数据管理方法,其特征在于,包括:
区块链分片网络构建步骤:获取建筑物联网***中所有边缘网关和云服务器的节点性能数据,根据所述节点性能数据通过预设的自适应负载均衡算法将所述边缘节点和云服务器节点划分至不同的分片后生成分片配置信息文件并保存在节点本地;
DAG网络构建步骤:选取各个分片中采集速率高于一阈值的边缘网关或云服务器节点部署DAG区块链网络,生成DAG配置文件存储在节点本地;
数据采集处理步骤:通过所述边缘网关根据设定的采样频率采集各个智能化子***中的终端设备数据,所述边缘网关对所述终端设备数据进行处理形成多个数据文件并对所述数据文件进行解析后存储至IPFS私有网络,以获取IPFS存储地址;
数据封装步骤:通过所述边缘网关对所述存储地址进行封装后通过节点私钥对封装数据进行签名形成交易记录;
数据存储步骤:通过所述边缘网关对所述分片配置信息文件进行解析,确认所述边缘网关对应地分片后,调用交易记录中的封装数据类型对应的存储合约上链存储。
2.如权利要求1所述的建筑物联网数据管理方法,其特征在于,还包括:
数据查询步骤:对用户的查询请求进行解析形成时间、设备位置及数据类别的三维查询条件,根据所述三维查询条件获取交易集合,根据所述交易集合中的交易数据的所述存储地址从所述私有网络中获得所述终端设备数据。
3.如权利要求1所述的建筑物联网数据管理方法,其特征在于,所述分片步骤包括:
步骤S11:获取建筑物联网***中所有边缘节点和云服务器的节点性能数据和各个节点的空间位置、数据类型编号,其中节点性能数据包括节点的计算资源、节点的存储资源、节点的采样数据量、与其他节点的交互积分表以及网络时延,后将所述性能数据写入节点本地配置文件;
步骤S12:部署区块链分片网络环境、DAG区块链网络环境及星际文件***环境,利用自适应负载均衡算法根据节点性能数据将边缘网关和云服务器节点划分至不同的分片,并将节点与分片的对应关系写入所述节点本地配置文件。
4.如权利要求3所述的建筑物联网数据管理方法,其特征在于,所述步骤S12包括:
步骤S121:获取各节点的性能数据集合和分片数量;
步骤S122:根据所述节点采样数据量、计算资源和网络时延之间的关系计算得到各节点的采样频率,根据所述存储资源、所述采样频率和所述计算资源之间的关系计算得到各节点的负载值;
步骤S123:遍历所有节点,如果节点的负载值低于低负载标准值,则将所述节点加入低负载节点集合;如果节点的负载值高于高负载标准值,则将所述节点加入高负载节点集合;其余节点加入适宜负载集合;
步骤S124:将所述高负载节点集合及所述低负载节点集合按照设定规则进行排序后,将两个集合的节点按顺序对分片数量取余并分配至对应分片,分片之后更新各节点为已分片状态;
步骤S125:将所述适宜负载集合的节点根据节点之间的交互积分表计算与各个分片的交互积分总和,将节点分配至交互积分总和最大的分片;
步骤S126:输出最终分片结果,生成分片配置文件保存在各节点本地及DAG区块链中。
步骤S127:分片完成之后,既为DAG区块链节点又为分片节点的边缘网关或云服务器负责实时更新节点交互积分表,每隔一设定时间更新各节点的最新存储资源和计算资源,计算分片负载判断分片状态,若过热分片超过一阈值,则重新分片。
5.如权利要求3所述的建筑物联网数据管理方法,其特征在于,所述数据采集处理步骤包括:
步骤S31:利用椭圆曲线算法生成区块链分片节点的公、私钥后,将公钥广播至区块链分片网络中;
步骤S32:通过所述边缘网关调用数据采集接口,按照采样频率批量采集连接到所述边缘网关的各个智能化子***中的终端设备数据;
步骤S33:通过所述边缘网关将采集的所述终端设备数据转换为Json或XML格式,并分类成多个数据文件,根据网关本地的配置文件解析所述数据文件的时间戳、设备位置编号及数据类型编号,并且将所述数据文件存储在星际文件***中获取所述存储地址。
6.如权利要求5所述的建筑物联网数据管理方法,其特征在于,所述数据封装步骤包括:通过边缘网关对所述存储地址进行时间戳、设备位置编号以及数据类型编号三个维度的封装获得封装数据,之后利用所述边缘网关私钥对所述封装数据进行签名形成所述交易记录。
7.如权利要求6所述的建筑物联网数据管理方法,其特征在于,所述数据存储步骤包括:
步骤S51:通过边缘网关解析本地分片配置信息文件,判断所述边缘网关所属分片后,将所述交易记录广播至指定的区块链分片网络进行共识,验证有效的交易记录顺序排列,调用3D-Merkle树构造方法对确认存进区块的交易进行处理,构造完成后调用M-HASH方法生成3D-Merkle根哈希并封装进区块头;
步骤S52:通过区块链分片网络中同样具有DAG区块链节点身份的边缘网关或云服务器节点将区块头上传至DAG区块链网络同时,并将全节点IP地址列表添加至区块中,之后对区块进行共识验证并分布式存储。
8.如权利要求7所述的建筑物联网数据管理方法,其特征在于,所述步骤S51包括:
a)首先将交易集合构造为3D-Merkle树节点集合;
b)获取当前正在构造3D-Merkle树的层数Depth和节点集合Node,通过Depth对节点维度长度取模运算,得到当前层的划分维度splitDim;
c)将节点集合根据划分维度splitDim进行从小到大排序,取中间节点作为根节点,比中间节点小的节点作为Root的左子树节点,比中间节点大的节点作为Root的右子树节点;
d)对左、右子树节点集合递归执行前述步骤b)和c),直到所有节点完成划分。
9.如权利要求8所述的建筑物联网数据管理方法,其特征在于,所述步骤S51还包括:
e)获取3D-Merkle树节点Root_node;
f)判断所述3D-Merkle树节点Root_node是否是叶子结点,如果是叶子节点则计算Root_node节点本身的哈希值,作为当前树的根哈希值赋值给Root_node的M-Hash字段;如果不是则首先将左、右孩子节点分别赋值给Root_node,递归执行前述步骤e)和f)计算左右子树的根哈希值,其次将左右子树的根哈希与Root_node本身的哈希值做连接最终获得3D-Merkle根哈希。
10.如权利要求2所述的建筑物联网数据管理方法,其特征在于,所述数据查询步骤还包括:
步骤S61:用户通过终端设备向后台服务器发起查询请求,服务器验证用户身份,并解析所述查询请求形成具有时间、空间位置、数据类别的三维查询条件,服务器调用两级索引接口快速获取符合查询条件的交易集合;
步骤S62:服务器收到交易集合后,使用对应边缘网关节点的公钥验证交易签名,再根据交易数据中存储地址获取存储在IPFS私有网络中的真实数据,并返回给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310255276.3A CN116405179A (zh) | 2023-03-16 | 2023-03-16 | 基于区块链分片和dag的建筑物联网数据管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310255276.3A CN116405179A (zh) | 2023-03-16 | 2023-03-16 | 基于区块链分片和dag的建筑物联网数据管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116405179A true CN116405179A (zh) | 2023-07-07 |
Family
ID=87013364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310255276.3A Pending CN116405179A (zh) | 2023-03-16 | 2023-03-16 | 基于区块链分片和dag的建筑物联网数据管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116405179A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117440019A (zh) * | 2023-12-15 | 2024-01-23 | 四川开物信息技术有限公司 | 一种基于区块链的实验室物联网方法与*** |
-
2023
- 2023-03-16 CN CN202310255276.3A patent/CN116405179A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117440019A (zh) * | 2023-12-15 | 2024-01-23 | 四川开物信息技术有限公司 | 一种基于区块链的实验室物联网方法与*** |
CN117440019B (zh) * | 2023-12-15 | 2024-02-13 | 四川开物信息技术有限公司 | 一种基于区块链的实验室物联网方法与*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8463850B1 (en) | System and method of algorithmically generating a server side transaction identifier | |
US20130191523A1 (en) | Real-time analytics for large data sets | |
KR20190055721A (ko) | KV-SSD를 사용하여 확장성있는 객체 스토리지를 구성하고 액세스하는 방법 및 KV-SSD, NVMe-SSD 및 기타 플래시 장치의 하이브리드(HUBBRID) 백엔드 스토리지 계층 | |
US20120047107A1 (en) | System and method for implementing on demand cloud database | |
CN110798517B (zh) | 去中心化集群负载均衡方法、***、移动终端及存储介质 | |
CN111597148B (zh) | 用于分布式文件***的分布式元数据管理方法 | |
CN103150394A (zh) | 面向高性能计算的分布式文件***元数据管理方法 | |
WO2016054818A1 (zh) | 数据处理方法和装置 | |
US9021071B2 (en) | Methods of federating applications providing modular data | |
CN105302920A (zh) | 一种云存储数据的优化管理方法和*** | |
CN104539681A (zh) | 分布式gis加速***和gis服务的处理方法 | |
CN103246659A (zh) | 键值数据查询的方法和装置 | |
CN109493051B (zh) | 可动态进行账户分配及迁移的主链加并行多子链***架构 | |
CN106462361A (zh) | 用于可重新配置存储器***的虚拟化物理地址 | |
CN110413845B (zh) | 基于物联网操作***的资源存储方法及装置 | |
US10585943B2 (en) | Network-wide, location-independent object identifiers for high-performance distributed graph databases | |
CN113900810A (zh) | 分布式图处理方法、***及存储介质 | |
CN105260377B (zh) | 一种基于分级存储的升级方法和*** | |
CN116405179A (zh) | 基于区块链分片和dag的建筑物联网数据管理方法 | |
CN112416908A (zh) | 基于Handle标识解析前缀分库存储数据的方法及*** | |
CN111327651A (zh) | 资源下载方法、装置、边缘节点及存储介质 | |
CN117008818A (zh) | 数据处理方法、装置、计算机设备和计算机可读存储介质 | |
CN107276914B (zh) | 基于cmdb的自助资源分配调度的方法 | |
US9600538B2 (en) | Systems and methods for managing large volumes of data in a digital earth environment | |
CN109947764B (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 |