CN111831645A - 基于区块链的酒数据存储方法及装置 - Google Patents
基于区块链的酒数据存储方法及装置 Download PDFInfo
- Publication number
- CN111831645A CN111831645A CN201911325848.0A CN201911325848A CN111831645A CN 111831645 A CN111831645 A CN 111831645A CN 201911325848 A CN201911325848 A CN 201911325848A CN 111831645 A CN111831645 A CN 111831645A
- Authority
- CN
- China
- Prior art keywords
- storage
- data
- node
- stored
- wine
- 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 55
- 238000013500 data storage Methods 0.000 title claims abstract description 32
- 239000012634 fragment Substances 0.000 claims description 9
- 238000004519 manufacturing process Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000035622 drinking Effects 0.000 claims description 3
- 238000000855 fermentation Methods 0.000 claims description 3
- 230000004151 fermentation Effects 0.000 claims description 3
- 238000004806 packaging method and process Methods 0.000 claims description 3
- 239000002994 raw material Substances 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002427 irreversible effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/22—Indexing; Data structures therefor; Storage 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
-
- 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0283—Price estimation or determination
-
- 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0283—Price estimation or determination
- G06Q30/0284—Time or distance, e.g. usage of parking meters or taximeters
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Marketing (AREA)
- Software Systems (AREA)
- Economics (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供了一种基于区块链的酒数据存储方法及装置。该方法包括:存储节点接收来自用户设备的业务数据存储请求,所述业务数据存储请求包括待存储的酒数据;存储节点对所述待存储的酒数据进行存储,并在存储完成后,向所述用户设备发送存储证明;存储节点将所述存储证明发送至所述出块节点;所述出块节点将所述存储证明记录在区块链中,以使得所述用户设备在预设时间后通过所述区块链确认所述待存储的酒数据的被存储的真实性。以此解决业务数据的实时存储,降低数据的存储延时,提高用户体验的问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于区块链的酒数据存储方法及装置。
背景技术
区块链技术,也被称之为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据库记录。
如果我们把数据库假设成一本账本,读写数据库就可以看做一种记账的行为,区块链技术的原理就是在一段时间内找出记账最快最好的人,由这个人来记账,然后将账本的这一页信息发给整个系统里的其他所有人。这也就相当于改变数据库所有的记录,发给全网的其他每个节点,所以区块链技术也称为分布式账本(distributed ledger)。
目前在数据上链,需要等待该数据被打包成区块、区块完成验证后上链,也就是需要等待数据被完成共识,成为不可逆区块后,才会给用户发送数据上链响应。
在PoW共识中,一个不可逆区块需要60分钟左右;DPoS共识中也需要10分钟左右,这么长的区块确认时间,使得数据的存储延时过长,极大的影响了用户使用区块链系统的体验。
发明内容
基于上述问题,本发明实施例提供了一种基于区块链的酒数据存储方法及装置。
第一方面,提供了一种基于区块链的酒数据存储方法。区块链系统中的区块链节点包括存储节点和出块节点,所述方法应用于所述区块链系统,该方法包括:存储节点接收来自用户设备的业务数据存储请求,所述业务数据存储请求包括待存储的酒数据;存储节点对所述待存储的酒数据进行存储,并在存储完成后,向所述用户设备发送存储证明;存储节点将所述存储证明发送至所述出块节点;所述出块节点将所述存储证明记录在区块链中,以使得所述用户设备在预设时间后通过所述区块链确认所述待存储的酒数据的被存储的真实性。
在一个可选地实现中,所述酒数据包括基础数据以及过程数据;所述基础数据包括所述酒的原产地、生产日期、类型、规格、发酵方式、原材料、售价、包装样式中的一项或多项;所述过程数据包括运输数据、销售数据、生产数据、赠送数据以及饮用数据中的一项或多项。
在一个可选地实现中,所述存储证明包括存储节点的标识、用户标识、数据标识、存储地址以及存储节点的签名,其中,所述存储节点包括指定数量个,所述指定数量个存储节点互为备份。
在一个可选地实现中,存储节点对所述待存储的酒数据进行存储的步骤包括:如果所述待存储的酒数据的数据量小于第一阈值,则选择指定数量个存储节点分别对所述待存储的酒数据进行存储;或者,如果所述待存储的酒数据的数据量大于第一阈值,则将所述待存储的酒数据按照预先确定的分片规则,分为多个分片数据;针对每个分片数据,均选择指定数量个存储节点进行存储;
其中,所述指定数量根据预设的宕机阈值确定,所述指定数量的存储节点的总宕机概率小于等于所述宕机阈值。
在一个可选地实现中,还包括:所述存储节点接收用户设备发送的业务数据访问请求,所述访问请求包括用户标识和/或数据标识;所述存储节点根据所述用户标识和/或数据标识确定所述访问请求对应的已存储的酒数据;所述存储节点将所述已存储的酒数据发送至所述用户设备。
在一个可选地实现中,还包括:所述出块节点接收所述用户设备发送的真实性查询请求,所述真实性查询请求包括用户标识和/或数据标识;所述出块节点根据所述用户标识和/或数据标识在所述区块链中进行查询,确定是否存在对应的已上链的存储证明;所述出块节点将所述查询结果发送至所述用户设备。
在一个可选地实现中,所述业务数据存储请求还包括用户标识,所述用户标识对应有剩余存储空间,所述存储节点对所述待存储的酒数据进行存储的步骤,包括:所述存储节点基于所述待存储的酒数据的数据量确定所述用户标识对应的剩余存储空间是否充足;如果充足,所述存储节点对所述待存储的酒数据进行存储。
在一个可选地实现中,还包括:基于预设规则对已上链的存储证明所对应的用户进行计费;其中,所述预设规则包括按照存储空间进行计费或者按照时间进行计费。
在一个可选地实现中,还包括:基于所述已上链的存储证明,向所述上链的存储证明对应的存储节点发送奖励积分。
在一个可选地实现中,还包括:所述用户设备向所述区块链节点发送抵押操作,所述抵押操作包括用户标识以及抵押积分;所述区块链节点基于所述抵押积分为所述用户分配存储空间。
在一个可选地实现中,还包括:所述存储节点周期性地向所述出块节点发送存储证明查询请求;如果在指定时间段内,所述出块节点未将所述存储证明记录在所述区块链中,则向所述出块节点重新发送所述存储证明。
在一个可选地实现中,还包括:所述出块节点在接收到所述存储证明后,基于所述存储证明确认所述存储证明是否真实;如果真实,对所述存储节点进行奖励;如果不真实,对所述存储节点进行处罚。
第二方面,提供了一种基于区块链的酒数据存储装置。区块链系统中的区块链节点包括存储节点和出块节点,所述装置应用于所述区块链系统,所述装置包括:接收模块,用于接收来自用户设备的业务数据存储请求,所述业务数据存储请求包括待存储的酒数据;存储模块,用于对所述待存储的酒数据进行存储,并在存储完成后,向所述用户设备发送存储证明;发送模块,用于将所述存储证明发送至所述出块节点;记录模块,用于将所述存储证明记录在区块链中,以使得所述用户设备在预设时间后通过所述区块链确认所述待存储的酒数据的被存储的真实性。
第三方面,本说明书实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述第一方面所述的方法步骤。
第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面所述的方法步骤。
第五方面,提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使得计算机执行上述第一方面所述的方法步骤。
本发明实施例提供了一种基于区块链的酒数据存储方法及装置。通过在基于区块链对酒数据进行存储时,在数据存储完成后即向用户设备返回存储证明,该存储证明即可表示该酒数据已经被区块链系统存储,时间快,完全保证数据的存储,将存储证明记录在区块链中,用户在预设时间后基于区块链上的存储证明确认业务数据被存储的真实性,保证了业务数据的安全性以及不可篡改性等等。解决业务数据的实时存储,降低数据的存储延时,提高用户体验的问题。
附图说明
图1应用本申请提供的实施例的示例性架构;
图2为本发明实施例提供的一种基于区块链的酒数据存储方法的流程图;
图3为本发明实施例提供的一种基于区块链的酒数据存储装置的结构示意图;
图4示出了本说明书实施例所提供的一种计算机设备结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种基于区块链的酒数据存储方法及装置。图1示出了应用本申请提供的实施例的示例性架构。
如图1所示,该示例性架构可以包括一个或多个用户设备101和一个或多个区块链节点102,当区块链节点102为多个时,形成区块链系统,其中,该区块链系统中的区块链节点可以包括存储节点和出块节点。用户设备101可以用于与区块链节点102进行交互,例如,用户设备101发送业务数据给存储节点;存储节点对该业务数据进行存储,存储完成后,返回给用户设备存储证明;接收到业务数据的存储节点可以将该业务数据发送给其他存储节点,该其他存储节点对该业务数据进行存储。存储节点将存储证明发送给出块节点,由出块节点打包出块,完成共识后,成为不可逆区块。用户设备101在预设时间后,可以在区块节点上查询其业务数据是否真的被存储。
值得说明的是,本实施例架构并不限定其实现其他功能,例如用户设备101也可以作为区块链节点等。
为便于对本发明实施例的理解,下面将结合附图以具体实施例作进一步的解释说明,实施例并不构成对本发明实施例的限定。
图2为本发明提供的一种基于区块链的酒数据存储方法流程示意图。如图2所示,区块链系统中的区块链节点包括存储节点和出块节点,该方法应用于区块链系统,该方法可以包括如下步骤:
S210,存储节点接收来自用户设备的业务数据存储请求。该业务数据存储请求包括待存储的酒数据。
酒数据包括基础数据以及过程数据等等;
该基础数据包括酒的原产地、生产日期、类型、规格、发酵方式、原材料、售价、包装样式等中的一项或多项;
该过程数据包括运输数据、销售数据、生产数据、赠送数据以及饮用数据等中的一项或多项。
S220,存储节点对该待存储的酒数据进行存储,并在存储完成后,向用户设备发送存储证明。
该存储证明可以包括存储节点的标识、用户标识、数据标识、存储地址以及存储节点的签名,其中,该存储节点包括指定数量个,该指定数量个存储节点互为备份,该指定数量一般大于等于2。
其中,存储节点的标识可以为存储节点的ID、存储节点的签名或者存储节点的地址等等。该存储节点的地址可以为存储节点用于记录积分的地址。该用户标识可以为用户的ID、用户的账户名、用户的签名或者用户的地址等等。该用户的地址可以为用户用于支付存储空间使用费的地址。该存储节点的地址和该用户的地址可以为同一个区块链上的地址。
对于每个存储证明,可以包括指定数量个存储节点的签名,当该指定个存储节点均签名后,才可以表示该业务数据被成功存储。
其中,数据的标识可以为待存储的酒数据的哈希值,也可以是该待存储的酒数据对应的时间戳或序列号等等。
该存储地址可以为存储路径,例如存储的磁盘的位置。
S230,存储节点将存储证明发送至出块节点。
待存储节点将待存储的酒数据存储完成后,还可以将存储证明发送至出块节点,以便该出块节点将该存储证明记录在区块链中。
S240,出块节点将存储证明记录在区块链中,以使得用户设备在预设时间后通过区块链确认待存储的酒数据的被存储的真实性。
出块节点对该存储证明进行打包出块,完成共识后,成为不可逆区块。用户设备在预设时间后,可以在区块节点上查询其业务数据是否真的被存储。
通过本申请实施,在基于区块链对酒数据进行存储时,在数据存储完成后即向用户设备返回存储证明,该存储证明即可表示该酒数据已经被区块链系统存储,时间快,完全保证数据的存储,将存储证明记录在区块链中,用户在预设时间后基于区块链上的存储证明确认业务数据被存储的真实性,保证了业务数据的安全性以及不可篡改性等等。解决业务数据的实时存储,降低数据的存储延时,提高用户体验的问题。
在一个实施例中,对于业务数据的存储,可以基于数据量进行存储,对于数据量较大的业务数据,可以进行分片存储,以确保存储效率。基于此,上述步骤S220还包括如下步骤:
步骤1.1),如果待存储的酒数据的数据量小于第一阈值,则选择指定数量个存储节点分别对待存储的酒数据进行存储;
或者,
步骤1.2),如果待存储的酒数据的数据量大于第一阈值,则将待存储的酒数据按照预先确定的分片规则,分为多个分片数据;针对每个分片数据,均选择指定数量个存储节点进行存储;
其中,指定数量根据预设的宕机阈值确定,指定数量的存储节点的总宕机概率(每个存储节点宕机的概率相乘)小于等于宕机阈值。
在选择指定数量个存储节点时,可以采用随机的方式进行选择,该随机方式还可以为可以验证随机性的随机方式。
在一些实施例中,存储节点存储后,该用户可以直接根据存储证明中的信息,访问自己存储的数据。作为一个示例,该方法还可以包括如下步骤:
步骤2.1),存储节点接收用户设备发送的业务数据访问请求,该访问请求包括用户标识和/或数据标识;
步骤2.2),存储节点根据用户标识和/或数据标识确定访问请求对应的已存储的酒数据;
步骤2.3),存储节点将已存储的酒数据发送至用户设备。
其中,每个用户标识可以对应多个数据标识,该数据标识可以为一个数据分片的标识或者一个数据段的标识等等。
在一些实施例中,用户设备可以通过多种方式对待存储的酒数据的被存储的真实性进行查询。作为一个示例,用户设备可以基于存储证明中的信息向出块节点进行查询。基于此,该方法还可以包括如下步骤:
步骤3.1),出块节点接收用户设备发送的真实性查询请求,该真实性查询请求包括用户标识和/或数据标识;
步骤3.2),出块节点根据用户标识和/或数据标识在区块链中进行查询,确定是否存在对应的已上链的存储证明;
步骤3.3),出块节点将查询结果发送至所述用户设备。
其中,查询结果可以包括存在对应的已上链的存储证明或不存在对应的已上链的存储证明。其中,该查询结果可以包括出块节点的签名。
在一些实施例中,业务数据存储请求还包括用户标识,该用户标识对应有剩余存储空间。基于此,上述步骤S220具体可以通过如下步骤实现:
步骤4.1),存储节点基于待存储的酒数据的数据量确定用户标识对应的剩余存储空间是否充足;也就是,校验用户标识对应的剩余存储空间是否≥本次存储需要的存储空间。
步骤4.2),如果充足,存储节点对待存储的酒数据进行存储。
步骤4.3),如果不充足,向用户设备发送告警,所述告警用于指示存储空间不足。
在一些实施例中,还可以针对用户对存储空间的使用情况进行计费。基于此,该方法还可以包括如下步骤:
步骤5.1),基于预设规则对已上链的存储证明所对应的用户进行计费;其中,该预设规则包括按照存储空间进行计费或者按照时间进行计费。按照存储空间进行计费可以指按照存储空间的总量扣费,该总量等于每单位时间存储空间*存储时间。按照时间进行计费可以指在每个单位时间开始前,扣除单位时间内的存储空间。该单位时间可以根据实际需要确定,例如,年/月/日。
在一些实施例中,在存储节点执行完存储任务后,还可以对存储节点进行奖励,该奖励可以通过区块链以积分的形式发放。作为一个示例,该方法还可以包括如下步骤:
步骤6.1),基于已上链的存储证明,向上链的存储证明对应的存储节点发送奖励积分。
在一些实施例中,用户设备可以通过向链抵押或者锁仓等行为,来获得存储空间。对于已经使用了的存储空间,抵押的积分不能够用来赎回。作为一个示例,该方法还可以包括如下步骤:
步骤7.1),用户设备向区块链节点发送抵押操作,抵押操作包括用户标识以及抵押积分;
步骤7.2),区块链节点基于抵押积分为所述用户分配存储空间。
在一些实施例中,存储节点会校验出块出块节点是否将存储证明上链;出块节点会校验存储节点的存储证明是否真实。作为一个示例,上述方法还可以包括如下步骤:
步骤8.1),存储节点周期性地向出块节点发送存储证明查询请求;
步骤8.2),如果在指定时间段内,出块节点未将存储证明记录在区块链中,则向出块节点重新发送存储证明。
如果出块节点将存储证明记录在区块链中则可以停止向所述出块节点发送所述存储证明查询请求。
作为一个示例,上述方法还可以包括如下步骤:
步骤9.1),出块节点在接收到存储证明后,基于存储证明确认存储证明是否真实;出块节点可以根据存储证明向该存储节点进行查询,确认该存储证明是不是真实的。
步骤9.2),如果真实,则对存储节点进行奖励;该奖励可以为通过区块链发放积分。
步骤9.3),如果不真实,则对存储节点进行处罚。该处罚可以为不向该存储节点发放积分。或者,指示该存储节点在指定的时间段内暂停对新的业务数据进行存储。
图3为本申请实施例提供的一种基于区块链的酒数据存储装置结构示意图。如图3所示,区块链系统中的区块链节点包括存储节点和出块节点,该装置应用于所述区块链系统,该装置包括:
接收模块301,用于接收来自用户设备的业务数据存储请求,所述业务数据存储请求包括待存储的酒数据;
存储模块302,用于对所述待存储的酒数据进行存储,并在存储完成后,向所述用户设备发送存储证明;
发送模块303,用于将所述存储证明发送至所述出块节点;
记录模块304,用于将所述存储证明记录在区块链中,以使得所述用户设备在预设时间后通过所述区块链确认所述待存储的酒数据的被存储的真实性。
在一些实施例中,所述酒数据包括销售数据和库存数据;
所述销售数据包括销售订单数据、售出服装的售价、售出服装的利润、售出服装的折扣、售出服装的款式、售出服装的码数、售出服装的类型、售出服装的品牌中的一项或多项;
所述库存数据包括库存服装的进价、库存服装的数量、库存服装的款式、存储服装的码数、库存服装的试穿数据、库存服装的展示数据、库存服装的类型、以及库存服装的压货时间中的一项或多项。
在一些实施例中,所述存储证明包括存储节点的标识、用户标识、数据标识、存储地址以及存储节点的签名,其中,所述存储节点包括指定数量个,所述指定数量个存储节点互为备份。
在一些实施例中,所述存储模块302具体用于:
如果所述待存储的酒数据的数据量小于第一阈值,则选择指定数量个存储节点分别对所述待存储的酒数据进行存储;
或者,
如果所述待存储的酒数据的数据量大于第一阈值,则将所述待存储的酒数据按照预先确定的分片规则,分为多个分片数据;针对每个分片数据,均选择指定数量个存储节点进行存储;
其中,所述指定数量根据预设的宕机阈值确定,所述指定数量的存储节点的总宕机概率小于等于所述宕机阈值。
在一些实施例中,所述接收模块301还用于,接收用户设备发送的业务数据访问请求,所述访问请求包括用户标识和/或数据标识;
第一确定模块,用于根据所述用户标识和/或数据标识确定所述访问请求对应的已存储的酒数据;
所述发送模块还用于,将所述已存储的酒数据发送至所述用户设备。
在一些实施例中,所述接收模块301还用于,接收所述用户设备发送的真实性查询请求,所述真实性查询请求包括用户标识和/或数据标识;
第二确定模块,用于根据所述用户标识和/或数据标识在所述区块链中进行查询,确定是否存在对应的已上链的存储证明;
所述发送模块303还用于,将所述查询结果发送至所述用户设备。
在一些实施例中,所述业务数据存储请求还包括用户标识,所述用户标识对应有剩余存储空间,所述存储模块302具体用于:
所述存储节点基于所述待存储的酒数据的数据量确定所述用户标识对应的剩余存储空间是否充足;
如果充足,所述存储节点对所述待存储的酒数据进行存储。
在一些实施例中,还包括:
计费模块,用于基于预设规则对已上链的存储证明所对应的用户进行计费;
其中,所述预设规则包括按照存储空间进行计费或者按照时间进行计费。
在一些实施例中,还包括:
奖励模块,用于基于所述已上链的存储证明,向所述上链的存储证明对应的存储节点发送奖励积分。
在一些实施例中,还包括:
抵押模块,用于向所述区块链节点发送抵押操作,所述抵押操作包括用户标识以及抵押积分;
分配模块,用于基于所述抵押积分为所述用户分配存储空间。
在一些实施例中,还包括:
所述发送模块303还用于,周期性地向所述出块节点发送存储证明查询请求;
所述发送模块303还用于,如果在指定时间段内,所述出块节点未将所述存储证明记录在所述区块链中,则向所述出块节点重新发送所述存储证明。
在一些实施例中,还包括:
第三确定模块,用于在接收到所述存储证明后,基于所述存储证明确认所述存储证明是否真实;
奖励模块,用于如果真实,对所述存储节点进行奖励;
处罚模块,用于如果不真实,对所述存储节点进行处罚。
可以理解,本实施例的基于区块链的酒数据存储装置与图2所示的方法实施例相对应,因此,以上关于图2所示的方法实施例的描述同样适用于本实施例的装置,在此不再赘述。
图4示出了本说明书实施例所提供的一种计算机设备结构示意图,该计算机设备可以包括:处理器410、存储器420、输入/输出接口430、通信接口440和总线450。其中处理器410、存储器420、输入/输出接口430和通信接口440通过总线450实现彼此之间在设备内部的通信连接。
处理器410可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器420可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器420可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器420中,并由处理器410来调用执行。
输入/输出接口430用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口440用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线450包括一通路,在设备的各个组件(例如处理器410、存储器420、输入/输出接口430和通信接口440)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器410、存储器420、输入/输出接口430、通信接口440以及总线450,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的范围之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于区块链的酒数据存储方法,其特征在于,区块链系统中的区块链节点包括存储节点和出块节点,所述方法应用于所述区块链系统,所述方法包括:
存储节点接收来自用户设备的业务数据存储请求,所述业务数据存储请求包括待存储的酒数据;
存储节点对所述待存储的酒数据进行存储,并在存储完成后,向所述用户设备发送存储证明;
存储节点将所述存储证明发送至所述出块节点;
所述出块节点将所述存储证明记录在区块链中,以使得所述用户设备在预设时间后通过所述区块链确认所述待存储的酒数据的被存储的真实性。
2.根据权利要求1所述的方法,其特征在于,所述酒数据包括基础数据以及过程数据;
所述基础数据包括原产地、生产日期、类型、规格、发酵方式、原材料、售价、包装样式中的一项或多项;
所述过程数据包括运输数据、销售数据、生产数据、赠送数据以及饮用数据中的一项或多项。
3.根据权利要求1所述的方法,其特征在于,所述存储证明包括存储节点的标识、用户标识、数据标识、存储地址以及存储节点的签名,其中,所述存储节点包括指定数量个,所述指定数量个存储节点互为备份;存储节点对所述待存储的酒数据进行存储的步骤包括:
如果所述待存储的酒数据的数据量小于第一阈值,则选择指定数量个存储节点分别对所述待存储的酒数据进行存储;
或者,
如果所述待存储的酒数据的数据量大于第一阈值,则将所述待存储的酒数据按照预先确定的分片规则,分为多个分片数据;针对每个分片数据,均选择指定数量个存储节点进行存储;
其中,所述指定数量根据预设的宕机阈值确定,所述指定数量的存储节点的总宕机概率小于等于所述宕机阈值。
4.根据权利要求3所述的方法,其特征在于,还包括:
所述存储节点接收用户设备发送的业务数据访问请求,所述访问请求包括用户标识和/或数据标识;
所述存储节点根据所述用户标识和/或数据标识确定所述访问请求对应的已存储的酒数据;
所述存储节点将所述已存储的酒数据发送至所述用户设备。
5.根据权利要求1所述的方法,其特征在于,还包括:
所述用户设备向所述区块链节点发送抵押操作,所述抵押操作包括用户标识以及抵押积分;
所述区块链节点基于所述抵押积分为所述用户分配存储空间。
6.根据权利要求1所述的方法,其特征在于,还包括:
所述存储节点周期性地向所述出块节点发送存储证明查询请求;
如果在指定时间段内,所述出块节点未将所述存储证明记录在所述区块链中,则向所述出块节点重新发送所述存储证明。
7.根据权利要求6所述的方法,其特征在于,还包括:
所述出块节点在接收到所述存储证明后,基于所述存储证明确认所述存储证明是否真实;
如果真实,对所述存储节点进行奖励;
如果不真实,对所述存储节点进行处罚。
8.一种基于区块链的酒数据存储装置,其特征在于,区块链系统中的区块链节点包括存储节点和出块节点,所述装置应用于所述区块链系统,所述装置包括:
接收模块,用于接收来自用户设备的业务数据存储请求,所述业务数据存储请求包括待存储的酒数据;
存储模块,用于对所述待存储的酒数据进行存储,并在存储完成后,向所述用户设备发送存储证明;
发送模块,用于将所述存储证明发送至所述出块节点;
记录模块,用于将所述存储证明记录在区块链中,以使得所述用户设备在预设时间后通过所述区块链确认所述待存储的酒数据的被存储的真实性。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-7任意一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911325848.0A CN111831645A (zh) | 2019-12-20 | 2019-12-20 | 基于区块链的酒数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911325848.0A CN111831645A (zh) | 2019-12-20 | 2019-12-20 | 基于区块链的酒数据存储方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111831645A true CN111831645A (zh) | 2020-10-27 |
Family
ID=72912759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911325848.0A Pending CN111831645A (zh) | 2019-12-20 | 2019-12-20 | 基于区块链的酒数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111831645A (zh) |
-
2019
- 2019-12-20 CN CN201911325848.0A patent/CN111831645A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108446974A (zh) | 数据处理装置、方法及计算机可读存储介质 | |
US20200366748A1 (en) | Mining method and device based on blockchain, and computer readable storage medium | |
CN111078706A (zh) | 基于区块链的个人健康数据存储方法及装置 | |
CN111831641A (zh) | 基于pbft共识的交通数据存储方法及装置 | |
CN111831726A (zh) | 基于区块链的金融抵押数据存储方法及装置 | |
CN111832077A (zh) | 基于区块链的合同抵押数据存储方法及装置 | |
CN108876339B (zh) | 基于通证的电子宠物交易方法及装置 | |
CN111831645A (zh) | 基于区块链的酒数据存储方法及装置 | |
CN110909032A (zh) | 区块链中数据的管理方法及装置 | |
CN116188072A (zh) | 一种用户权益处理系统及会员权益处理系统 | |
CN111831621A (zh) | 基于区块链的服饰数据存储方法及装置 | |
CN111831666A (zh) | 基于pbft共识的家具数据存储方法及装置 | |
CN107424036B (zh) | 数据处理方法及装置 | |
CN111831672A (zh) | 基于区块链的家具数据存储方法及装置 | |
CN111046086A (zh) | 基于区块链的食品数据存储方法及装置 | |
CN111833051A (zh) | 基于pbft共识的实物抵押数据存储方法及装置 | |
CN111831646A (zh) | 基于区块链的化妆品数据存储方法及装置 | |
CN111831850A (zh) | 基于区块链的家庭监控数据存储方法及装置 | |
CN111831727A (zh) | 基于区块链的交通数据存储方法及装置 | |
CN111831668A (zh) | 基于区块链的室外空间检测数据存储方法及装置 | |
CN111831737A (zh) | 基于区块链的家用电器数据存储方法及装置 | |
CN111831851A (zh) | 基于pbft共识的家庭监控数据存储方法及装置 | |
WO2021125107A1 (ja) | 制御方法、装置、および、プログラム | |
CN111831736A (zh) | 基于区块链的实物抵押数据存储方法及装置 | |
CN111831644A (zh) | 基于区块链的信用抵押数据存储方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20201027 |