CN112487027A - 基于区块链电子交易的高效数据查询实现方法 - Google Patents
基于区块链电子交易的高效数据查询实现方法 Download PDFInfo
- Publication number
- CN112487027A CN112487027A CN202011390893.7A CN202011390893A CN112487027A CN 112487027 A CN112487027 A CN 112487027A CN 202011390893 A CN202011390893 A CN 202011390893A CN 112487027 A CN112487027 A CN 112487027A
- Authority
- CN
- China
- Prior art keywords
- data
- query
- block chain
- metadata
- blockchain
- 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
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于区块链电子交易的高效数据查询实现方法,该方法包括以下步骤:1)采用ETL技术将多个***的异构数据源通过数据监听获取到,并且在数据处理后加载到数据仓库中存储到可提供丰富查询语义的数据库中,然后对存储的数据分为冷热数据进行处理;2)针对热数据:通过建立索引或者多节点备份以支持更快的查询;3)针对冷数据:将数据根据存储的数据库进一步压缩处理或者少备份以达到减少存储空间的目的。本发明对区块链***查询优化方案从两个方面入手,一是从存储数据库入手,二是建立高效的索引机制,把产生的数据通过数据监听存储到可提供丰富查询语义的数据库中,提高了查询效率、扩展了查询功能、增强了数据存储的灵活性。
Description
技术领域
本发明涉及一种基于区块链电子交易的高效数据查询实现方法,属于大数据检索技术领域。
背景技术
区块链起源于比特币,通过分布式账本、共识机制、加密算法等技术,可有效解决交易中的信任问题。近年来区块链的发展趋于火热,商业应用项目爆发,但是技术仍然没有大规模被应用,只是在金融、医疗、物流等方面有部分试点。在性能、安全、可用性方面仍存在许多问题,其技术还未发展成熟。
图1区块链本质上是一个去中心化的***,是由多个区块组成的链状数据结构。每个区块分为区块头和区块体,区块头主要用来实现区块链接前一区块的哈希值,区块体主要包括交易账本。
以交易场景为例,其工作流程如下:
(1)客户端发起一次交易,经过数字签名后广播给网络上的其他节点并等待确认;
(2)网络中的节点对收到的交易信息进行确认校验,通过校验后,数据被记录到一个区块中;
(3)全网中的多有接收节点对区块执行共识算法,区块通过共识算法后正式纳入区块链中存储。
交易过程中每一个发起交易的用户通过对前一次交易和下一位拥有者的公钥签署一个随机哈希的数字签名,并将这个签名附加在转移的电子货币的末尾,电子货币就发送给了下一位拥有者,收款人通过对签名进行验证,就能检验出该链条的所有者,同时为了避免电子货币进行双重支付,每次的交易都是公开的,即使用共识机制来保障。
根据查询对象可以将区块链查询分为账户查询、交易查询、合约查询。区块链虽然能够支持3种类型的查询,但是随着数据规模的变大以及业务需求的上升,其查询弊端也逐渐显露,主要体现在以下几点。
①查询效率低下
通过上述对levelDB的叙述可知,它主要适用于写操作多,读操作少的场景。一次查询首先访问内存、然后访问缓存,最后依次查询不同level的SSTable,当存储的数据量非常大的时候,这种查询效率会非常低下。并且,随着数据量的不断变大以及逐渐频繁的查询需求,这将成为查询性能的主要瓶颈。
②查询功能有限
大部分区块链***仍然使用类似levelDB的key-value数据库,这种数据库本身对于大量的写是性能高的,但是它只支持基于key-value的***和查询,不支持针对value中任意字段的查找。由于在设计之初未考虑支持分析型查询,因此没有在中间层设计索引。***无法像传统数据库一样执行关系型查询,更无法执行Top-K查询,K-NN查询等复杂分析型查询。
③数据存储缺乏灵活性
当前区块链中保存的数据的字段数量少,结构相对固定,查询处理逻辑简单。随着区块链应用的不断扩展,应用的数据结构也会更加复杂,但是当前的数据存储对于多样数据的存储扩展性不高。
发明内容
本发明的技术任务是针对现有技术的不足,提供一种基于区块链电子交易的高效数据查询实现方法。
本发明解决其技术问题所采用的技术方案是:
基于区块链电子交易的高效数据查询实现方法,该方法包括以下步骤:
1)采用ETL技术将多个***的异构数据源通过数据监听获取到,并且在数据处理后加载到数据仓库中存储到可提供丰富查询语义的数据库中,然后对存储的数据分为冷热数据进行处理;
2)针对热数据:通过建立索引或者多节点备份以支持更快的查询;
3)针对冷数据:将区块链数据根据存储的数据库进一步压缩处理或者少备份以达到减少存储空间的目的。
进一步地,步骤2)对于热数据,采用在levelDB中添加额外索引的方式来优化查询效率,以levelDB作为主键索引,在数据存储模块中针对不同字段建立辅助索引,并通过内置索引结构设计查询层。
进一步地,步骤2)查询过程分为两个阶段:
2.1)将查询命令发送到查询模块,通过辅助索引确定结果的key(主键) 集合;
2.2)使用key值在主键索引(levelDB)上查找出结果value,并返回给客户端。
进一步地,步骤2)内置索引结构设计查询层包括区块链读/写API、levelDB、一致性维护模块、通信模块、其他节点,区块链读/写API与levelDB中的查询模块相连,一致性维护模块通过通信模块连接其他节点,一致性维护模块还与辅助索引模块及区块链读/写API相连。
进一步地,步骤3)针对冷数据:将区块链数据拷贝到外部数据库中,并借助外部数据库提供的功能接口设计查询层。
进一步地,步骤3)对于冷数据,采用外联数据库的方法,将区块链数据拷贝到外部数据库中,并借助外部数据库提供的功能接口设计查询层。
进一步地,步骤3)中采用etherQL***,将区块链上数据复制到MongoDB 中,然后利用MongoDB执行分析查询操作。
进一步地,步骤1)中数据处理包括数据提取、数据清洗、数据整理。
进一步地,步骤1)中异构数据源包括区块链***、去中心化分布式文件***中的数据,将异构数据源中的元数据提取并录入到元数据运行库中,利用元数据管理元数据,并采用元数据库来存储元数据,形成分析结果,供数据查询模块查询,元数据运行库生成元数据对数据的记录描述。
本发明的基于区块链电子交易的高效数据查询实现方法,与现有技术相比,所产生的有益效果是,
本发明对区块链***查询优化方案从两个方面入手,一是从存储数据库入手,二是建立高效的索引机制,把产生的数据通过数据监听存储到可提供丰富查询语义的数据库中,然后对存储的数据分为冷热数据处理,热数据可以通过建立索引或者多节点备份以支持更快的查询,冷数据可以根据存储的数据库进一步压缩处理或者少备份以达到减少存储空间的目的。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
附图1为本发明比特币***区块结构图;
附图2为本发明基于区块链电子交易查询优化方法的示意图;
附图3为本发明内置索引法结构图。
具体实施方式
结合附图2,本发明基于区块链电子交易的高效数据查询实现方法,该方法包括以下步骤:
1)采用ETL技术将多个***的异构数据源通过数据监听获取到,并且在数据处理后加载到数据仓库中存储到可提供丰富查询语义的数据库中,然后对存储的数据分为冷热数据进行处理;
2)针对热数据:通过建立索引或者多节点备份以支持更快的查询;
3)针对冷数据:将区块链数据根据存储的数据库进一步压缩处理或者少备份以达到减少存储空间的目的。
对于上述步骤1):
进一步地,步骤1)数据处理包括数据提取、数据清洗、数据整理。
进一步地,步骤1)中异构数据源包括区块链***、去中心化分布式文件***中的数据,将异构数据源中的元数据提取并录入到元数据运行库中,利用元数据管理元数据,并采用元数据库来存储元数据,形成分析结果,供数据查询模块查询,元数据运行库生成元数据对数据的记录描述。
对于上述步骤2):
进一步地,步骤2)对于热数据,采用在levelDB中添加额外索引的方式来优化查询效率,以levelDB作为主键索引,在数据存储模块中针对不同字段建立辅助索引,并通过内置索引结构设计查询层。
进一步地,步骤2)查询过程分为两个阶段:
2.1)将查询命令发送到查询模块,通过辅助索引确定结果的key(主键) 集合;
2.2)使用key值在主键索引(levelDB)上查找出结果value,并返回给客户端。
结合附图3,进一步地,步骤2)内置索引结构设计查询层包括区块链读/ 写API、levelDB、一致性维护模块、通信模块、其他节点,区块链读/写API与 levelDB中的查询模块相连,一致性维护模块通过通信模块连接其他节点,一致性维护模块还与辅助索引模块及区块链读/写API相连。
对于上述步骤3):
进一步地,步骤3)针对冷数据:将区块链数据拷贝到外部数据库中,并借助外部数据库提供的功能接口设计查询层。
进一步地,步骤3)对于冷数据,采用外联数据库的方法,将区块链数据拷贝到外部数据库中,并借助外部数据库提供的功能接口设计查询层。
进一步地,步骤3)中采用etherQL***,将区块链上数据复制到MongoDB 中,然后利用MongoDB执行分析查询操作。
Claims (9)
1.基于区块链电子交易的高效数据查询实现方法,其特征在于,该方法包括以下步骤:
1)采用ETL技术将多个***的异构数据源通过数据监听获取到,并且在数据处理后加载到数据仓库中存储到可提供丰富查询语义的数据库中,然后对存储的数据分为冷热数据进行处理;
2)针对热数据:通过建立索引或者多节点备份以支持更快的查询;
3)针对冷数据:将区块链数据根据存储的数据库进一步压缩处理或者少备份以达到减少存储空间的目的。
2.根据权利要求1所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤2)对于热数据,采用在levelDB中添加额外索引的方式来优化查询效率,以levelDB作为主键索引,在数据存储模块中针对不同字段建立辅助索引,并通过内置索引结构设计查询层。
3.根据权利要求2所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤2)查询过程分为两个阶段:
2.1)将查询命令发送到查询模块,通过辅助索引确定结果的key(主键)集合;
2.2)使用key值在主键索引(levelDB)上查找出结果value,并返回给客户端。
4.根据权利要求2所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤2)内置索引结构设计查询层包括区块链读/写API、levelDB、一致性维护模块、通信模块、其他节点,区块链读/写API与levelDB中的查询模块相连,一致性维护模块通过通信模块连接其他节点,一致性维护模块还与辅助索引模块及区块链读/写API相连。
5.根据权利要求1所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤3)针对冷数据:将区块链数据拷贝到外部数据库中,并借助外部数据库提供的功能接口设计查询层。
6.根据权利要求5所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤3)对于冷数据,采用外联数据库的方法,将区块链数据拷贝到外部数据库中,并借助外部数据库提供的功能接口设计查询层。
7.根据权利要求3所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤3)中采用etherQL***,将区块链上数据复制到MongoDB中,然后利用MongoDB执行分析查询操作。
8.根据权利要求1所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤1)中数据处理包括数据提取、数据清洗、数据整理。
9.根据权利要求1所述的基于区块链电子交易的高效数据查询实现方法,其特征在于,步骤1)中异构数据源包括区块链***、去中心化分布式文件***中的数据,将异构数据源中的元数据提取并录入到元数据运行库中,利用元数据管理元数据,并采用元数据库来存储元数据,形成分析结果,供数据查询模块查询,元数据运行库生成元数据对数据的记录描述。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011390893.7A CN112487027B (zh) | 2020-12-02 | 2020-12-02 | 基于区块链电子交易的高效数据查询实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011390893.7A CN112487027B (zh) | 2020-12-02 | 2020-12-02 | 基于区块链电子交易的高效数据查询实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112487027A true CN112487027A (zh) | 2021-03-12 |
CN112487027B CN112487027B (zh) | 2022-08-23 |
Family
ID=74938851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011390893.7A Active CN112487027B (zh) | 2020-12-02 | 2020-12-02 | 基于区块链电子交易的高效数据查询实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112487027B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794930A (zh) * | 2023-02-08 | 2023-03-14 | 南京纯白矩阵科技有限公司 | 一种可扩展的多区块链数据etl处理***及方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729371A (zh) * | 2017-09-12 | 2018-02-23 | 深圳先进技术研究院 | 区块链的数据索引及查询方法、装置、设备及存储介质 |
CN109165224A (zh) * | 2018-08-24 | 2019-01-08 | 东北大学 | 一种在区块链数据库上针对关键字key的索引方法 |
CN109189782A (zh) * | 2018-08-02 | 2019-01-11 | 哈尔滨工程大学 | 一种区块链商品交易查询中的索引方法 |
CN109347941A (zh) * | 2018-10-10 | 2019-02-15 | 南京简诺特智能科技有限公司 | 一种基于区块链的数据共享平台及其实现方法 |
CN109857722A (zh) * | 2019-01-10 | 2019-06-07 | 厦门必乐领主科技有限公司 | 一种基于区块链的数据库阵列驱动与动态索引技术 |
CN109885615A (zh) * | 2019-01-24 | 2019-06-14 | 华东师范大学 | 一种基于索引的面向区块链轻客户端的范围查询可验证查询方法 |
CN110020091A (zh) * | 2018-10-16 | 2019-07-16 | 陕西医链区块链集团有限公司 | 一种基于区块链的医疗搜索引擎*** |
CN110309196A (zh) * | 2019-05-22 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 区块链数据存储和查询方法、装置、设备及存储介质 |
CN111259056A (zh) * | 2020-01-15 | 2020-06-09 | 深圳微众信用科技股份有限公司 | 一种区块链数据查询方法、***及相关设备 |
CN111858520A (zh) * | 2020-07-21 | 2020-10-30 | 杭州溪塔科技有限公司 | 一种区块链节点数据分离存储的方法和装置 |
-
2020
- 2020-12-02 CN CN202011390893.7A patent/CN112487027B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729371A (zh) * | 2017-09-12 | 2018-02-23 | 深圳先进技术研究院 | 区块链的数据索引及查询方法、装置、设备及存储介质 |
CN109189782A (zh) * | 2018-08-02 | 2019-01-11 | 哈尔滨工程大学 | 一种区块链商品交易查询中的索引方法 |
CN109165224A (zh) * | 2018-08-24 | 2019-01-08 | 东北大学 | 一种在区块链数据库上针对关键字key的索引方法 |
CN109347941A (zh) * | 2018-10-10 | 2019-02-15 | 南京简诺特智能科技有限公司 | 一种基于区块链的数据共享平台及其实现方法 |
CN110020091A (zh) * | 2018-10-16 | 2019-07-16 | 陕西医链区块链集团有限公司 | 一种基于区块链的医疗搜索引擎*** |
CN109857722A (zh) * | 2019-01-10 | 2019-06-07 | 厦门必乐领主科技有限公司 | 一种基于区块链的数据库阵列驱动与动态索引技术 |
CN109885615A (zh) * | 2019-01-24 | 2019-06-14 | 华东师范大学 | 一种基于索引的面向区块链轻客户端的范围查询可验证查询方法 |
CN110309196A (zh) * | 2019-05-22 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 区块链数据存储和查询方法、装置、设备及存储介质 |
CN111259056A (zh) * | 2020-01-15 | 2020-06-09 | 深圳微众信用科技股份有限公司 | 一种区块链数据查询方法、***及相关设备 |
CN111858520A (zh) * | 2020-07-21 | 2020-10-30 | 杭州溪塔科技有限公司 | 一种区块链节点数据分离存储的方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794930A (zh) * | 2023-02-08 | 2023-03-14 | 南京纯白矩阵科技有限公司 | 一种可扩展的多区块链数据etl处理***及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112487027B (zh) | 2022-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220414090A1 (en) | Blockchain data index method, blockchain data storage method and device | |
KR102392944B1 (ko) | 데이터 백업 방법, 저장 매체 및 컴퓨팅 기기 | |
US11182404B2 (en) | Data replication technique in database management system | |
CN108319654B (zh) | 计算***、冷热数据分离方法及装置、计算机可读存储介质 | |
CN111143389B (zh) | 事务执行方法、装置、计算机设备及存储介质 | |
US10649995B2 (en) | Methods and systems for optimizing queries in a multi-tenant store | |
US11283616B2 (en) | Method for index-based and integrity-assured search in a blockchain | |
WO2019024780A1 (zh) | 区块链轻量化处理方法、区块链节点及存储介质 | |
CN105556520A (zh) | 在存储器中镜像盘中的数据以提高查询性能 | |
CN105556519A (zh) | 对oracle存储器中数据库的存储器中快照存储的多版本并行控制 | |
US20060282456A1 (en) | Fuzzy lookup table maintenance | |
US11314719B2 (en) | Method for implementing change data capture in database management system | |
WO2018205151A1 (zh) | 数据更新方法和存储装置 | |
US20100153346A1 (en) | Data integrity in a database environment through background synchronization | |
WO2021179782A1 (zh) | 一种提升数据库一体机执行效率的方法、设备、装置和介质 | |
CN102033930A (zh) | 分布式内存数据库*** | |
CN106874399B (zh) | 一种联网备份***及备份方法 | |
CN110597835A (zh) | 一种基于区块链的交易数据删除方法及装置 | |
US11003540B2 (en) | Method, server, and computer readable medium for index recovery using index redo log | |
CN112487027B (zh) | 基于区块链电子交易的高效数据查询实现方法 | |
CN113836162A (zh) | 一种业务解耦并实现多级缓存的自动化更新的方法及装置 | |
CN115952195A (zh) | 一种区块链数据溯源查询优化方法 | |
CN109614411B (zh) | 数据存储方法、设备和存储介质 | |
CN103501339A (zh) | 元数据处理方法及元数据服务器 | |
US7672925B2 (en) | Accelerating queries using temporary enumeration representation |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220802 Address after: 250100 building S02, No. 1036, Langchao Road, high tech Zone, Jinan City, Shandong Province Applicant after: Shandong Inspur Scientific Research Institute Co.,Ltd. Address before: 250100 First Floor of R&D Building 2877 Kehang Road, Sun Village Town, Jinan High-tech Zone, Shandong Province Applicant before: JINAN INSPUR HIGH-TECH TECHNOLOGY DEVELOPMENT Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |