CN109815226B - 基于区块链的数据存储方法、装置、设备和存储介质 - Google Patents
基于区块链的数据存储方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN109815226B CN109815226B CN201811524156.4A CN201811524156A CN109815226B CN 109815226 B CN109815226 B CN 109815226B CN 201811524156 A CN201811524156 A CN 201811524156A CN 109815226 B CN109815226 B CN 109815226B
- Authority
- CN
- China
- Prior art keywords
- transaction data
- stored
- client
- transaction
- block
- 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.)
- Active
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004806 packaging method and process Methods 0.000 claims description 13
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及数据存储技术领域,尤其涉及一种基于区块链的数据存储方法、装置、设备和存储介质。基于区块链的数据存储方法包括:获取任一客户端的交易数据,生成交易数据包,对交易数据包里的数据量进行统计后根据统计结果创建与客户端对应的区块;获取至少一个客户端的待存储交易数据,将待存储交易数据按照产生的时间顺序生成待存储交易数据序列;提取待存储交易数据中携带的客户端的标识,根据客户端的标识将待存储交易数据序列写入与客户端对应的区块中;赋予每个区块以键值,根据键值将所述区块中的待存储交易数据写入到键值数据库中。本技术方案提高了数据存储效率、使数据不易被篡改,且追溯历史数据时,可以快速有效地找到数据的来源。
Description
技术领域
本申请涉及数据存储技术领域,尤其涉及一种基于区块链的数据存储方法、装置、设备和存储介质。
背景技术
区块链一般被理解为一个分布式的账本,它实质上也是一个分布式计算和存储系统。区块链有多个节点,不同的节点通过一定的计算规则达成共识,并且将共识后的交易执行结果以区块的形式存储至数据库中,多个区块组成了区块链,多个节点之间可以对区块互为备份。
在应用区块链进行数据存储时,主要是基于BASE理论和CAP理论对数据进行分布式存储,去中心化,对数据的一致性、可用性和分区容忍性进行综合分析。用户根据自身需求设置私钥或者公钥对数据进行使用限制。
但是,目前在使用区块链的形式将数据存入数据库时,存在着数据存储效率不高、数据容易被篡改,并且在进行历史数据追溯时,无法快速有效地找到数据的来源等问题。
发明内容
有鉴于此,有必要针对使用区块链的形式将数据存入数据库时,存在着数据存储效率不高、数据容易被篡改,并且在进行历史数据追溯时,无法快速有效找地到数据的来源的问题,提供一种基于区块链的数据存储方法、装置、设备和存储介质。
一种基于区块链的数据存储方法,包括如下步骤:
获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块;
获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列;
提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中;
赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中。
在其中一个实施例中,所述获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块,包括:
获取任一所述客户端的交易开始时间节点和交易终止时间节点,提取从所述交易开始时间节点到所述交易终止时间节点产生的交易数据,生成交易数据包;
对所述交易数据包所包含的数据量进行统计,以交易时间为横坐标,以数据量为纵坐标建立交易数据直方图;
从所述交易数据直方图的纵坐标中提取最大值和最小值,将所述最大值和所述最小值进行打包,形成一区块,再从所述交易数据直方图的纵坐标中提取次最大值和次最小值,并将所述次最大值和所述次最小值进行打包,形成另一区块,按照上述规则依次提取所述交易数据直方图的纵坐标中的数值进行打包,形成数个与所述客户端对应的区块。
在其中一个实施例中,所述获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列,包括:
获取至少一个客户端的访问权限,连接到所述客户端后获取所述待存储交易数据;
提取所述待存储交易数据产生时的时间点信息,按照所述时间点信息对所述待存储交易数据进行排序,生成所述待存储交易数据序列。
在其中一个实施例中,所述提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中,包括:
提取所述待存储交易数据中的偏移段字符串,根据所述偏移段字符串查找对应的偏移段,所述偏移段包括所述客户端的标识;
根据所述客户端的标识从预设的区块-客户端标识对应表中检索匹配与所述客户端对应的区块;
将所述待存储交易数据序列写入到与所述客户端对应的区块中。
在其中一个实施例中,所述赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中,包括:
提取每一所述区块的哈希值,根据预设的每一所述哈希值与键值的对应关系赋予所述区块以不同的键值;
获取每一所述键值分别对应的键值数据库的位置信息,根据每一所述键值数据库的位置信息,将所述区块中的所述待存储交易数据写入到对应的所述键值数据库中,完成最终存储。
在其中一个实施例中,所述获取任一所述客户端的交易开始时间节点和交易终止时间节点,提取从所述交易开始时间节点到所述交易终止时间节点产生的交易数据,生成交易数据包,包括:
获取触发所述交易开始时间节点的开始字符或语句,以所述开始字符或语句为起始特征点,开始提取交易数据;
获取触发所述交易终止时间节点的结束字符或语句,以所述结束字符或语句为终止特征点,停止提取交易数据;
将所述起始特征点到所述终止特征点之间提取的所述交易数据进行打包,形成交易数据包。
在其中一个实施例中,所述将所述待存储交易数据序列写入到与所述客户端对应的区块中之后,还包括对所述区块中的所述待存储交易数据进行加密的过程,具体包括:
从所述待存储交易数据中提取字符串,将所述字符串转化为第一二进制数字串;
按照预设加密算法对所述第一二进制数字串进行加密,生成第二二进制数字串;
将所述第二二进制数字串插入到所述待存储交易数据中,得到加密后的待存储交易数据。
一种基于区块链的数据存储装置,包括如下模块:
区块创建模块,设置为获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块;
数据序列生成模块,设置为获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列;
数据写入区块模块,设置为提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中;
数据写入数据库模块,设置为赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被一个或多个所述处理器执行时,使得一个或多个所述处理器执行上述基于区块链的数据存储方法的步骤。
一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个所述处理器执行上述基于区块链的数据存储方法的步骤。
上述基于区块链的数据存储方法、装置、设备和存储介质,包括:获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块;获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列;提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中;赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中。本技术方案提高了数据存储的效率、数据不容易被篡改,并且在进行历史数据追溯时,可以快速有效地找到数据的来源。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。
图1为本发明在一个实施例中的一种基于区块链的数据存储方法的整体流程图;
图2为本发明在一个实施例中的一种基于区块链的数据存储方法中的待存储交易数据序列生成过程的示意图;
图3为本发明在一个实施例中的一种基于区块链的数据存储方法中的待存储交易数据序列写入区块过程的示意图;
图4为本发明在一个实施例中的一种基于区块链的数据存储装置的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
图1为本发明在一个实施例中的一种基于区块链的数据存储方法的整体流程图,如图所示,一种基于区块链的数据存储方法,包括以下步骤:
步骤S1,获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块。
其中,交易数据包中包括但不限于:交易产生的时间信息、交易产生的数据信息、数据量信息和客户端标识信息。
上述步骤执行时,可以从任意一个客户端获取该客户端产生的交易数据,包括多条交易数据,也可以同时从多个客户端获取多条交易数据,将这些交易数据打包形成交易数据包。对交易数据包里包含的数据量按早某种规则进行统计,得到统计结果,再根据这种统计结果创建区块,所述区块是与客户端对应的,这种对应是指一个客户端可以对应多个区块,但是一个区块只对应一个客户端。
步骤S2,获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列。
上述步骤执行时,获取至少一个客户端的访问权限,连接到该客户端后获取该客户端需要存储的待存储交易数据;再从待存储交易数据中提取其产生时的时间点信息,根据时间点信息将待存储交易数据按照产生的时间先后顺序进行排序,以此生成待存储交易数据序列。
步骤S3,提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中。
其中,在创建区块时,已经建立好客户端与区块的对应关系,在一种较佳的实施例中,这种对应关系通过设置区块-客户端标识对应表,在表中建立客户端与区块的对应关系。
步骤S4,赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中。
其中,键值(Key-value)数据库是NoSQL领域中应用范围最广的,也是涉及产品最多的一种模型。从最简单的BerkeleyDB到功能丰富的分布式数据库Riak再到Amazon托管的DynamoDB不一而足。键值数据库适用于频繁读写,拥有简单数据模型的应用,键值数据库中存储的值可以是简单的标量值,如整数或布尔值,也可以是结构化数据类型,比如列表和JSON 结构。键值数据库通常具有简单的查询功能,允许通过键来查找一个值。
本实施例,通过对待存储交易数据进行排序,提高了数据存储的效率;通过区块存储使得数据不容易被篡改;将数据按照客户端与区块的对应关系进行存储,并且以键值进行存储,使得在进行历史数据追溯时,可以快速有效地找到数据的来源。
在一个实施例中,所述步骤S1,获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块,包括以下步骤:
获取任一所述客户端的交易开始时间节点和交易终止时间节点,提取从所述交易开始时间节点到所述交易终止时间节点产生的交易数据,生成交易数据包;
对所述交易数据包所包含的数据量进行统计,以交易时间为横坐标,以数据量为纵坐标建立交易数据直方图;
从所述交易数据直方图的纵坐标中提取最大值和最小值,将所述最大值和所述最小值进行打包,形成一区块,再从所述交易数据直方图的纵坐标中提取次最大值和次最小值,并将所述次最大值和所述次最小值进行打包,形成另一区块,按照上述规则依次提取所述交易数据直方图的纵坐标中的数值进行打包,形成数个与所述客户端对应的区块。
上述步骤执行时, 首先,交易数据包中包括交易数据和交易发生的时间信息,以交易发生的时间为横坐标,以交易数据包中的数据量为纵坐标,建立交易数据直方图。然后按照一种规则创建区块,这种规则可以为:从交易数据直方图的纵坐标中提取最大值和最小值,将最大值和最小值对应的数据量进行打包,形成一区块,再从交易数据直方图的纵坐标中提取次最大值和次最小值,并次最大值和次最小值进行打包,形成另一区块。按照上述规则依次提取交易数据直方图的纵坐标中的数值进行打包,形成数个与客户端对应的区块。
本实施例,通过建立交易数据直方图对数据量进行统计并以此为基础创建区块,提高了数据的统计效率,降低了出错率。
在一个实施例中,图2为本发明在一个实施例中的一种基于区块链的数据存储方法中的待存储交易数据序列生成过程的示意图,如图2所示,所述步骤S2,获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列,包括以下步骤:
S201,获取至少一个客户端的访问权限,连接到所述客户端后获取所述待存储交易数据;
S202,提取所述待存储交易数据产生时的时间点信息,按照所述时间点信息对所述待存储交易数据进行排序,生成所述待存储交易数据序列。
上述步骤执行时,获取客户端的访问权限,可以使用远程连接权限的用户名和密码获取所述数据库的访问权限,优选地,可以通过Hibernate对象关系映射框架与所述客户端的数据库进行连接,以此获得待存储交易数据。将待存储交易数据按照其产生的时间顺序对其进行排序,该排序是指写入区块的顺序。
本实施例,通过对待存储交易数据按照产生的时间顺序进行排序,生成待存储交易数据序列,按照序列写入区块,提高了将数据写入区块的效率。
在一个实施例中,图3为本发明的一种基于区块链的数据存储方法中的待存储交易数据序列写入区块过程的示意图,如图3所示,所述步骤S3,提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中,包括以下步骤:
步骤S301,提取所述待存储交易数据中的偏移段字符串,根据所述偏移段字符串查找对应的偏移段,所述偏移段包括所述客户端的标识;
其中,偏移段字符串为唯一的串号,串号作为偏移段标识,可以根据偏移段字符串查找对应的偏移段,偏移段内存储有所述客户端的标识。
步骤S302,根据所述客户端的标识从预设的区块-客户端标识对应表中检索匹配与所述客户端对应的区块;
在创建区块时,已经建立好客户端与区块的对应关系,这种对应关系写入了区块-客户端标识对应表,区块-客户端标识对应表中包含所有客户端与区块的对应关系,该对应关系是指,来自某客户端的交易数据应该存入该客户端对应的区块中。
步骤S303,将所述待存储交易数据序列写入到与所述客户端对应的区块中。
本实施例,将数据按照客户端与区块的对应关系进行存储,使得后续在进行历史数据追溯时,可以快速有效地找到数据的来源,节省了大量的工作时间。
在一个实施例中,所述步骤S4,赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中,包括:
提取每一所述区块的哈希值,根据预设的每一所述哈希值与键值的对应关系赋予所述区块以不同的键值;
获取每一所述键值分别对应的键值数据库的位置信息,根据每一所述键值数据库的位置信息,将所述区块中的所述待存储交易数据写入到对应的所述键值数据库中,完成最终存储。
上述步骤执行时,给不同的区块赋予不同的键值,可以是给每一区块都赋予不同的键值,也可以给属于同一客户端对应的区块赋予相同的键值,不属于同一客户端对应的区块赋予不同的键值。每个键值可以是对应一个不同的键值数据库,也可以是所有键值对应一个键值数据库中不同的位置。通过赋予键值将数据存入键值数据库,后续可以通过键来查找对应的数据。
本实施例,通过赋予区块不同的键值,而键值对应键值数据库的不同位置,提高了数据存储的效率,且便于后续查找数据。
在一个实施例中,所述获取任一所述客户端的交易开始时间节点和交易终止时间节点,提取从所述交易开始时间节点到所述交易终止时间节点产生的交易数据,生成交易数据包,包括:
获取触发所述交易开始时间节点的开始字符或语句,以所述开始字符或语句为起始特征点,开始提取交易数据;
获取触发所述交易终止时间节点的结束字符或语句,以所述结束字符或语句为终止特征点,停止提取交易数据;
将所述起始特征点到所述终止特征点之间提取的所述交易数据进行打包,形成交易数据包。
在一个实施例中,所述将所述待存储交易数据序列写入到与所述客户端对应的区块中之后,还包括对所述区块中的所述待存储交易数据进行加密,具体包括:
从所述待存储交易数据中提取字符串,将所述字符串转化为第一二进制数字串;
按照预设加密算法对所述第一二进制数字串进行加密,生成第二二进制数字串;
将所述第二二进制数字串插入到所述待存储交易数据中,得到加密后的待存储交易数据。
本实施例,在将待存储交易数据写入数据库之前对其进行加密,对数据进行了双重保护,使数据更加安全、不可篡改。
一种基于区块链的数据存储装置,如图4所示,包括如下模块:
区块创建模块,设置为获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块;
数据序列生成模块,设置为获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列;
数据写入区块模块,设置为提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中;
数据写入数据库模块,设置为赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行计算机可读指令时实现上述各实施例中所述的基于区块链的数据存储方法的步骤。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例中所述的基于区块链的数据存储方法的步骤。其中,所述存储介质可以为非易失性存储介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器 (ROM ,Read Only Memory) 、随机存取存储器 (RAM ,RandomAccess Memory)、磁盘或光盘等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明一些示例性实施例,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种基于区块链的数据存储方法,其特征在于,包括:
获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块;
获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列;
提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中;
赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中;
所述获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块,包括:
获取任一所述客户端的交易开始时间节点和交易终止时间节点,提取从所述交易开始时间节点到所述交易终止时间节点产生的交易数据,生成交易数据包;
对所述交易数据包所包含的数据量进行统计,以交易时间为横坐标,以数据量为纵坐标建立交易数据直方图;
从所述交易数据直方图的纵坐标中提取最大值和最小值,将所述最大值和所述最小值进行打包,形成一区块,再从所述交易数据直方图的纵坐标中提取次最大值和次最小值,并将所述次最大值和所述次最小值进行打包,形成另一区块,按照预设的规则依次提取所述交易数据直方图的纵坐标中的数值进行打包,形成数个与所述客户端对应的区块,所述规则为每次从所述交易数据直方图的纵坐标中提取的最大值小于上一次从所述纵坐标提取的最大值,每次从所述纵坐标提取的最小值大于上一次从所述纵坐标提取的最小值。
2.根据权利要求1所述的基于区块链的数据存储方法,其特征在于,所述获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列,包括:
获取至少一个客户端的访问权限,连接到所述客户端后获取所述待存储交易数据;
提取所述待存储交易数据产生时的时间点信息,按照所述时间点信息对所述待存储交易数据进行排序,生成所述待存储交易数据序列。
3.根据权利要求1所述的基于区块链的数据存储方法,其特征在于,所述提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中,包括:
提取所述待存储交易数据中的偏移段字符串,根据所述偏移段字符串查找对应的偏移段,所述偏移段包括所述客户端的标识;
根据所述客户端的标识从预设的区块-客户端标识对应表中检索匹配与所述客户端对应的区块;
将所述待存储交易数据序列写入到与所述客户端对应的区块中。
4.根据权利要求1所述的基于区块链的数据存储方法,其特征在于,所述赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中,包括:
提取每一所述区块的哈希值,根据预设的每一所述哈希值与键值的对应关系赋予所述区块以不同的键值;
获取每一所述键值分别对应的键值数据库的位置信息,根据每一所述键值数据库的位置信息,将所述区块中的所述待存储交易数据写入到对应的所述键值数据库中,完成最终存储。
5.根据权利要求1所述的基于区块链的数据存储方法,其特征在于,所述获取任一所述客户端的交易开始时间节点和交易终止时间节点,提取从所述交易开始时间节点到所述交易终止时间节点产生的交易数据,生成交易数据包,包括:
获取触发所述交易开始时间节点的开始字符或语句,以所述开始字符或语句为起始特征点,开始提取交易数据;
获取触发所述交易终止时间节点的结束字符或语句,以所述结束字符或语句为终止特征点,停止提取交易数据;
将所述起始特征点到所述终止特征点之间提取的所述交易数据进行打包,形成交易数据包。
6.根据权利要求1所述的基于区块链的数据存储方法,其特征在于,所述将所述待存储交易数据序列写入到与所述客户端对应的区块中之后,还包括对所述区块中的所述待存储交易数据进行加密的过程,具体包括:
从所述待存储交易数据中提取字符串,将所述字符串转化为第一二进制数字串;
按照预设加密算法对所述第一二进制数字串进行加密,生成第二二进制数字串;
将所述第二二进制数字串插入到所述待存储交易数据中,得到加密后的待存储交易数据。
7.一种基于区块链的数据存储装置,其特征在于,所述基于区块链的数据存储装置执行如权利要求1至6中任一项所述的基于区块链的数据存储方法的步骤,所述基于区块链的数据存储装置包括如下模块:
区块创建模块,设置为获取任一客户端产生的交易数据,生成交易数据包,对所述交易数据包里包含的数据量进行统计后根据统计结果创建与所述客户端对应的区块;
数据序列生成模块,设置为获取至少一个客户端的待存储交易数据,将所述待存储交易数据按照产生的时间顺序生成待存储交易数据序列;
数据写入区块模块,设置为提取所述待存储交易数据中携带的客户端的标识,根据所述客户端的标识将所述待存储交易数据序列写入到与所述客户端对应的区块中;
数据写入数据库模块,设置为赋予每一所述区块以键值,根据所述键值将所述区块中的所述待存储交易数据写入到键值数据库中。
8.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被一个或多个所述处理器执行时,使得一个或多个所述处理器执行如权利要求1至6中任一项所述的基于区块链的数据存储方法的步骤。
9.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个所述处理器执行如权利要求1至6中任一项所述的基于区块链的数据存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811524156.4A CN109815226B (zh) | 2018-12-13 | 2018-12-13 | 基于区块链的数据存储方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811524156.4A CN109815226B (zh) | 2018-12-13 | 2018-12-13 | 基于区块链的数据存储方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109815226A CN109815226A (zh) | 2019-05-28 |
CN109815226B true CN109815226B (zh) | 2023-10-31 |
Family
ID=66601615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811524156.4A Active CN109815226B (zh) | 2018-12-13 | 2018-12-13 | 基于区块链的数据存储方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109815226B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569240B (zh) * | 2019-07-25 | 2023-04-07 | 平安科技(深圳)有限公司 | 数据存储方法、装置、计算机设备和存储介质 |
CN110597814B (zh) * | 2019-09-16 | 2021-12-28 | 腾讯科技(深圳)有限公司 | 结构化数据的序列化、反序列化方法以及装置 |
CN110990606B (zh) * | 2019-12-11 | 2023-10-03 | Tcl移动通信科技(宁波)有限公司 | 图片存储方法、装置、存储介质及电子设备 |
CN113806353A (zh) * | 2020-06-12 | 2021-12-17 | 第四范式(北京)技术有限公司 | 实现时序特征抽取的方法及装置 |
CN114449019A (zh) * | 2020-10-16 | 2022-05-06 | 中国移动通信集团辽宁有限公司 | 一种操作数据记录方法、节点、系统及设备 |
CN112615894A (zh) * | 2020-11-13 | 2021-04-06 | 中信银行股份有限公司 | 交易的打包与交易信息的查询方法、装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239953A (zh) * | 2017-06-20 | 2017-10-10 | 无锡井通网络科技有限公司 | 基于区块链的快速数据存储方法及系统 |
CN107992492A (zh) * | 2016-10-26 | 2018-05-04 | 中国移动通信有限公司研究院 | 一种数据区块的存储方法、读取方法、其装置及区块链 |
CN108628942A (zh) * | 2018-03-27 | 2018-10-09 | 深圳市网心科技有限公司 | 区块链节点设备、分布式数据库的数据读取及写入方法 |
CN108846753A (zh) * | 2018-06-06 | 2018-11-20 | 北京京东尚科信息技术有限公司 | 用于处理数据的方法和装置 |
CN108959310A (zh) * | 2017-05-23 | 2018-12-07 | 易链科技(深圳)有限公司 | 基于区块链的数据处理方法、装置和计算机可读存储介质 |
-
2018
- 2018-12-13 CN CN201811524156.4A patent/CN109815226B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992492A (zh) * | 2016-10-26 | 2018-05-04 | 中国移动通信有限公司研究院 | 一种数据区块的存储方法、读取方法、其装置及区块链 |
CN108959310A (zh) * | 2017-05-23 | 2018-12-07 | 易链科技(深圳)有限公司 | 基于区块链的数据处理方法、装置和计算机可读存储介质 |
CN107239953A (zh) * | 2017-06-20 | 2017-10-10 | 无锡井通网络科技有限公司 | 基于区块链的快速数据存储方法及系统 |
CN108628942A (zh) * | 2018-03-27 | 2018-10-09 | 深圳市网心科技有限公司 | 区块链节点设备、分布式数据库的数据读取及写入方法 |
CN108846753A (zh) * | 2018-06-06 | 2018-11-20 | 北京京东尚科信息技术有限公司 | 用于处理数据的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109815226A (zh) | 2019-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109815226B (zh) | 基于区块链的数据存储方法、装置、设备和存储介质 | |
US10089487B2 (en) | Masking query data access pattern in encrypted data | |
Cash et al. | Dynamic searchable encryption in very-large databases: Data structures and implementation | |
US9852306B2 (en) | Conjunctive search in encrypted data | |
US11232216B1 (en) | Systems and methods for generation of secure indexes for cryptographically-secure queries | |
KR101873946B1 (ko) | 난독 데이터 생성 | |
EP3321819B1 (en) | Device, method and program for securely reducing an amount of records in a database | |
CN110457945B (zh) | 名单查询的方法、查询方设备、服务方设备及存储介质 | |
WO2017095435A1 (en) | Combining hashes of data blocks | |
US11270227B2 (en) | Method for managing a machine learning model | |
US8184804B2 (en) | Hash function using a piling-up process | |
CN111641712A (zh) | 区块链数据更新方法、装置、设备、系统及可读存储介质 | |
EP2778953A1 (en) | Encoded-search database device, method for adding and deleting data for encoded search, and addition/deletion program | |
US20230205925A1 (en) | Generating hash values for input strings | |
Franke et al. | Parallel Privacy-preserving Record Linkage using LSH-based Blocking. | |
US11146382B2 (en) | Structured file encryption process | |
CN113095430A (zh) | 可保护隐私的模型更新方法、对象识别方法、系统、装置、介质和设备 | |
CN116318660A (zh) | 一种消息扩展与压缩方法及相关装置 | |
US20090043771A1 (en) | Systems, methods and computer products for ensuring data integrity of a storage system | |
CN113254271B (zh) | 一种数据序列恢复方法、装置、设备及存储介质 | |
JPWO2019073913A1 (ja) | 擬似データ生成装置、その方法、及びプログラム | |
CN114461606A (zh) | 数据存储方法、装置、计算机设备及存储介质 | |
CN113806504B (zh) | 一种多维度报表数据计算方法、装置和计算机设备 | |
CN115439118B (zh) | 一种基于区块链的数字存证管理方法 | |
US20230325524A1 (en) | Systems and methods for end-to end-encryption with encrypted multi-maps |
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 |