CN110543788A - 数据存储方法、装置、计算机可读存储介质和计算机设备 - Google Patents
数据存储方法、装置、计算机可读存储介质和计算机设备 Download PDFInfo
- Publication number
- CN110543788A CN110543788A CN201910859251.8A CN201910859251A CN110543788A CN 110543788 A CN110543788 A CN 110543788A CN 201910859251 A CN201910859251 A CN 201910859251A CN 110543788 A CN110543788 A CN 110543788A
- Authority
- CN
- China
- Prior art keywords
- transaction
- block
- node
- state
- data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000013500 data storage Methods 0.000 title claims abstract description 62
- 238000012790 confirmation Methods 0.000 claims abstract description 73
- 238000012795 verification Methods 0.000 claims abstract description 51
- 238000012544 monitoring process Methods 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims description 74
- 238000004590 computer program Methods 0.000 claims description 11
- 230000002159 abnormal effect Effects 0.000 claims description 9
- 238000004140 cleaning Methods 0.000 claims description 5
- 238000012937 correction Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 14
- 230000001360 synchronised effect Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 230000005856 abnormality Effects 0.000 description 8
- 239000003795 chemical substances by application Substances 0.000 description 8
- 238000007726 management method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005201 scrubbing Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G06F16/2219—Large Object storage; Management thereof
-
- 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/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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Economics (AREA)
- Computing Systems (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种数据存储方法、装置、计算机可读存储介质和计算机设备,所述方法包括:获取业务数据;业务数据包括业务标识和交易状态信息;监控业务数据,对交易状态信息进行更新;根据业务标识将业务数据发送至全量节点,使全量节点将业务数据生成对应的当前区块并进行共识验证;接收全量节点分发的验证后的区块,将验证后的区块写入对应的交易表;更新交易表的区块写入状态,利用更新后的交易状态信息和区块写入状态确定交易确认标签;当区块写入状态和交易确认标签均成功写入磁盘时,删除缓存中的业务数据。本申请提供的方案能够有效存储业务请求的交易状态,并能够有效保证交易状态的准确性和有效性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据存储方法、装置、计算机可读存储介质和计算机设备。
背景技术
随着计算机技术的迅速发展,区块链技术逐渐被广泛应用。区块链的分布式存储的独特性体现在区块链每个节点都按照块链式结构存储完整的数据。目前,区块链中通常是利用相对于共识节点的轻量型节点对区块链交易进行确认,即不需要运行完全节点也可验证支付,只需要保存所有的数据区块的区块头。轻量型节点与全量节点连接,通过从区块链网络中查询到相符的交易,就可以确认区块链网络已经认可了这笔交易,以及得到了网络的多少个确认。
然而节点对交易进行确认时,通常是利用过滤器获取相关的交易,交易只有打包进区块后才能确认,需要依赖于区块高度对交易进行确认。对于暂未打包进区块的交易,区块和交易状态可能不同步,容易出现重复支付的情况,导致交易状态的有效性和交易安全性得不到保障。
发明内容
基于此,有必要针对无法准确有效地判断交易状态,导致交易状态的有效性和交易安全性得不到保障的技术问题,提供一种数据存储方法、装置、计算机可读存储介质和计算机设备。
一种数据存储方法,包括:
获取业务数据;所述业务数据包括业务标识和交易状态信息;
监控所述业务数据,对所述交易状态信息进行更新;
根据所述业务标识将所述业务数据发送至全量节点,使所述全量节点将所述业务数据生成对应的当前区块并进行共识验证;
接收所述全量节点分发的验证后的区块,将所述验证后的区块写入对应的交易表;
更新所述交易表的区块写入状态,利用所述更新后的交易状态信息和所述区块写入状态确定交易确认标签;
当所述区块写入状态和所述交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
一种数据存储装置,其特征在于,所述装置包括:
数据获取模块,用于获取业务数据;所述业务数据包括业务标识和交易状态信息;
数据监控模块,用于监控所述业务数据,对所述交易状态信息进行更新;
数据发送模块,用于根据所述业务标识将所述业务数据发送至全量节点,使所述全量节点将所述业务数据生成对应的当前区块并进行共识验证;
数据存储模块,用于接收所述全量节点分发的验证后的区块,将所述验证后的区块写入对应的交易表;更新所述交易表的区块写入状态,利用所述更新后的交易状态信息和所述区块写入状态确定交易确认标签;
缓存清理模块,用于当所述区块写入状态和所述交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述数据存储方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述数据存储方法的步骤。
上述数据存储方法、装置、计算机可读存储介质和计算机设备,获取缓存中的业务数据后,实时监控业务数据,对交易状态信息进行更新,同时根据业务标识将业务数据发送至对应目标区块链的全量节点,使全量节点生成业务数据的当前区块,并对当前区块进行共识验证。接收全量节点分发的验证后的区块,将验证后的区块写入对应的交易表,以对接收到的验证后的区块实时存储,并更新交易表的区块写入状态。由于持续监控业务数据处理过程中的处理状态,并实时更新交易状态信息,则可以利用更新后的交易状态信息和交易表的区块写入状态分别确认业务数据对应的交易状态是否成功,并生成验证后的区块对应的交易确认标签,当区块写入状态和交易确认标签均成功写入磁盘时,表示交易状态已成功且接收的验证后的区块已存储成功,此时则可以删除缓存中的相关业务数据,减少缓存占用。通过分别实时存储交易状态信息以及接收的验证后的区块,并根据交易状态信息和区块写入状态分别确认交易状态,因此,无论边缘节点是否接收到验证后的区块,都能够根据边缘节点本地存储的交易状态信息判断业务数据的交易状态,从而能够有效保证当前的交易状态是准确有效的,进而能够有效防止因交易状态不确定而导致重复支付的情况,有效提高了交易的安全性。
附图说明
图1为一个实施例中数据存储方法的应用环境图;
图2为一个实施例中区块链业务***的结构框图;
图3为一个实施例中数据存储方法的流程示意图;
图4为一个实施例中监控交易状态步骤的流程示意图;
图5为具体的一个实施例中数据存储方法的流程示意图;
图6为一个实施例中数据存储方法的时序图;
图7为一个实施例中数据存储装置的结构框图;
图8为另一个实施例中数据存储装置的结构框图;
图9为另一个实施例中数据存储装置的结构框图;
图10为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中数据存储方法的应用环境图。参照图1,该数据存储方法应用于数据存储***,其中,数据存储***可以是基于区块链技术的区块链业务***。该数据存储***包括终端110和区块链业务***120,区块链业务***120为区块链网络中部署的计算机节点。终端110和区块链业务***120通过网络进行通信。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。区块链业务***120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,参考图2,区块链业务***120包括多个层级的节点:边缘节点1202、代理节点1204、共识节点1206。其中,每个共识节点还可以部署有一个对应的记账节点。整个区块链业务***中的节点均可表示为区块链节点,每个节点可被提供为一个服务器。其中,边缘节点1202可以是第一层级的权威机构部署的计算机节点,第一层可以为区块链业务***中的应用服务层,如各服务商部署的计算机节点。边缘节点1202可以是与业务参与方终端110以及各个区块链节点相连接的最靠近用户终端侧的节点。代理节点1204可以是第二层级的权威机构部署的计算机节点,第二层可以为区块链业务***中的平台产品服务层,如省级机构部署的计算机节点。共识节点1206可以是第三层级的相应的权威机构部署的计算机节点,第三层可以为区块链业务***中的区块链底层平台,如国家级机构和省级机构部署的计算机节点。每个边缘节点1202、代理节点1204以及共识节点1206具有对应的服务区域。每个边缘节点1202与所属服务区域内的代理节点1204通过网络直接连接,或者通过其它边缘节点1202与相应服务区域内的代理节点1204间接连接。边缘节点1202可用于接收业务参与方终端发起的业务请求,并根据业务属性将请求包分发至该区块链业务***中相应的节点。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
如图3所示,在一个实施例中,提供了一种数据存储方法。本实施例主要以该方法应用于上述图2中的区块链120中的边缘节点1202来举例说明。参照图3,该数据存储方法具体包括如下步骤:
步骤302,获取业务数据;业务数据包括业务标识和交易状态信息。
在基于区块链的业务***中,可以预先按照业务类型部署多个区块链,每个区块链都具有对应的业务类型,同一业务类型也可以对应多个区块链。每个区块链都可以具有相应的区块链标识。终端中可以安装相应的业务应用,用于终端发起相应业务类型的业务请求。基于区块链的业务***中包括多个节点,每个节点都可以对接收的业务数据进行相应的处理。区块链节点可以是部署的服务器,服务器与多个区块链建立了连接,并与多个终端建立了连接。本实施例中,该数据存储方法应用于数据存储***,数据存储***可以是基于区块链的业务***。该业务***可以是公有链***、也可以是私有链***、还可以是联盟链***。
其中,边缘节点是指区块链***中相对核心的全量节点而言的安全可靠性较低的计算机节点,边缘节点可以为相对于全量节点的轻量型节点,可提供交易和查询的功能,但不具备全量交易信息。全量节点是指用于保存全量的数据文件的计算机节点,具有较高的安全可靠性。
全量节点是指区块链***中对于保证数据可靠性至关重要的计算机节点。全量节点可以是区块链***中的可靠节点,全量节点可以包括代理节点、共识节点和记账节点等。全量节点作为区块链***中的核心节点,对计算机硬件性能和网络环境具有较高要求。本实施例在联盟链场景中,为了保证安全和性能的要求,只有少数权威机构成员可以部署可靠节点。比如,在上述电子***场景中,只有国家税务总局可以部署可靠节点;在上述版权证据场景中,只有国家版权中心可以部署可靠节点。权威机构部署的计算机节点具有较高的防止恶意攻击入侵的能力,同时能够保证较小的计算机性能故障概率,可以认为是全量节点。
其中,业务数据是指用户所需业务对应生成的数据,业务数据可以有多种形式,例如,可以是终端对某一业务发起的业务请求、用户对某一业务的确认请求、用户针对某业务的数据读写操作等。比如,在交易场景中,业务数据可以是交易数据,如电子***等。业务数据中包括了业务标识和交易状态信息,交易状态信息可以是该业务数据的初始交易状态信息,例如,初始交易状态信息可以为待处理状态。
例如,当业务数据为终端基于业务请求所发送时,终端中可以安装有业务***对应的业务应用,用户可以通过终端上的业务应用发起相应的业务请求。边缘节点接收终端发送的业务请求候,则将业务请求携带的业务数据存储至缓存中。业务请求携带了相应的业务标识,边缘节点首先对业务请求进行签名验证和权限校验。
具体地,业务数据中还包括签名信息,边缘节点接收到业务请求后,获取该用户标识对应的预先存储的密钥信息,并利用密钥信息对该业务数据的签名信息进行验证。具体地,边缘节点可以利用用户公钥解析相应的签名,得到摘要信息,并按照预设算法计算出数据包的摘要信息,将两个摘要信息进行匹配,若匹配成功则确定签名验证通过。当签名验证通过后,边缘节点可以进一步根据业务请求携带的业务标识获取对应的区块链标识,其中,业务类型对应的区块链可能有多个。边缘节点则根据业务类型和业务标识与多条区块链分别进行哈希计算,得到相应的哈希结果集合,当哈希结果集合中存在与该业务数据对应的目标区块链标识时,则表示对目标区块链具有访问权限。
当对该业务请求进行签名验证和权限校验均验证通过后,进行步骤304;若签名验证和权限校验中任一项验证未通过,则确定该业务请求验证失败,表示该业务请求存在恶意攻击或业务数据存在恶意篡改的风险,边缘节点则可以拦截该业务请求和业务数据。
边缘节点还可以直接获取缓存中的业务数据,缓存中的业务数据可以是接收到终端发送的业务数据后,存储至缓存中的业务数据;还可以是从其他业务平台获取的业务数据并存储至缓存中的。
步骤304,监控业务数据,对交易状态信息进行更新。
其中,交易状态信息可以表示该业务请求实时的交易状态,当交易处于不同的阶段和时期时,对应的交易状态信息则不同,例如交易状态包括待处理、处理中、共识中以及交易成功等多种状态信息以及包括详细的交易信息。
当边缘节点将业务请求对应的业务数据发送至目标区块链标识对应的全量节点的同时,监控该业务请求的业务数据的交易状态。具体地,当业务数据还未发送给全量节点时,可直接识别业务数据的交易状态,例如当前的业务数据的交易状态可以为未分发、未处理以及待处理等状态信息。边缘节点实时监控业务数据的处理状态,并实时根据处理状态对交易状态信息进行更新。
步骤306,根据业务标识将业务数据发送至全量节点,使全量节点将业务数据生成对应的当前区块并进行共识验证。
其中,轻量节点为全量节点所连接的边缘节点。全量节点可以部署有多个。比如,在上述电子***场景中,可以在国家税务总局分布在全国的几个数据中心分别部署全量节点。多个全量节点之间通过网络两两连接。每个全量节点与附近的若干边缘节点通过网络连接。当全量节点部署有多个时,边缘节点可以优先将业务数据发送至位置距离最近的全量节点。接收到业务数据的全量节点将相应区块广播至其它全量节点,每个全量节点在按照上述方式将区块分发至边缘节点。
其中,区块是在区块链网络上承载交易数据的数据包,是一种被标记上时间戳和之前一个区块的哈希值的容器数据结构,区块经过网络的共识机制验证并确认区块中的交易。区块包括区块头和区块体。区块头记录了前一顺序区块的时间戳以及当前数据区块的时间戳。区块还包括区块高度,区块高度是区块链接在主链的个数,也就是连接在区块链上的块数。区块高度可以为区块的标示符,区块的标示符可以包括多个,例如可以包括区块头的哈希值,还可以包括区块高度,每个区块有一个明确的、固定的区块高度。区块账本是指用于记录一段时间产生的待存证数据的载体,记录了多个数据区块的信息。多个数据区块在区块账本中按照生成时间顺序串联。
边缘节点根据业务标识从多条区块链中确定出对应的目标区块链标识后,则将业务请求对应的业务数据发送至目标区块链标识对应的全量节点,使全量节点将业务数据生成对应的当前区块,全量节点中的共识节点则对生成的当前区块进行共识验证。当共识验证通过后,全量节点将当前区块写入对应的区块账本中,并将当前区块广播至目标区块链的其他记账节点中,全量节点进而将当前区块同步分发至多个轻量节点,使得多个轻量节点对当前区块进行备份存储。
在其中一个实施例中,边缘节点获取业务数据后,根据业务标识从多条区块链中确定出对应的目标测试链标识后,根据业务数据生成对应的当前区块。具体地,边缘节点可以获取目标方式链中与当前区块相关联的上一区块的区块头信息,根据上一区块的区块头信息生成当前区块,并将该业务数据写入当前区块中。在生成当前区块时,还可以根据上一区块的区块头信息生成当前区块的特征值,具体可以采用多种哈希算法进行并联计算,从而得到当前区块的特征值。边缘节点进而根据区块特征值、业务数据、签名信息、上一区块的区块头特征值以及时间戳等信息生成该业务数据的当前区块。边缘节点生成业务数据对应的当前区块后,则将当前区块分发至目标区块链标识对应的多个全量节点。使全量节点中的共识节点获取到当前区块后,对当前区块进行共识验证。当共识验证通过后,则将当前区块在目标区块链中进行广播并写入区块账本。
边缘节点将业务数据分发至全量节点之后,则可以实时获取全量节点对该业务数据的处理状态。例如,当全量节点根据业务数据生成对应的当前区块时,边缘节点可以从全量节点获取到该业务数据处于区块生成的交易状态信息;当全量节点对当前区块进行共识时,边缘节点则可以从全量节点获取到该业务数据处于共识中的交易状态信息;当全量节点对当前区块共识验证通过并写入共识节点的区块账本中之后,表示业务请求已经交易成功,边缘节点则可以从全量节点获取到该业务数据处于交易成功的交易状态信息。
边缘节点根据实时获取的交易状态生成对应的交易状态信息,例如,还可以是根据实时获取的当前状态修改交易状态信息的交易状态。边缘节点则实时对交易状态信息进行缓存。
步骤308,接收全量节点分发的验证后的区块,将验证后的区块写入对应的交易表;更新交易表的区块写入状态,利用更新后的交易状态信息和区块写入状态确定交易确认标签。
其中,目标区块链还包括对应的交易表,目标区块链中的每个节点都存储有对应的交易表,交易表用于存储交易输入和交易输出组成的交易记录数据。
全量节点对当前区块共识验证通过后,全量节点将当前区块写入对应的区块账本中,并将当前区块广播至目标区块链的其他记账节点中,全量节点进而将当前区块同步分发至多个轻量节点。边缘节点则实时接收全量节点分发的当前区块。其中,区块包括区块头和区块体。全量节点可以通过代理节点向边缘节点分发验证后的区块,代理节点在向边缘节点分发验证后的区块时,可只将验证后的区块的区块头部分转发给边缘节点。边缘节点接收到代理节点分发的验证后的区块的区块头时,则将验证后的区块的区块头部分进行存储。具体地,边缘节点获取目标区块链标识对应的交易表,并将验证后的区块的交易数据写入交易中,从而对验证后的区块进行存储。
其中,边缘节点生成交易状态信息和接收全量节点分发的验证后的区块可能是不同步的。边缘节点将生成的交易状态信息和接收的验证后的区块分别进行实时存储。
边缘节点将验证后的区块的交易数据写入交易表后,则更新对应交易表中的区块写入状态。即将验证后的区块进行存储时,在交易表中写入该区块对应的交易数据,写入完成则表示该当前区块已经存储成功,交易表的区块写入状态则为区块写入成功。
边缘节点将生成的交易状态信息和接收的验证后的区块分别进行实时存储后,则可以分别根据交易状态信息和交易表的区块写入状态确定该业务数据的交易状态是否成功。具体地,当交易状态信息中的状态为交易成功时,则确定该业务数据的交易状态已成功,则生成对应的交易确认标签并进行存储。当交易表的区块写入状态则为区块写入成功时,则对该业务请求添加交易成功的交易确认标签。即边缘节点只要任意接收到交易成功的交易状态信息,或者检测到交易表的区块写入状态则为区块写入成功时,即表示此时交易已成功,边缘节点则生成交易确认标签并存储。其中,边缘节点可以将交易确认标签和交易表均存储至本地的磁盘中。
步骤310,当区块写入状态和交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
其中,边缘节点的缓存中存储了业务数据,还存储了对该业务数据进行处理过程中的所产生的相关缓存信息,缓存信息可以包括监控业务数据的交易状态的交易状态信息、对业务数据的处理信息等数据。边缘节点将生成的交易确认标签和获取到的验证后的区块则存储至本地的磁盘中,当交易确认标签和验证后的区块均存储至磁盘后,表示区块写入状态和交易确认标签均已成功写入磁盘。
当区块写入状态和交易确认标签均写入成功时,表示该业务数据的交易状态为交易成功。边缘节点则可以删除缓存中的相关业务数据。
由于区块链为P2P(Peer-To-Peer,对等联网)传播方式和共识节点存储的因素,边缘节点的缓存中的交易状态存在两种可能,如果边缘节点获取的交易状态信息先成功返回,即先根据交易状态信息确认交易成功,则缓存中交易状态变为成功状态并生成交易确认标签,此时还需要等到验证后的区块同步到本边缘节点交易才能删除缓存中的缓存信息;另外一种情况则是验证后的区块先同步到边缘节点,交易状态就会变成区块写入成功状态,则可以根据交易表的区块写入状态确认交易成功并生成交易确认标签,此时还需等到获取到交易响应成功的交易状信息,才从缓存中删除缓存信息。
边缘节点通过实时更新业务数据的交易状态信息,能够有效地及时获取业务数据的交易状态。通过将生成的交易状态信息和接收的验证后的区块分别进行实时存储,并根据交易状态信息和区块写入状态分别确认业务数据的是否交易成功。因此,无论边缘节点是否接收到全量节点分发的验证后的区块,都能够根据本地存储的交易状态信息判断业务数据的交易状态,从而能够有效保证当前的交易状态是准确有效地,进而能够有效防止因交易状态不确定而导致重复支付的情况。当区块写入状态和交易确认标签均写入成功时,能够完全保证此时交易状态为成功状态且区块已经存储成功,此时则可以删除边缘节点缓存中的交易状态信息,以减少边缘节点的资源占用。
本实施例中,边缘节点获取缓存中的业务数据后,实时监控业务数据,对交易状态信息进行更新,同时根据业务标识将业务数据发送至对应目标区块链的全量节点,使全量节点生成业务数据的当前区块,并对当前区块进行共识验证。接收全量节点分发的验证后的区块,将验证后的区块写入对应的交易表,以对接收到的验证后的区块实时存储,并更新交易表的区块写入状态。由于持续监控业务数据处理过程中的处理状态,并实时更新交易状态信息,则可以利用更新后的交易状态信息和交易表的区块写入状态分别确认业务数据对应的交易状态是否成功,并生成验证后的区块对应的交易确认标签,当区块写入状态和交易确认标签均成功写入磁盘时,表示交易状态已成功且接收的验证后的区块已存储成功,此时则可以删除缓存中的业务数据,减少缓存占用。通过分别实时存储交易状态信息以及接收的验证后的区块,并根据交易状态信息和区块写入状态分别确认交易状态,因此,无论边缘节点是否接收到验证后的区块,都能够根据边缘节点本地存储的交易状态信息判断业务数据的交易状态,从而能够有效保证当前的交易状态是准确有效的,进而能够有效防止因交易状态不确定而导致重复支付的情况,有效提高了交易的安全性。
在一个实施例中,验证后的区块包括区块头,全量节点包括共识节点、记账节点以及代理节点,全量节点用于返回处理状态和生成当前区块,共识节点用于对当前区块进行共识验证,共识节点、记账节点和代理节点均可将验证后的区块写入区块账本,代理节点用于将验证后的区块的区块头同步分发至边缘节点。
在区块链业务***中可以包括轻量节点和全量节点,轻量节点可以包括边缘节点,全量节点包括共识节点、记账节点以及代理节点,轻量节点和全量节点分别可以部署有多个。比如,在上述电子***场景中,可以在国家税务总局分布在全国的几个数据中心分别部署共识节点和记账节点,在全国各省税务局分别部署代理节点,在全国各市税务局以及服务商部署边缘节点。服务商是指具有开具电子***权限的机构。轻量节点和全量节点通过网络连接,全量节点之间的各个节点通过网络两两连接。
其中,边缘节点是指区块链***中相对核心的全量节点而言的安全可靠性较低的计算机节点,边缘节点可以为相对于全量节点的轻量型节点。边缘节点可以是轻量节点(nightweight nodes),例如,边缘节点可以是SPV(Simplified Payment Verification,简单支付验证)节点,SPV节点为相对于共识节点的轻量型节点,可提供交易和查询的功能,但不具备全量交易信息,即SPV节点无需存储整个区块链的数据,仅存储与自己相关的需要进行核验的部分数据,可以节约存储资源。SPV节点可以是支持使用布隆过滤器(Bloomfilter)在快速检索并返回相关数据的节点。区块链网络中并不是每个节点都包含了全网所有的数据,为了简化支付验证,区块链业务***中科部署一种SPV节点,SPV节点负责判断该交易是否已经得到区块链的节点共识认证以及多少次确认,不需要备份所有的数据就能验证一笔交易。
全量节点是指用于保存全量的数据文件的计算机节点,具有较高的安全可靠性,全量节点可以是区块链***中的可靠节点。SPV节点可以向代理节点拉取相关区块的区块头,SPV节点之间也可以同步区块头。
具体地,全量节点可以将对业务数据进行处理过程中的处理状态实时返回至轻量节点,全量节点中的任一节点都可以根据业务数据生成对应的当前区块。全量节点生成当前区块后,全量节点中的共识节点则对生成当前区块进行共识验证,档共识验证通过后,则将验证后的区块在目标区块链中进行广播并写入区块账本,记账节点以及代理节点接收广播的验证后的区块后,并将验证后的区块写入区块账本,代理节点则将验证后的区块的区块头部分同步分发至边缘节点。由于边缘节点为相对于全量节点的轻量型节点,无需存储整个区块链的数据,因此可以仅存储验证后的区块的区块头的部分数据,可以有效节约存储资源,同时保证交易数据的有效性。
在一个实施例中,如图4所示,监控业务数据,对交易状态信息进行更新具体包括以下步骤:
步骤402,追踪业务数据的节点流向。
步骤404,检测全量节点对业务数据的处理状态,根据处理状态更新交易状态信息。
步骤406,当检测到全量节点中的共识节点对业务数据的当前区块共识完成后,生成验证后的区块对应的交易确认标签。
其中,边缘节点与全量节点通过网络进行连接,节点流向可以表示业务数据流向哪个节点以及当前处于哪个节点。全量节点接收到边缘节点发送的业务数据后,可实时向边缘节点反馈该业务数据的处理状态。
边缘节点接收到业务请求,并根据业务请求中的业务标识确定出对应的目标区块链标识后,则将业务数据分发至目标区块链对应的全量节点,边缘节点则根据业务标识实时追踪该业务数据的节点流向。其中,边缘节点可以通过代理节点将业务数据对应的交易请求路由至共识节点中,使得共识节点对业务数据生成对应的当前区块,并对当前区块进行共识验证。
具体地,边缘节点在接收到业务请求时,就可以生成业务数据的交易状态信息以及添加相应的时间戳,并将生成交易状态信息存储至边缘节点本地的缓存中。同时,边缘节点实时追踪业务请求的业务数据对应的节点流向。边缘节点可以通过全量节点中的代理节点将业务数据转发至共识节点,当代理节点获取到业务数据后,则可以根据数据传递路径向边缘节点反馈已接收到业务数据的处理状态信息。当共识节点接收到代理节点转发的业务数据后,则可以通过转发路径向边缘节点反馈以接收的处理状态,当共识节点将业务数据生成对应的区块,并对当前区块进行共识验证时,则向边缘节点反馈共识中的处理状态。当共识节点对当前区块共识验证通过后,则向边缘节点反馈共识完成或交易成功的处理状态。
边缘节点可通过全量节点中各个节点对该业务数据的反馈情况,实时检测对应节点对业务数据的处理状态。边缘节点每次获取到代理节点或共识节点反馈的处理状态后,将实时获取的处理状态更新至交易状态信息中,例如,可以是将实时获取的处理状态根据当前的时间戳新增至交易状态信息中,由此边缘节点本地缓存中能够有效地实时记录该业务数据的交易状态。
当检测到共识节点对业务数据的当前区块共识完成后,表示业务数据对应的交易状态已经交易成功,边缘节点则将交易成功的状态更新至交易状态信息中,生成验证后的区块对应的交易确认标签。交易确认标签可以是存储在边缘节点的磁盘的数据库中。边缘节点接收到代理节点转发的当前区块后进行存储,当区块写入状态和交易确认标签均写入成功,则删除边缘节点缓存中的交易状态信息,其中,边缘节点在删除缓存中的交易状态信息时,并不删除交易确认标签。
本实施例中,边缘节点通过追踪业务数据的节点流向,实时检测对应节点对业务数据的处理状态,并根据处理状态更新交易状态信息,由此能够有效地在边缘节点缓存业务请求对应的交易状态,无论边缘节点是否接收到全量节点分发的验证后的区块,都能够根据边缘节点本地存储的交易状态信息判断业务数据的交易状态,从而能够有效保证当前的交易状态的有效性。
在一个实施例中,接收全量节点分发的验证后的区块,将验证后的区块写入对应的交易表包括:接收全量节点分发的验证后的区块头;获取区块对应的交易表,将区块头的交易数据写入交易表中;当检测到区块头的交易数据已写入交易表时,将交易表的区块写入状态更新为写入成功状态。
其中,边缘节点和全量节点通过网络连接,其中,边缘节点可以与全量节点中的代理节点直接连接,全量节点之间的各个节点通过网络两两连接。当前区块包括区块头和区块体。交易表用于存储交易输入和交易输出组成的交易记录数据。例如,可以利用UTXO(Unspent Transaction Output,未花费的交易输出)模型的数据结构来存储具体交易数据,UTXO是交易输入和输出的一部分,UTXO可以是交易最基本的组成单元。
边缘节点根据业务标识发送至对应目标区块链的全量节点后,全量节点中的共识节点根据业务数据生成对应的当前区块,并对当前区块进行共识验证。验证通过后,共识节点将验证后的区块写入区块账本并在目标区块链中进行广播,使得目标区块链中的各个节点将接收的验证后的区块分别写入各自的区块账本中。目标区块链中的代理节点接收到验证后的区块后,则提取验证后的区块的区块头部分,并将验证后的区块的区块头同步分发至多个边缘节点。
边缘节点实时获取所连接的代理节点分发的验证后的区块的区块头,并将区块头进行存储。具体地,边缘节点对验证后的区块进行存储时,根据验证后的区块获取目标区块链标识对应的交易表,交易表用于存储具体交易数据。边缘节点则对获取的区块头进行存储,即边缘节点将获取的获取的区块头的交易数据写入交易表中,从而将当前区块更新至对应的交易表中。其中,交易表存储在边缘节点的磁盘中。边缘节点还可以实时检测交易表的区块写入状态,当检测到区块头的交易数据已经写入交易表中时,则表示该验证后的区块已经写入磁盘成功了。此时边缘节点则将交易表的区块写入状态更新为区块写入成功状态。
本实施例中,通过检测交易表的区块写入状态,能够及时有效地确定交易状态,从而能够有效保证当前的交易状态的准确性和一致性。边缘节点在存储该业务数据对应的验证后的区块时,仅需存储区块的区块头部分,在实现数据核验以及查询等处理时,可以降低数据存储成本,同时保证了交易数据的一致性和有效性。
在一个实施例中,该方法还包括:若先接收到全量节点返回的交易成功的处理状态,根据处理状态更新交易状态信息,生成验证后的区块对应的交易确认标签;当接收全量节点分发的验证后的区块时,将验证后的区块写入对应的交易表并更新区块写入状态;当区块写入状态和交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
其中,当全量节点中的共识节点对生成的业务数据对应的当前区块共识验证通过后,该业务请求对应的交易状态则为交易成功的处理状态。交易确认标签则可以表示为业务请求对应的交易状态已成功的标识。
边缘节点获取业务请求后,则开始实时监控该业务请求的处理状态。边缘节点同时将业务数据根据业务标识发送至对应目标区块链的全量节点,使全量节点生成业务数据的当前区块,并对当前区块进行共识验证,验证通过后,全量节点将验证后的区块同步分发至多个边缘节点。其中,共识节点对当前区块共识验证通过后,还同时通过代理节点向边缘节点返回交易成功的处理状态。
此时,边缘节点接收交易成功的处理状态和接收代理节点分发验证后的区块的时间可能是不同步的。边缘节点监控该业务请求的处理状态的同时,还在等待接收所连接的代理节点分发验证后的区块。
具体地,若边缘节点先接收到全量节点返回的交易成功的处理状态时,根据处理状态更新交易状态信息,此时的交易状态信息已经表示交易成功,边缘节点则生成验证后的区块对应的交易确认标签,并对该交易确认标签进行存储。此时若终端向边缘节点发起该业务请求的交易查询请求时,则可以向终端返回交易成功的确认信息。
若终端在边缘节点既未接收到交易成功的处理状态,也未接收到所连接节点分发验证后的区块期间,向边缘节点发起该业务请求的交易查询请求时,边缘节点则根据缓存中存储的当前交易状态信息向终端返回对应的当前交易状态信息。
当边缘节点后续接收到所连接的代理节点分发验证后的区块时,将验证后的区块进行存储。具体地,边缘节点根据验证后的区块更新对应交易表中的区块写入状态。即对验证后的区块进行存储时,在交易表中写入该验证后的区块对应的交易数据,如可以写入区块头。写入完成则表示该区块已经存储成功,并将交易表并更新区块写中的写入状态更新为写入成功状态。当区块写入状态为区块写入成功且已经生成交易确认标签时,表示区块写入状态和交易确认标签均成功写入磁盘,此时边缘节点则删除缓存中的业务数据。
本实施例中,通过分别实时将接收到的处理状态和所连接节点分发的验证后的区块进行存储,由此能够有效地在边缘节点缓存并确定业务请求对应的交易状态,无论边缘节点是否接收到验证后的区块,都能够根据边缘节点本地存储的交易状态信息判断业务数据的交易状态。从而能够有效保证当前的交易状态的准确性和有效性,进而能够有效防止因交易状态不确定而导致重复支付的情况,有效保障了交易的安全性。
在一个实施例中,该方法还包括:若先接收到全量节点分发的验证后的区块,将验证后的区块写入对应的交易表并更新区块写入状态,生成验证后的区块对应的交易确认标签;当接收到全量节点返回的交易成功的处理状态时,根据处理状态更新交易状态信息;当区块写入状态、交易确认标签和交易成功状态均成功写入磁盘时,删除缓存中的业务数据。
边缘节点获取业务请求后,则开始实时监控该业务请求的处理状态。边缘节点同时将业务数据根据业务标识发送至对应目标区块链的全量节点,使全量节点生成业务数据的当前区块,并对当前区块进行共识验证,验证通过后,全量节点将验证后的区块同步分发至多个边缘节点。边缘节点则实时监控该业务请求的处理状态,并等待接收所连接的代理节点分发的验证后的区块。
边缘节点接收交易成功的处理状态和接收代理节点分发的验证后的区块的时间可能是不同步的。具体地,边缘节点若先接收到所连接节点分发的验证后的区块,表示此时的业务请求已经交易成功。边缘节点则将验证后的区块写入对应交易表并更新区块写入状态以进行存储,写入完成则表示该区块已经存储成功,并将交易表并更新区块写中的写入状态更新为写入成功状态。边缘节点则生成验证后的区块对应的交易确认标签,并对该交易确认标签进行存储。若终端在此时向边缘节点发起该业务请求的交易查询请求时,则可以向终端返回交易成功的确认信息。
若终端在边缘节点既未接收到所连接节点分发的验证后的区块,也未接收到交易成功的处理状态期间,向边缘节点发起该业务请求的交易查询请求时,边缘节点则根据缓存中存储的当前交易状态信息向终端返回对应的当前交易状态信息。
当边缘节点后续接收到全量节点返回的交易成功的处理状态时,根据处理状态更新交易状态信息,并将当前的交易状态信息确定为交易成功状态。边缘节点还可以对交易成功状态对应的状态标识进行存储。当区块写入状态为区块写入成功且已经生成交易确认标签时,表示区块写入状态和交易确认标签均成功写入磁盘,此时边缘节点则删除缓存中的业务数据。
通过分别实时将接收到的处理状态和所连接节点分发的当前区块进行存储,由此能够有效地在边缘节点缓存并确定业务请求对应的交易状态,无论边缘节点是否接收到当前区块,都能够根据边缘节点本地存储的交易状态信息判断业务请求的交易状态。从而能够有效保证当前的交易状态的准确性和有效性,进而能够有效防止因交易状态不确定而导致重复支付的情况,从而有效保障了交易的安全性。
在一个实施例中,该方法还包括:接收全量节点分发的验证后的区块,将区块写入对应的交易表;按照预设时间频率建立与全量节点的连接;从已连接的全量节点中同步验证后的区块;根据同步得到的区块对所存储的区块进行校对。
其中,边缘节点的所连接节点是指与边缘节点通过网络连接的计算机节点。边缘节点的所连接节点可以有一个或多个。所连接节点具体可以是全量节点或其它的边缘节点,还可以是全量节点中的代理节点。当所连接节点包括代理节点时,表示该边缘节点与代理节点之间通过网络直接连接,即存在与代理节点之间的连接通道。其中,代理节点中存储了目标区块链对应的区块账本以及完整的区块。
边缘节点获取业务数据后,将业务数据根据业务标识发送至对应目标区块链的全量节点,使全量节点生成业务数据的当前区块并对当前区块进行共识验证,验证通过后,全量节点将验证后的区块同步分发至多个边缘节点。边缘节点还实时监控业务数据的处理状态,并根据处理状态实时更新交易状态信息。边缘节点接收到验证后的区块后则实时存储,并更新区块写入状态。
当边缘节点接收到所连接节点转发的验证后的区块并进行存储后,还可以进一步按照预设时间频率建立与全量节点的连接。具体地,针对每个边缘节点预设了与全量节点之间建立连接通道的时间频率。边缘节点按照预设时间频率确定是否存在与起来节点之间的连接通道。若不存在,该边缘节点向全量节点发送连接请求,以建立与全量节点之间的连接通道。
边缘节点在与全量节点之间建立连接通道后,边缘节点还可以向全量节点发送数据同步请求,以从全量节点同步对应的区块。数据同步请求携带了边缘节点的节点标识。节点标识是能够唯一标识一个计算机节点的信息,如IP地址等。全量节点根据节点标识获取与相应边缘节点相关的区块,将该区块同步至相应边缘节点。
从全量节点同步到的区块可以在较高置信度上认为准确可靠,边缘节点还可以在从全量节点同步得到当前校对周期内产生的相关区块。边缘节点对比从全量节点同步到的相应的验证后的区块,校对从全量节点或其它边缘节点获取到的区块的区块高度是否一致,以及各个区块的区块头中所包含时间戳是否一致等。若各个区块的区块高度及区块头所包含时间戳均一致,校对结果为数据正常,可以认为边缘节点中存储的业务数据对应的区块未被恶意篡改,是安全可靠的。当存在区块的区块高度或区块头所包含时间戳不一致时,校对结果为数据异常,表示该边缘节点存储的区块存在被恶意篡改的风险。通过根据从数据源拉取的区块对从边缘节点中存储的区块进行校对,能够有效提高边缘节点中所存储区块的可靠性。
在一个实例中,该方法还包括:当校对结果为数据异常时,删除交易表中存在异常区块的交易数据;将从全量节点同步得到的区块的交易数据重新写入交易表中。
边缘节点中的区块账本记录了与自己相关的多个区块的信息,区块账本可以为边缘节点中存储的交易表。当校对结果为数据异常时,表示该边缘节点存在被恶意篡改的风险。边缘节点停止从全量节点或其它边缘节点拉取当前区块,将边缘节点本地的区块账本中所记录的存在异常区块的交易数据删除,并在建立了与全量节点之间的连接通道时重新从全量节点拉取的相应的验证后的区块,以从全量节点同步本地异常区块对应的验证后的区块。边缘节点基于从全量节点同步的区块,将同步得到的区块的交易数据重新写入交易表中,从而对存在异常的区块进行重写更新。通过周期性对边缘节点中存储的区块进行校对,并在校对发现异常时及时进行区块账本数据进行重写更新,提高边缘节点上存储的区块可靠性。
在其中一个实施中,当校对结果为数据异常时,基于存在数据异常的区块生成异常告警,将异常告警发送至监控终端。监控人员可以通过监控终端访问相应边缘节点,将边缘节点中全部区块清理,并将同步得到的区块的交易数据重新写入交易表中,以重建相应的区块账本,从而对异常数据进行恢复。
在其中一个实施中,当校对结果为数据异常时,边缘节点可以基于从可靠节点同步得到的区块对所存储的存在数据异常的区块进行替换,从而实现周期性对区块账本进行更新校正。换言之,当发现数据异常时,可以仅删除存在异常的区块。
在一个实施例中,该方法还包括:接收终端发送的交易查询请求,交易查询请求携带交易标识;根据交易标识查询对应的交易状态和交易表中的区块写入状态;根据交易状态和区块写入状态向终端返回查询结果信息。
终端中可以安装有业务***对应的业务应用,用户可以通过终端上的业务应用发起相应的业务请求。终端在相应的业务应用发起业务请求后,区块链业务***中的边缘节点可以直接获取到指定发送的业务请求,并进行进一步处理。
其中,业务请求携带了业务数据和交易标识,业务数据还可以包括对应的业务标识。交易标识用于表示该业务请求对应的够唯一标识的信息。
边缘节点获取业务请求后,将业务数据根据业务标识发送至对应目标区块链的全量节点,使全量节点生成业务数据的当前区块并对当前区块进行共识验证,验证通过后,全量节点将验证后的区块同步分发至多个边缘节点。边缘节点还实时监控业务数据的处理状态,并根据处理状态实时更新交易状态信息。边缘节点接收到验证后的区块后则实时存储,并更新区块写入状态。当区块写入状态和交易确认标签均写入成功时,表示交易状态已成功且当前区块已存储成功,此时则可以删除缓存中的交易状态信息,减少缓存占用。
终端向边缘节点发送业务请求之后,还可以实时查询该业务请求的交易状态。交易状态可以为该业务请求中业务数据的处理状态。边缘节点监控该业务请求的处理状态的同时,还在等待接收所连接的代理节点分发的当前区块。由于边缘节点通过分别实时将接收到的处理状态进行缓存,并将接收到所连接节点分发的验证后的区块进行存储。因此,当终端向边缘节点发送交易查询请求时,根据交易标识查询对应的交易状态和交易表中的区块写入状态;根据交易状态和区块写入状态生成对应的查询结果信息,并向终端返回查询结果信息。
具体地,当区块写入状态为未写入时,获取缓存中的交易状态信息,根据交易状态信息生成查询结果信息,并将查询结果信息返回至终端。其中,交易状态信息中可能包括交易成功的交易确认标签,边缘节点则根据交易确认标签生成查询结果信息并返回终端。当区块写入状态为写入成功时,则根据区块写入状态和交易确认标签生成查询结果信息,并将查询结果信息返回至终端。通过分别实时将接收到的处理状态和所连接节点分发的验证后的区块进行存储,由此能够有效地在边缘节点缓存并确定业务请求对应的交易状态,无论边缘节点是否接收到验证后的区块,终端都能够有效地根据边缘节点本地存储的交易状态信息查询到业务请求的交易状态,并且能够有效保证当前查询到的交易状态信息的准确性和有效性,进而能够有效防止用户因交易状态不确定而导致重复支付的情况,从而有效保障了交易的安全性。
在一个实施例中,根据交易状态和区块写入状态向终端返回查询结果信息包括:当区块写入状态为未写入时,获取缓存中的交易状态信息;根据交易状态信息生成查询结果信息,并将查询结果信息返回至终端。
终端在相应的业务应用发起业务请求后,还可以实时向边缘节点发起该业务请求的交易查询请求。边缘节点接收到终端发送的交易查询请求后,根据交易标识获取边缘节点的本地缓存中存储的交易状态信息和区块写入状态信息。
具体地,当边缘节点中的区块写入状态为未写入时,表示该业务请求对应的验证后的区块还未存储成功,此时则不能根据区块的区块写入状态来判断该业务请求的交易状态。边缘节点则缓存中的交易状态信息,交易状态包括待处理、处理中、共识中以及交易成功等多种状态信息。边缘节点则获取缓存中的当前交易状态信息,当前交易状态信息可以为距该交易查询请求的查询时间最近的交易状态信息,或者为交易状态信息中最新更新的交易状态。边缘节点进而根据当前交易状态信息生成交易查询结果信息,并将交易查询结果信息返回给终端。由此能够有效地在边缘节点缓存并确定业务请求对应的交易状态,无论边缘节点是否接收到当前区块,终端都能够有效地根据边缘节点本地存储的交易状态信息查询到业务请求的交易状态,有效地保障了交易状态信息的准确性和有效性。
在一个实施例中,根据交易状态和区块写入状态向终端返回查询结果信息包括:当区块写入状态为写入成功时,根据区块写入状态和交易确认标签生成查询结果信息;将查询结果信息返回至终端。
边缘节点接收到终端发送的交易查询请求后,根据交易标识获取边缘节点的本地缓存中存储的交易状态信息和区块写入状态信息。当区块写入状态为写入成功时,表示该业务请求对应的当前区块以及存储成功,且交易状态为交易成功状态。此时存储库中已存储有交易确认标签,边缘节点则可以直接根据区块写入状态和/或交易确认标签生成查询结果信息,并将查询结果信息返回至终端。
本实施例中,通过分别实时将接收到的处理状态和所连接节点分发的当前区块进行存储,能够有效地在边缘节点缓存并确定业务请求对应的交易状态,从而都能够根据边缘节点本地存储的交易状态信息判断业务请求的交易状态。由此能够有效保证用户查询到的当前交易状态的准确性和有效性,进而能够有效防止因交易状态不确定而导致重复支付的情况。
在一个实施例中,图5为一个具体实施例中数据存储方法的流程示意图。如图5所示,该数据存储方法具体包括以下步骤:
步骤502,获取业务数据;业务数据包括业务标识和交易状态信息。
步骤504,监控业务数据,追踪业务数据的节点流向;检测全量节点对业务数据的处理状态,根据处理状态更新交易状态信息。
步骤506,根据业务标识将业务数据发送至全量节点,使全量节点将业务数据生成对应的当前区块并进行共识验证。
步骤508,接收全量节点分发的验证后的区块头,获取区块对应的交易表,将区块头的交易数据写入交易表中;更新交易表的区块写入状态,利用更新后的交易状态信息和区块写入状态确定交易确认标签。
步骤510,当区块写入状态和交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
步骤512,接收终端发送的交易查询请求,交易查询请求携带交易标识。
步骤514,根据交易标识查询对应的交易状态和交易表中的区块写入状态。
步骤516,根据交易状态和区块写入状态生成查询结果信息,并将查询结果信息返回至终端。
在一个具体的实施例中,参考图6,图6为一个实施例中数据存储方法的时序图。如图6所示,边缘节点获取业务请求后,将业务请求携带的业务数据存储至本地缓存中,业务数据包括了业务标识和交易状态信息。边缘节点实时监控业务数据,对交易状态信息进行更新。边缘节点还可以同时根据业务标识将业务数据发送至对应目标区块链的全量节点;使全量节点生成业务数据的当前区块,并对当前区块进行共识验证,验证通过后,全量节点将验证后的区块同步分发至多个轻量节点。全量节点包括共识节点、记账节点以及代理节点。边缘节点并根据全量节点对业务数据的处理状态实时更新交易状态信息,并对交易状态信息实时存储。边缘节点接收到全量节点所连接节点分发的验证后的区块后,则对验证后的区块实时存储,并更新区块写入状态。边缘节点则可以交易状态信息和区块写入状态分别确认业务数据的交易状态,当区块写入状态和交易确认标签均写入成功时,表示交易状态已成功且验证后的区块已存储成功,此时边缘节点则可以删除缓存中的交易状态信息。
图3-5为一个实施例中数据存储方法的流程示意图。应该理解的是,虽然图3-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种数据存储装置700,该装置包括数据获取模块702、数据监控模块704、数据发送模块706、数据存储模块708和缓存清理模块710,其中:
数据获取模块702,用于业务数据;业务数据包括业务标识和交易状态信息;
数据监控模块704,用于监控业务数据,对交易状态信息进行更新;
数据发送模块706,用于根据业务标识将业务数据发送至全量节点,使全量节点将业务数据生成对应的当前区块并进行共识验证;
数据存储模块708,用于接收全量节点分发的验证后的区块,将验证后的区块写入对应的交易表;更新交易表的区块写入状态,利用更新后的交易状态信息和区块写入状态确定交易确认标签;
缓存清理模块710,用于当区块写入状态和交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
在一个实施例中,当前区块包括区块头,全量节点包括共识节点、记账节点以及代理节点,全量节点用于返回处理状态和生成当前区块,共识节点用于对当前区块进行共识验证,共识节点、记账节点和代理节点均可将当前区块写入区块账本,代理节点用于将区块头同步分发至边缘节点。
在一个实施例中,数据监控模块704还用于追踪业务数据的节点流向;检测全量节点节点对业务数据的处理状态,根据处理状态更新交易状态信息;当检测到全量节点中的共识节点对当前区块共识完成后,生成验证后的区块对应的交易确认标签。
在一个实施例中,数据存储模块708还用于接收全量节点分发的验证后的区块头,获取区块对应的交易表,将区块头的交易数据写入交易表中;当检测到区块头的交易数据已写入交易表时,将交易表的区块写入状态更新为写入成功状态。
在一个实施例中,数据存储模块708还用于若先接收到全量节点返回的交易成功的处理状态,根据处理状态更新交易状态信息,生成验证后的区块对应的交易确认标签;当接收到全量节点分发的验证后的区块时,将验证后的区块写入对应的交易表并更新区块写入状态;缓存清理模块710还用于当区块写入状态和交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
在一个实施例中,数据存储模块708还用于若先接收到全量节点分发的验证后的区块,将验证后的区块写入对应的交易表并更新区块写入状态,生成验证后的区块对应的交易确认标签;当接收到全量节点返回的交易成功的处理状态时,根据处理状态更新交易状态信息;缓存清理模块710还用于当区块写入状态、交易确认标签和交易成功状态均成功写入磁盘时,删除缓存中的业务数据。
在一个实施例中,如图8所示,数据存储装置700还包括数据校对模块712,用于接收全量节点分发的验证后的区块,将区块写入对应的交易表;按照预设时间频率建立与全量节点的连接;从已连接的全量节点中同步验证后的区块;根据同步得到的区块对所存储的区块进行校对。
在一个实施例中,数据校对模块712还用于当校对结果为数据异常时,删除交易表中存在异常区块的交易数据;将从全量节点同步得到的区块的交易数据重新写入交易表中。
在一个实施例中,如图9所示,数据存储装置700还包括交易查询模块714,用于接收终端发送的交易查询请求,交易查询请求携带交易标识;根据交易标识查询对应的交易状态和交易表中的区块写入状态;根据交易状态和区块写入状态生成查询结果信息,并将查询结果信息返回至终端。
在一个实施例中,交易查询模块714还用于当区块写入状态为未写入时,获取缓存中的交易状态信息;根据交易状态信息生成查询结果信息,并将查询结果信息返回至终端。
在一个实施例中,交易查询模块714还用于当区块写入状态为写入成功时,根据区块写入状态和交易确认标签生成查询结果信息;将查询结果信息返回至终端。
图10示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中区块链业务***中边缘节点的服务器120。如图10所示,该计算机设备包括该计算机设备包括通过***总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作***,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现数据存储方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行数据存储方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的数据存储装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行。计算机设备的存储器中可存储组成该数据存储装置的各个程序模块,比如,图7所示的数据获取模块702、数据监控模块704、数据发送模块706、数据存储模块708和缓存清理模块710。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的数据存储方法中的步骤。
例如,图10所示的计算机设备可以通过如图7所示的数据存储装置中的数据获取模块702执行步骤302。计算机设备可通过数据监控模块704执行步骤304。计算机设备可通过数据发送模块706执行步骤306。计算机设备可通过数据存储模块708执行步骤308。计算机设备可通过缓存清理模块710执行步骤310。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据存储方法的步骤。此处数据存储方法的步骤可以是上述各个实施例的数据存储方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据存储方法的步骤。此处数据存储方法的步骤可以是上述各个实施例的数据存储方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种数据存储方法,包括:
获取业务数据;所述业务数据包括业务标识和交易状态信息;
监控所述业务数据,对所述交易状态信息进行更新;
根据所述业务标识将所述业务数据发送至全量节点,使所述全量节点将所述业务数据生成对应的当前区块并进行共识验证;
接收所述全量节点分发的验证后的区块,将所述验证后的区块写入对应的交易表;更新所述交易表的区块写入状态,利用所述更新后的交易状态信息和所述区块写入状态确定交易确认标签;
当所述区块写入状态和所述交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
2.根据权利要求1所述的方法,其特征在于,所述验证后的区块包括区块头,所述全量节点包括共识节点、记账节点以及代理节点,所述全量节点用于返回处理状态和生成当前区块,所述共识节点用于对当前区块进行共识验证,所述共识节点、所述记账节点和所述代理节点均可将验证后的区块写入区块账本,所述代理节点用于将验证后的区块的区块头同步分发至边缘节点。
3.根据权利要求2所述的方法,其特征在于,监控所述业务数据,对所述交易状态信息进行更新包括:
追踪所述业务数据的节点流向;
检测所述全量节点对所述业务数据的处理状态,根据所述处理状态更新所述交易状态信息;
当检测到所述全量节点中的共识节点对所述当前区块共识完成后,生成所述验证后的区块对应的交易确认标签。
4.根据权利要求1所述的方法,其特征在于,接收所述全量节点分发的验证后的区块,将所述验证后的区块写入对应的交易表包括:
接收所述全量节点分发的验证后的区块头;
获取所述验证后的区块对应的交易表,将所述区块头的交易数据写入所述交易表中;
当检测到所述区块头的交易数据已写入所述交易表时,将所述交易表的区块写入状态更新为写入成功状态。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若先接收到所述全量节点返回的交易成功的处理状态,根据所述处理状态更新所述交易状态信息,生成所述验证后的区块对应的交易确认标签;
当接收所述全量节点分发的验证后的区块时,将所述验证后的区块写入对应的交易表并更新区块写入状态;
当所述区块写入状态和交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若先接收到全量节点分发的验证后的区块,将所述验证后的区块写入对应的交易表并更新区块写入状态,生成所述验证后的区块对应的交易确认标签;
当接收到所述全量节点返回的交易成功的处理状态时,根据所述处理状态更新所述交易状态信息;
当所述区块写入状态、交易确认标签和交易成功状态均成功写入磁盘时,删除缓存中的业务数据。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述全量节点分发的验证后的区块,将所述区块写入对应的交易表;
按照预设时间频率建立与所述全量节点的连接;
从已连接的全量节点中同步验证后的区块;
根据同步得到的区块对所存储的区块进行校对。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
当校对结果为数据异常时,删除所述交易表中存在异常区块的交易数据;
将从所述全量节点同步得到的区块的交易数据重新写入所述交易表中。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述方法还包括:
接收终端发送的交易查询请求,所述交易查询请求携带交易标识;
根据所述交易标识查询对应的交易状态和交易表中的区块写入状态;
根据所述交易状态和所述区块写入状态生成查询结果信息,并将所述查询结果信息返回至所述终端。
10.根据权利要求9所述的方法,其特征在于,所述根据所述交易状态和所述区块写入状态向所述终端返回查询结果信息包括:
当所述区块写入状态为未写入时,获取所述缓存中的交易状态信息;
根据所述交易状态信息生成查询结果信息,并将所述查询结果信息返回至所述终端。
11.根据权利要求9所述的方法,其特征在于,所述根据所述交易状态和所述区块写入状态向所述终端返回查询结果信息包括:
当所述区块写入状态为写入成功时,根据所述区块写入状态和所述交易确认标签生成查询结果信息;
将所述查询结果信息返回至所述终端。
12.一种数据存储装置,其特征在于,所述装置包括:
数据获取模块,用于获取业务数据;所述业务数据包括业务标识和交易状态信息;
数据监控模块,用于监控所述业务数据,对所述交易状态信息进行更新;
数据发送模块,用于根据所述业务标识将所述业务数据发送至全量节点,使所述全量节点将所述业务数据生成对应的当前区块并进行共识验证;
数据存储模块,用于接收所述全量节点分发的验证后的区块,将所述验证后的区块写入对应的交易表;更新所述交易表的区块写入状态,利用所述更新后的交易状态信息和所述区块写入状态确定交易确认标签;
缓存清理模块,用于当所述区块写入状态和所述交易确认标签均成功写入磁盘时,删除缓存中的业务数据。
13.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至11中任一项所述方法的步骤。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至11中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910859251.8A CN110543788B (zh) | 2019-09-11 | 2019-09-11 | 数据存储方法、装置、计算机可读存储介质和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910859251.8A CN110543788B (zh) | 2019-09-11 | 2019-09-11 | 数据存储方法、装置、计算机可读存储介质和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110543788A true CN110543788A (zh) | 2019-12-06 |
CN110543788B CN110543788B (zh) | 2024-05-03 |
Family
ID=68713410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910859251.8A Active CN110543788B (zh) | 2019-09-11 | 2019-09-11 | 数据存储方法、装置、计算机可读存储介质和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110543788B (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159303A (zh) * | 2020-01-07 | 2020-05-15 | 杭州宇链科技有限公司 | 一种降低区块链数据存储成本的方法 |
CN111241061A (zh) * | 2020-01-09 | 2020-06-05 | 平安科技(深圳)有限公司 | 状态数据库的写入方法、数据处理装置及存储介质 |
CN111415161A (zh) * | 2020-04-27 | 2020-07-14 | 财付通支付科技有限公司 | 基于区块链的数据验证方法、装置及计算机可读存储介质 |
CN111507717A (zh) * | 2020-04-20 | 2020-08-07 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、区块节点及计算机可读存储介质 |
CN111611321A (zh) * | 2020-06-29 | 2020-09-01 | 上海优扬新媒信息技术有限公司 | 一种数据存储方法、装置及区块链*** |
CN111630549A (zh) * | 2020-04-22 | 2020-09-04 | 支付宝(杭州)信息技术有限公司 | 管理账本***中的交易请求 |
CN111917859A (zh) * | 2020-07-28 | 2020-11-10 | 腾讯科技(深圳)有限公司 | 数据传输方法、装置、计算机设备以及存储介质 |
CN112396423A (zh) * | 2021-01-20 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、设备及存储介质 |
CN112748881A (zh) * | 2021-01-15 | 2021-05-04 | 长城超云(北京)科技有限公司 | 一种面向虚拟化场景的存储容错方法和集群*** |
CN112883107A (zh) * | 2020-12-31 | 2021-06-01 | 杭州趣链科技有限公司 | 区块链中交易异步执行方法、***及相关设备 |
CN112988412A (zh) * | 2021-02-07 | 2021-06-18 | 中国联合网络通信集团有限公司 | 基于区块链网络的边缘缓存方法、基站和*** |
CN113034146A (zh) * | 2021-05-25 | 2021-06-25 | 杭州云链趣链数字科技有限公司 | 基于区块链的通信方法、***、电子装置和存储介质 |
CN113852662A (zh) * | 2021-08-06 | 2021-12-28 | 华数云科技有限公司 | 一种基于联盟链的边缘云分布式存储框架及方法 |
WO2021259125A1 (zh) * | 2020-06-24 | 2021-12-30 | 支付宝(杭州)信息技术有限公司 | 区块链网络的数据清理方法及装置 |
WO2021259127A1 (zh) * | 2020-06-24 | 2021-12-30 | 支付宝(杭州)信息技术有限公司 | 区块链网络的压力测试方法及装置、*** |
CN114049213A (zh) * | 2021-11-15 | 2022-02-15 | 深圳前海鸿泰源兴科技发展有限公司 | 一种信息化金融数据分析***与分析方法 |
US11455631B2 (en) | 2020-04-22 | 2022-09-27 | Alipay (Hangzhou) Information Technology Co., Ltd. | Managing transaction requests in ledger systems |
CN115271733A (zh) * | 2022-09-28 | 2022-11-01 | 深圳市迪博企业风险管理技术有限公司 | 一种隐私保护的区块链交易数据异常检测方法及设备 |
CN116684425A (zh) * | 2023-07-28 | 2023-09-01 | 腾讯科技(深圳)有限公司 | 区块链的数据处理方法、***、装置和计算机设备 |
CN116956332A (zh) * | 2023-09-20 | 2023-10-27 | 深圳市智慧城市科技发展集团有限公司 | Bim数据处理方法、设备及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109191124A (zh) * | 2018-08-16 | 2019-01-11 | 北京京东尚科信息技术有限公司 | 区块链网络、部署方法及存储介质 |
CN109214823A (zh) * | 2018-08-27 | 2019-01-15 | 北京京东金融科技控股有限公司 | 基于区块链的交易验证方法、装置、存储介质及电子设备 |
-
2019
- 2019-09-11 CN CN201910859251.8A patent/CN110543788B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109191124A (zh) * | 2018-08-16 | 2019-01-11 | 北京京东尚科信息技术有限公司 | 区块链网络、部署方法及存储介质 |
CN109214823A (zh) * | 2018-08-27 | 2019-01-15 | 北京京东金融科技控股有限公司 | 基于区块链的交易验证方法、装置、存储介质及电子设备 |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159303A (zh) * | 2020-01-07 | 2020-05-15 | 杭州宇链科技有限公司 | 一种降低区块链数据存储成本的方法 |
CN111241061A (zh) * | 2020-01-09 | 2020-06-05 | 平安科技(深圳)有限公司 | 状态数据库的写入方法、数据处理装置及存储介质 |
CN111241061B (zh) * | 2020-01-09 | 2023-04-07 | 平安科技(深圳)有限公司 | 状态数据库的写入方法、数据处理装置及存储介质 |
CN111507717A (zh) * | 2020-04-20 | 2020-08-07 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、区块节点及计算机可读存储介质 |
CN111507717B (zh) * | 2020-04-20 | 2022-08-12 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、区块节点及计算机可读存储介质 |
US11455631B2 (en) | 2020-04-22 | 2022-09-27 | Alipay (Hangzhou) Information Technology Co., Ltd. | Managing transaction requests in ledger systems |
CN111630549A (zh) * | 2020-04-22 | 2020-09-04 | 支付宝(杭州)信息技术有限公司 | 管理账本***中的交易请求 |
US11455297B2 (en) | 2020-04-22 | 2022-09-27 | Alipay (Hangzhou) Information Technology Co., Ltd. | Managing transaction requests in ledger systems |
CN111415161B (zh) * | 2020-04-27 | 2024-03-19 | 财付通支付科技有限公司 | 基于区块链的数据验证方法、装置及计算机可读存储介质 |
CN111415161A (zh) * | 2020-04-27 | 2020-07-14 | 财付通支付科技有限公司 | 基于区块链的数据验证方法、装置及计算机可读存储介质 |
WO2021259127A1 (zh) * | 2020-06-24 | 2021-12-30 | 支付宝(杭州)信息技术有限公司 | 区块链网络的压力测试方法及装置、*** |
WO2021259125A1 (zh) * | 2020-06-24 | 2021-12-30 | 支付宝(杭州)信息技术有限公司 | 区块链网络的数据清理方法及装置 |
CN111611321B (zh) * | 2020-06-29 | 2023-07-25 | 度小满科技(北京)有限公司 | 一种数据存储方法、装置及区块链*** |
CN111611321A (zh) * | 2020-06-29 | 2020-09-01 | 上海优扬新媒信息技术有限公司 | 一种数据存储方法、装置及区块链*** |
CN111917859B (zh) * | 2020-07-28 | 2022-08-12 | 腾讯科技(深圳)有限公司 | 数据传输方法、装置、计算机设备以及存储介质 |
CN111917859A (zh) * | 2020-07-28 | 2020-11-10 | 腾讯科技(深圳)有限公司 | 数据传输方法、装置、计算机设备以及存储介质 |
CN112883107A (zh) * | 2020-12-31 | 2021-06-01 | 杭州趣链科技有限公司 | 区块链中交易异步执行方法、***及相关设备 |
CN112883107B (zh) * | 2020-12-31 | 2022-05-17 | 杭州趣链科技有限公司 | 区块链中交易异步执行方法、***及相关设备 |
CN112748881B (zh) * | 2021-01-15 | 2024-02-20 | 长城超云(北京)科技有限公司 | 一种面向虚拟化场景的存储容错方法和集群*** |
CN112748881A (zh) * | 2021-01-15 | 2021-05-04 | 长城超云(北京)科技有限公司 | 一种面向虚拟化场景的存储容错方法和集群*** |
CN112396423B (zh) * | 2021-01-20 | 2021-04-13 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、设备及存储介质 |
CN112396423A (zh) * | 2021-01-20 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、设备及存储介质 |
CN112988412B (zh) * | 2021-02-07 | 2023-06-27 | 中国联合网络通信集团有限公司 | 基于区块链网络的边缘缓存方法、基站和*** |
CN112988412A (zh) * | 2021-02-07 | 2021-06-18 | 中国联合网络通信集团有限公司 | 基于区块链网络的边缘缓存方法、基站和*** |
CN113034146A (zh) * | 2021-05-25 | 2021-06-25 | 杭州云链趣链数字科技有限公司 | 基于区块链的通信方法、***、电子装置和存储介质 |
CN113852662A (zh) * | 2021-08-06 | 2021-12-28 | 华数云科技有限公司 | 一种基于联盟链的边缘云分布式存储框架及方法 |
CN113852662B (zh) * | 2021-08-06 | 2023-09-26 | 华数云科技有限公司 | 一种基于联盟链的边缘云分布式存储***及方法 |
CN114049213A (zh) * | 2021-11-15 | 2022-02-15 | 深圳前海鸿泰源兴科技发展有限公司 | 一种信息化金融数据分析***与分析方法 |
CN115271733A (zh) * | 2022-09-28 | 2022-11-01 | 深圳市迪博企业风险管理技术有限公司 | 一种隐私保护的区块链交易数据异常检测方法及设备 |
CN116684425A (zh) * | 2023-07-28 | 2023-09-01 | 腾讯科技(深圳)有限公司 | 区块链的数据处理方法、***、装置和计算机设备 |
CN116684425B (zh) * | 2023-07-28 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 区块链的数据处理方法、***、装置和计算机设备 |
CN116956332A (zh) * | 2023-09-20 | 2023-10-27 | 深圳市智慧城市科技发展集团有限公司 | Bim数据处理方法、设备及计算机可读存储介质 |
CN116956332B (zh) * | 2023-09-20 | 2024-01-05 | 深圳市智慧城市科技发展集团有限公司 | Bim数据处理方法、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110543788B (zh) | 2024-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110543788B (zh) | 数据存储方法、装置、计算机可读存储介质和计算机设备 | |
CN110633323B (zh) | 业务数据存储方法、装置、存储介质和计算机设备 | |
CN109002732B (zh) | 数据存证方法、设备和***以及数据取证方法 | |
CN110572450B (zh) | 数据同步方法、装置、计算机可读存储介质和计算机设备 | |
CN108961030B (zh) | 关于电子票据的数据处理方法、装置、***、介质和设备 | |
CN109242467B (zh) | 基于区块链的组网方法、装置、计算机设备和存储介质 | |
JP7199775B2 (ja) | スマートコントラクトに基づくデータ処理方法、データ処理装置、ノード機器、及びコンピュータプログラム | |
JP7330596B2 (ja) | ブロックチェーンデータのアーカイブ方法、ブロックチェーンデータのアーカイブ装置、電子機器、及びコンピュータプログラム | |
CN109255084B (zh) | 电子票据查询方法、装置、存储介质和计算机设备 | |
CN110597837B (zh) | 业务数据处理方法、装置、存储介质和计算机设备 | |
CN110784495B (zh) | 基于区块链的大数据集群***的发现与配置信息管理方法 | |
CN110602116B (zh) | 基于区块链的数据验证方法、装置和计算机可读存储介质 | |
CN110602095B (zh) | 基于区块链网络的数据分发、存储方法和装置 | |
CN110597541B (zh) | 基于区块链的接口更新处理方法、装置、设备及存储介质 | |
CN110633963A (zh) | 电子票据处理方法、装置、计算机可读存储介质和设备 | |
CN110597883A (zh) | 基于区块链的车辆租赁数据处理方法、装置和存储介质 | |
JP2020190874A (ja) | 文書管理システム | |
CN112448946A (zh) | 基于区块链的日志审计方法及装置 | |
CN111506661B (zh) | 一种内容访问管理方法、装置和存储介质 | |
CN116827957A (zh) | 基于多区块链的信息处理方法、装置、设备以及介质 | |
CN111932326B (zh) | 一种基于区块链网络的数据处理方法及相关设备 | |
CN114531260A (zh) | 基于联盟链***的信息处理方法及相关设备 | |
CN112163917A (zh) | 基于区块链的票据处理方法、装置、介质及电子设备 | |
CN112822279B (zh) | 基于智能感知与可信存储的监测方法及装置 | |
CN110598446B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |