CN109857807A - 基于区块链的交易数据同步方法、装置、设备和介质 - Google Patents
基于区块链的交易数据同步方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN109857807A CN109857807A CN201910029929.XA CN201910029929A CN109857807A CN 109857807 A CN109857807 A CN 109857807A CN 201910029929 A CN201910029929 A CN 201910029929A CN 109857807 A CN109857807 A CN 109857807A
- Authority
- CN
- China
- Prior art keywords
- transaction
- information
- synchronized
- data
- block chain
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了基于区块链的交易数据同步方法、装置、设备和介质。该方法包括:调用区块链交易数据获取接口,获取待同步交易的交易数据,待同步交易的交易数据包括待同步交易的交易类型信息和待同步交易的关键信息;从待同步交易的交易数据中解析出待同步交易的交易类型信息和待同步交易的关键信息;基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表,交易类型的数据表记录同属于交易类型的交易的关键信息。根据本发明实施例提供的基于区块链的交易数据同步方法、装置、设备和介质,能够提高同步交易数据的效率。
Description
技术领域
本发明涉及区块链领域,尤其涉及基于区块链的交易数据同步方法、装置、设备和介质。
背景技术
区块链是一个分布式账本,区块链技术利用链式数据结构来验证与存储数据。
区块链上的数据与智能合约绑定。每个智能合约是一段运行在区块链上程序,具有独立的存储区域。智能合约能够读写属于自己的存储区域内的数据,但无法操作其他智能合约存储区域内的交易数据。
一般来说,区块链系统包括区块链层和业务应用层。基于区块链的应用经常需要对数据进行大量的、复杂的查询操作,此类操作难以通过区块链提供的接口来实现。为了解决这一问题,可以在业务应用层与区块链之间引入中间件。中间件维护了一个传统的关系型(或非关系型)数据库,以供上层的业务应用进行查询操作。同时,中间件不断地将区块链上的数据同步到自身的业务数据库中,保证业务数据库中的数据与区块链上的一致。
现有技术中,当需要将交易数据由区块链数据库同步至业务数据库时,中间件从区块链同步交易数据时,需要通过调用智能合约接口获得交易数据,同步交易数据的效率较低。
发明内容
本发明实施例提供的基于区块链的交易数据同步方法、装置、设备和介质,能够提高同步交易数据的效率。
根据本发明实施例的一方面,提供一种基于区块链的交易数据同步方法,包括:
调用区块链交易数据获取接口,获取待同步交易的交易数据,待同步交易的交易数据包括待同步交易的交易类型信息和待同步交易的关键信息;
从待同步交易的交易数据中解析出待同步交易的交易类型信息和待同步交易的关键信息;
基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表,目标关键信息包括经业务逻辑运算后的待同步交易的关键信息或待同步交易的关键信息,交易类型的数据表记录同属于交易类型的交易的关键信息。
在一种可选的实施方式中,基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据,具体包括:
调用区块链交易日志获取接口,获取待同步交易的日志信息,日志信息包括待同步交易的正确性信息和有效性信息;
基于待同步交易的正确性信息和有效性信息,判断待同步交易是否正确且有效;
若待同步交易正确且有效,基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表中。
在一种可选的实施方式中,待同步交易的交易数据包括区块链的一个或多个区块内的全部交易数据,
调用区块链交易数据获取接口,获取待同步交易的交易数据,具体包括:
利用区块链的一个或多个区块的标识信息,调用区块链交易数据获取接口,获取与标志信息对应的区块中的全部交易数据。
在一种可选的实施方式中,待同步交易的交易数据包括一个或多个交易的数据,
调用区块链交易数据获取接口,获取待同步交易的交易数据,具体包括:
利用一个或多个交易的标识信息,调用区块链交易数据获取接口,获取与标志信息对应的交易的数据。
在一种可选的实施方式中,方法还包括:
基于获取的当前交易的交易类型信息和当前交易的关键信息,生成当前交易的交易数据;
将当前交易的交易数据发送至区块链;
接收当前交易的标识信息,其中,当前交易的标识信息是由区块链基于当前交易的交易数据生成的。
在一种可选的实施方式中,待同步交易的关键信息包括以下信息中的一个或多个:
交易信息接收方的信息、交易信息发送方的签名、输入数量、输入列表、输出数量、输出列表和锁定时间。
根据本发明实施例的另一方面,提供了一种基于区块链的交易数据同步装置,包括:
数据调用模块,用于调用区块链交易数据获取接口,获取待同步交易的交易数据,待同步交易的交易数据包括待同步交易的交易类型信息和待同步交易的关键信息;
数据解析模块,用于从待同步交易的交易数据中解析出待同步交易的交易类型信息和待同步交易的关键信息;
信息写入模块,用于基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表,目标关键信息包括经业务逻辑运算后的待同步交易的关键信息或待同步交易的关键信息,交易类型的数据表记录同属于交易类型的交易的关键信息。
在一种可选的实施方式中,信息写入模块,具体用于:
调用区块链交易日志获取接口,获取待同步交易的日志信息,日志信息包括待同步交易的正确性信息和有效性信息;
基于待同步交易的正确性信息和有效性信息,判断待同步交易是否正确且有效;
若待同步交易正确且有效,基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据。
在一种可选的实施方式中,待同步交易的交易数据包括区块链的一个或多个区块内的全部交易数据,
数据调用模块,具体用于:
利用区块链的一个或多个区块的标识信息,调用区块链交易数据获取接口,获取与标志信息对应的区块中的全部交易数据。
在一种可选的实施方式中,待同步交易的交易数据包括一个或多个交易的数据,
数据调用模块,具体用于:
利用一个或多个交易的标识信息,调用区块链交易数据获取接口,获取与标识信息对应的交易的数据。
在一种可选的实施方式中,装置还包括:
数据生成模块,用于基于获取的当前交易的交易类型信息和当前交易的关键信息,生成当前交易的交易数据;
数据发送模块,用于将当前交易的交易数据发送至区块链;
信息接收模块,用于接收当前交易的标识信息,其中,当前交易的标识信息是由区块链基于当前交易的交易数据生成的。
在一种可选的实施方式中,待同步交易的关键信息包括以下信息中的一个或多个:
交易信息接收方的信息、交易信息发送方的签名、输入数量、输入列表、输出数量、输出列表和锁定时间。
根据本发明实施例的又一方面,提供了一种基于区块链的交易数据同步设备,包括:
存储器,用于存储程序;
处理器,用于运行存储器中存储的程序,以执行本发明实施例提供的基于区块链的交易数据同步方法。
根据本发明实施例的再一方面,提供了一种计算机存储介质,其特征在于,计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现本发明实施例提供的基于区块链的交易数据同步方法。
根据本发明实施例中的基于区块链的交易数据同步方法、装置、设备和介质,能够通过区块链交易数据获取接口,获取包含交易类型信息和待同步交易的关键信息的交易数据。由于无需依赖智能合约接口,根据交易类型信息即可将交易数据存储至对应的数据表中。无需通过调用智能合约接口即可实现对待同步交易的交易信息的同步,提高了交易数据同步的效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是示出根据本发明一实施例的基于区块链的交易数据同步方法的示意流程图;
图2A和图2B是本发明实施例中示例性的待同步交易的交易数据的格式的示意图;
图3是示出本发明另一实施例提供的基于区块链的交易数据同步方法的示意流程图;
图4是示出根据本发明又一实施例的基于区块链的交易数据同步方法的示意流程图;
图5示出了根据本发明一实施例提供的用户设备的定位装置的结构示意图;
图6是本发明实施例中基于区块链的交易数据同步设备的示例性硬件架构的结构图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在区块链技术中,交易,表征一个用来存储交易消息的被签名数据包,在区块链上从一个外部拥有账户发送至另一个账户的过程。
在一笔交易产生,且被区块链验证后,该笔交易的交易数据会被存储至区块链的数据库中。为了便于查询,中间件需要将区块链的数据库中的交易数据同步至自身的业务数据库。
而现有的数据同步过程中,需要通过智能合约才能将交易数据同步至中间件的业务数据库。整个同步过程的同步效率较慢。
因此,需要一种能够提高交易数据同步效率的交易数据同步方法、装置、设备和介质。
为了更好的理解本发明,下面将结合附图,详细描述根据本发明实施例的基于区块链的交易数据同步方法、装置、设备和介质,应注意,这些实施例并不用来限制本发明公开的范围。
图1是示出根据本发明一实施例的基于区块链的交易数据同步方法的示意流程图。其中,本发明实施例中各个步骤的执行主体可以是中间件。如图1所示,本实施例中的基于区块链的交易数据同步方法100可以包括步骤S140至S160:
S140,调用区块链交易数据获取接口,获取待同步交易的交易数据,待同步交易的交易数据包括待同步交易的交易类型信息和待同步交易的关键信息。
在本发明的一些实施例中,区块链交易数据获取接口是区块链自身提供的接口,中间件无需通过智能合约接口,即可直接通过区块链交易数据获取接口调用待同步交易的交易数据。
在一些实施例中,通过区块链交易数据获取接口,可以调用区块链链中存储的全部交易数据。
在本发明的一些实施例中,待同步交易表示由中间件请求的、需要从区块链的数据库同步至中间件的业务数据库的交易。
在本发明的一些实施例中,按照计量单位的不同,待同步交易的交易数据可以包括:以区块为计量单位的,一个或多个区块中的全部交易数据;或者,以交易数据为计量单位的,一个或多个交易数据。
在一些实施例中,当待同步交易数据是一个或多个区块中的全部交易数据时,S140,具体包括:
利用区块链的一个或多个区块的标识信息,调用区块链交易数据获取接口,获取标识信息对应的区块中的全部交易数据。
在一个实施例中,区块链中的每一区块均有一个独一无二的哈希值作为该区块的标识信息。
作一个示例,当需要请求区块A和区块B中的全部交易数据时,可以基于区块A的标识信息和区块B的标识信息,调用区块链交易数据获取接口。
在另一些实施例中,当待同步交易的交易数据包括一个或多个交易的数据时,S140,具体包括:
利用一个或多个交易的标识信息,调用区块链交易数据获取接口,获取标识信息对应的交易数据。
在一个实施例中,交易的标识信息可以是交易的哈希值。其中,交易的哈希值,可以是该交易被存储入某一区块的过程中,由该区块生成的该交易的哈希值。
作一个示例,当需要请求交易A和交易B的交易数据时,可以基于交易A和交易B的交易数据,调用区块链交易数据获取接口。
在本发明的一些实施例中,可以按照交易所属领域和/或交易的用途划分为不同交易类型。示例性的,按照交易所属领域,可以划分为商业领域、医疗领域、金融及供应链管理等不同领域的交易。按照交易的用途,可以划分为用户信息注册、货物交易等不同用途的交易。
作一个具体的示例,交易类型A可以为商业信息注册,交易类型B可以为商业货物交易、交易类型C可以为医疗信息注册,交易类型D可以为医疗用品交易。
在本方面的一些实施例中,待同步交易的交易类型信息和待同步交易的关键信息均为智能合约的函数的输入参数。
具体地,待同步交易的交易类型信息和待同步交易的关键信息可以通过智能合约,转换为相应的键值的格式存储入区块中。
需要说明的是,待同步交易的交易类型信息和待同步交易的关键信息均能够被智能合约的函数识别。具体地,将待同步交易的交易类型信息和待同步交易的关键信息可以按特定的格式进行组织,再按区块链指定的编码格式编码后发送给区块链,这些编码后的交易关键信息数据能被区块链解析成交易类型信息和智能合约的函数所能识别的参数信息。
在本发明的一些实施例中,待同步交易的关键信息表示能够表明交易详情的信息。
在一些实施例中,待同步交易的关键信息包括以下信息中的一个或多个:
交易信息接收方的信息、交易信息发送方的签名、输入数量、输入列表、输出数量、输出列表和锁定时间。
其中,输入数量表示输出列表中输入的数量。
输入列表表示待同步交易的一个或多个输入。示例性的,当待同步交易为用户在网页进行注册时,输入列表包括:用户的姓名、性别、年龄、注册时间等信息。
输出数量表示输出列表中输出的数量。
输出列表表示待同步交易的一个或多个输出。示例性的,例如比特币交易中的比特币找零。
锁定时间定义了能够被加入区块链的最早的交易时间。当设置为0时,表示立即执行。
在一个示例中,交易信息发送方的签名可以是交易发起方用私钥对交易进行的签名。
S150,从待同步交易的交易数据中解析出待同步交易的交易类型信息和待同步交易的关键信息。
在本发明的一些实施例中,待同步交易的交易数据的格式可以是由中间件和区块链约定好的数据格式。
具体地,区块链将待同步交易的交易数据封装为约定好的数据格式。且中间件能够识别和解析该约定好的数据格式。
在一些实施例中,在生成待同步交易的交易数据时,可以将待同步交易的交易类型信息放置于约定好的固定位置。
作一个示例,图2A和图2B是本发明实施例中示例性的待同步交易的交易数据的格式的示意图。
如图2A和图2B所示,待同步交易的关键信息包括关键信息1、关键信息2、……、关键信息n。业务类型信息可以置于所有关键信息的最前面,或者置于所有关键信息的最后面。
作一个具体的示例,在中间件和区块链约定好将待同步交易数据设置为图2A中的格式的前提下,中间件对接收到待同步交易的交易数据进行解析时,可以将解析出的一个参数视为待同步交易的交易类型信息。
S160,基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表,目标关键信息包括经业务逻辑运算后的待同步交易的关键信息或待同步交易的关键信息,交易类型的数据表记录同属于交易类型的交易的关键信息。
根据本发明实施例中的基于区块链的交易数据同步方法,能够通过区块链交易数据获取接口,获取包含交易类型信息和待同步交易的关键信息的交易数据。区块链发送的交易数据可以根据业务类型信息,直接存储至相应业务类型的数据表中,而无需通过智能合约转换成能够被中间件识别的格式。因此,无需依赖智能合约接口,根据交易类型信息即可将交易数据存储至对应的数据表中。无需通过智能合约即可实现对待同步交易的交易信息的同步,提高了交易数据同步的效率。
在本发明的一些实施例中,目标关键信息与待同步交易的关键信息相关。目标关键信息能够直接表示待同步交易的关键信息,例如,可以是待同步交易的关键信息本身,或者,目标关键信息能够间接表示待同步交易的关键信息,例如,对待同步交易的关键信息经过业务逻辑运算后得到目标关键信息。在一些实施例中,当目标关键信息为待同步交易的关键信息时,S160具体包括:
基于待同步交易的交易类型信息,直接将待同步交易的关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表。
在另一些实施例中,当目标关键信息为经业务逻辑运算后的待同步交易的关键信息时,S160具体包括:
按照预设的业务逻辑运算,对待同步交易的关键信息运算后得到目标关键信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表。
其中,业务逻辑运算可能是对待同步交易的关键信息进行格式转换,数值运算,或者是根据具体业务规则进行的计算。
作一个示例,格式转换可以具体为:将待同步交易的关键信息从二进制格式转换为十进制格式。
在另一个示例,数值运算可以具体为:将待同步交易的关键信息乘2再加上5等。
需要说明的是,可以针对不同的交易类型,预先设置不同的业务逻辑运算。例如,针对A类型交易,A类型交易的关键信息可以直接写入对应的交易类型的数据表;针对B类型交易,其关键信息转换为相应地格式后写入对应的交易类型的数据表;针对C类型交易,其关键信息进行相应地数值运算后写入对应的交易类型的数据表。
在本发明的一些实施例中,业务数据库包含了多个业务类型的数据表。示例性的,业务数据库包含:商业信息注册的数据表,医疗信息注册的数据表等不同业务类型的数据表。
示例性的,商业信息注册的数据表中记录着商业信息注册交易A的关键信息、及商业信息注册交易B的关键信息等。
针对S160作一个示例,当接收到待匹配交易A的交易数据时,若根据待匹配交易A的交易类型信息,确定待匹配交易A属于商业信息注册交易,则可以将待匹配交易A的关键信息存储至待匹配交易A的数据表中。
图3是示出根据本发明另一实施例的基于区块链的交易数据同步方法的示意流程图。其中,本发明实施例中各个步骤的执行主体可以是中间件。如图3所示,基于区块链的交易数据同步方法300基本相同于基于区块链的交易数据同步方法100,不同之处在于,基于区块链的交易数据同步方法100中的S160,在基于区块链的交易数据同步方法300中可以细化为S161至S163。
S161,调用区块链交易日志获取接口,获取待同步交易的日志信息,日志信息包括待同步交易的正确性信息和有效性信息。
在本发明的一些实施例中,区块链交易日志获取接口是区块链自身的接口,可以通过该接口调用区块链内所有交易的日志数据。
在本发明的一些实施例,区块链内所有交易的日志数据为智能合约日志。
在一些实施例中,可以根据区块的标识信息,获取该区块内的所有日志数据。
在另一些实施例中,可以根据待同步交易的标识信息,在区块链中查找到待同步交易对应的日志数据。
需要说明的是,无需通过智能合约,即可获取交易数据,能够提高同步交易数据的速率。
在智能合约的编码过程,避免了编写大量的数据同步接口,减小了智能合约的代码量。
中间件无需通过智能合约接口,即可调用交易数据,提高了中间件的同步效率,同时也间接提升了区块链的性能。
S162,基于待同步交易的正确性信息和有效性信息,判断待同步交易是否正确且有效。
在本发明的一些实施例中,智能合约日志中记载了交易是否正确、是否有效。因此,根据智能合约日志的所记载的内容,能够直接判断待同步交易的正确性和有效性。
S163,若待同步交易正确且有效,基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表。
根据本发明实施例中的基于区块链的交易数据同步方法,在将待同步数据同步至业务数据库之前,可以根据日志信息验证待同步数据的正确性和有效性,将正确且有效的待同步数据保存至业务数据库,从而提高业务数据库中保存的数据的准确性。
图4是示出根据本发明又一实施例的基于区块链的交易数据同步方法的示意流程图。其中,本发明实施例中各个步骤的执行主体可以是中间件。其中,图4与图1相同或等同的步骤使用相同的标号。如图4所示,基于区块链的交易数据同步方法400基本相同于基于区块链的交易数据同步方法100,不同之处在于,基于区块链的交易数据同步方法400还包括S110至S130:
S110,基于获取的当前交易的交易类型信息和当前交易的关键信息,生成当前交易的交易数据。
在S110中,生成当前交易的交易数据的具体格式可以是由中间件、智能合约和区块链约定好的特定格式。例如,图2A和图2B中的格式。
具体地,智能合约可以从接收到的特定格式的当前交易的交易数据中,解析出当前交易的交易类型信息和当前交易的关键信息,作为智能合约的参数。
在本发明的一些实施例中,当一笔新交易产生时,可以将新产生的交易作为当前交易。
在本发明的一些实施例中,当前交易的交易类型信息和当前交易的关键信息的类型和格式,分别与S140中待同步交易的交易类型信息和当前交易的关键信息的类型和格式相同。在此不再赘述。
S120,将当前交易的交易数据发送至区块链。
在本发明的一些实施例中,当前交易的交易数据,通过智能合约接口,并通过区块链虚拟机转换为特定格式的信息保存至区块链的数据库中。
S130,接收当前交易的标识信息。其中,当前交易的标识信息是由区块链基于当前交易的交易数据生成的。
在一些实施例中,当前交易的交易数据发送至区块链后,区块链会把当前交易的交易数据广播至区块链网络的多个节点,多个节点基于共识机制选出一个节点对当前交易的交易数据进行验证,并在当前交易的交易数据通过验证后,将当前交易的交易数据存储至区块中,并生成当前交易的标识信息。
其中,共识机制可以是拜占庭容错(Byzantine Fault Tolerance,BFT)、实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)、工作量证明(Proof Of Work,POW)、权益证明(Proof Of Stake,POS)或分布式一致算法。
当前交易的标识信息可以是根据当前交易的交易数据计算得到的一个哈希值。
需要说明的是,在S130之后,可以将当前交易的交易数据,立即同步或延时同步至业务数据库。
其中,当需要立即同步至业务数据库时,在S130执行完毕后,立即依次执行S140至S160。当需要延时同步时,可以在一定时延之后,依次执行S140至S160。
下面结合附图,详细介绍根据本发明实施例的基于区块链的交易数据同步装置。
基于相同的发明构思,本发明一实施例提供了基于区块链的交易数据同步装置。图5示出了根据本发明一实施例提供的用户设备的定位装置的结构示意图。如图5所示,基于区块链的交易数据同步装置500包括数据调用模块510、数据解析模块520和信息写入模块530:
数据调用模块510,用于调用区块链交易数据获取接口,获取待同步交易的交易数据,待同步交易的交易数据包括待同步交易的交易类型信息和待同步交易的关键信息。
数据解析模块520,用于从待同步交易的交易数据中解析出待同步交易的交易类型信息和待同步交易的关键信息。
信息写入模块530,用于基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据表,目标关键信息包括经业务逻辑运算后的待同步交易的关键信息或待同步交易的关键信息,交易类型的数据表记录同属于交易类型的交易的关键信息。
在本发明的一些实施例中,信息写入模块530,具体用于:
调用区块链交易日志获取接口,获取待同步交易的日志信息,日志信息包括待同步交易的正确性信息和有效性信息。
基于待同步交易的正确性信息和有效性信息,判断待同步交易是否正确且有效。
若待同步交易正确且有效,基于待同步交易的交易类型信息,将目标关键信息写入业务数据库中的交易类型信息对应的交易类型的数据。
在本发明的一些实施例中,待同步交易的交易数据包括区块链的一个或多个区块内的全部交易数据,
数据调用模块510,具体用于:
利用区块链的一个或多个区块的标识信息,调用区块链交易数据获取接口,获取标识信息对应的区块中的全部交易数据。
在本发明的一些实施例中,待同步交易的交易数据包括一个或多个交易的数据,
数据调用模块510,具体用于:
利用一个或多个交易的标识信息,调用区块链交易数据获取接口,获取标识信息对应的交易数据。
在本发明的一些实施例中,基于区块链的交易数据同步装置500还包括:
数据生成模块,用于基于获取的当前交易的交易类型信息和当前交易的关键信息,生成当前交易的交易数据。
数据发送模块,用于将当前交易的交易数据发送至区块链。
信息接收模块,用于接收当前交易的标识信息,其中,当前交易的标识信息是由区块链基于当前交易的交易数据生成的。
在本发明的一些实施例中,待同步交易的关键信息包括以下信息中的一个或多个:
交易信息接收方的信息、交易信息发送方的签名、输入数量、输入列表、输出数量、输出列表和锁定时间。
根据本发明实施例的基于区块链的交易数据同步装置的其他细节与以上结合图1至图4描述的根据本发明实施例的方法类似,在此不再赘述。
图6是本发明实施例中基于区块链的交易数据同步设备的示例性硬件架构的结构图。
如图6所示,基于区块链的交易数据同步设备600包括输入设备601、输入接口602、中央处理器603、存储器604、输出接口605、以及输出设备606。其中,输入接口602、中央处理器603、存储器604、以及输出接口605通过总线610相互连接,输入设备601和输出设备606分别通过输入接口602和输出接口605与总线610连接,进而与基于区块链的交易数据同步设备600的其他组件连接。
具体地,输入设备601接收来自外部的输入信息,并通过输入接口602将输入信息传送到中央处理器603;中央处理器603基于存储器604中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器604中,然后通过输出接口605将输出信息传送到输出设备606;输出设备606将输出信息输出到基于区块链的交易数据同步设备600的外部供用户使用。
也就是说,图6所示的基于区块链的交易数据同步设备也可以被实现为包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现结合图1至图2描述的基于区块链的交易数据同步设备的方法和装置。
在一个实施例中,图6所示的基于区块链的交易数据同步设备600可以被实现为一种设备,该设备可以包括:存储器,用于存储程序;处理器,用于运行存储器中存储的程序,以执行本发明实施例的基于区块链的交易数据同步方法。
本发明实施例还提供一种计算机存储介质,计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行本发明实施例提供的基于区块链的交易数据同步方法。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
以上,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
Claims (14)
1.一种基于区块链的交易数据同步方法,其特征在于,所述方法包括:
调用区块链交易数据获取接口,获取待同步交易的交易数据,所述待同步交易的交易数据包括所述待同步交易的交易类型信息和所述待同步交易的关键信息;
从所述待同步交易的交易数据中解析出所述待同步交易的交易类型信息和所述待同步交易的关键信息;
基于所述待同步交易的交易类型信息,将目标关键信息写入业务数据库中的所述交易类型信息对应的交易类型的数据表,所述目标关键信息包括经业务逻辑运算后的待同步交易的关键信息或所述待同步交易的关键信息,所述交易类型的数据表记录同属于所述交易类型的交易的关键信息。
2.根据权利要求1所述的方法,其特征在于,所述基于所述待同步交易的交易类型信息,将目标关键信息写入业务数据库中的所述交易类型信息对应的交易类型的数据,具体包括:
调用区块链交易日志获取接口,获取所述待同步交易的日志信息,所述日志信息包括所述待同步交易的正确性信息和有效性信息;
基于待同步交易的正确性信息和有效性信息,判断所述待同步交易是否正确且有效;
若所述待同步交易正确且有效,基于所述待同步交易的交易类型信息,将所述目标关键信息写入业务数据库中的所述交易类型信息对应的交易类型的数据。
3.根据权利要求1所述的方法,其特征在于,所述待同步交易的交易数据包括所述区块链的一个或多个区块内的全部交易数据,
所述调用区块链交易数据获取接口,获取待同步交易的交易数据,具体包括:
利用所述区块链的一个或多个所述区块的标识信息,调用区块链交易数据获取接口,获取与所述标志信息对应的所述区块中的全部交易数据。
4.根据权利要求1所述的方法,其特征在于,所述待同步交易的交易数据包括一个或多个交易的数据,所述调用区块链交易数据获取接口,获取待同步交易的交易数据,具体包括:
利用所述一个或多个所述交易的标识信息,调用区块链交易数据获取接口,获取与所述标志信息对应的所述交易的数据。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于获取的当前交易的交易类型信息和所述当前交易的关键信息,生成所述当前交易的交易数据;
将所述当前交易的交易数据发送至所述区块链;
接收所述当前交易的标识信息,其中,所述当前交易的标识信息是由所述区块链基于所述当前交易的交易数据生成的。
6.根据权利要求1所述的方法,其特征在于,
所述待同步交易的关键信息包括以下信息中的一个或多个:
交易信息接收方的信息、交易信息发送方的签名、输入数量、输入列表、输出数量、输出列表和锁定时间。
7.一种基于区块链的交易数据同步装置,所述装置包括:
数据调用模块,用于调用区块链交易数据获取接口,获取待同步交易的交易数据,所述待同步交易的交易数据包括所述待同步交易的交易类型信息和所述待同步交易的关键信息;
数据解析模块,用于从所述待同步交易的交易数据中解析出所述待同步交易的交易类型信息和所述待同步交易的关键信息;
信息写入模块,用于基于所述待同步交易的交易类型信息,将目标关键信息写入业务数据库中的所述交易类型信息对应的交易类型的数据表,所述目标关键信息包括经业务逻辑运算后的待同步交易的关键信息或所述待同步交易的关键信息,所述交易类型的数据表记录同属于所述交易类型的交易的关键信息。
8.根据权利要求7所述的装置,其特征在于,信息写入模块,具体用于:
调用区块链交易日志获取接口,获取所述待同步交易的日志信息,所述日志信息包括所述待同步交易的正确性信息和有效性信息;
基于待同步交易的正确性信息和有效性信息,判断所述待同步交易是否正确且有效;
若所述待同步交易正确且有效,基于所述待同步交易的交易类型信息,将所述目标关键信息写入业务数据库中的所述交易类型信息对应的交易类型的数据。
9.根据权利要求7所述的装置,其特征在于,所述待同步交易的交易数据包括所述区块链的一个或多个区块内的全部交易数据,
所述数据调用模块,具体用于:
利用所述区块链的一个或多个所述区块的标识信息,调用区块链交易数据获取接口,获取与所述标识信息对应的所述区块中的全部交易数据。
10.根据权利要求7所述的装置,其特征在于,所述待同步交易的交易数据包括一个或多个交易的数据,
所述数据调用模块,具体用于:
利用所述一个或多个交易的标识信息,调用区块链交易数据获取接口,获取与所述标识信息对应的所述交易的数据。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
数据生成模块,用于基于获取的当前交易的交易类型信息和所述当前交易的关键信息,生成所述当前交易的交易数据;
数据发送模块,用于将所述当前交易的交易数据发送至所述区块链;
信息接收模块,用于接收所述当前交易的标识信息,其中,所述当前交易的标识信息是由所述区块链基于所述当前交易的交易数据生成的。
12.根据权利要求7所述的装置,其特征在于,
所述待同步交易的关键信息包括以下信息中的一个或多个:
交易信息接收方的信息、交易信息发送方的签名、输入数量、输入列表、输出数量、输出列表和锁定时间。
13.一种基于区块链的交易数据同步设备,其特征在于,所述设备包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以执行权利要求1-6任一权利要求所述的基于区块链的交易数据同步方法。
14.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现权利要求1-6任一权利要求所述的基于区块链的交易数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910029929.XA CN109857807A (zh) | 2019-01-10 | 2019-01-10 | 基于区块链的交易数据同步方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910029929.XA CN109857807A (zh) | 2019-01-10 | 2019-01-10 | 基于区块链的交易数据同步方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109857807A true CN109857807A (zh) | 2019-06-07 |
Family
ID=66894578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910029929.XA Pending CN109857807A (zh) | 2019-01-10 | 2019-01-10 | 基于区块链的交易数据同步方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109857807A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111241205A (zh) * | 2020-04-26 | 2020-06-05 | 北京启迪区块链科技发展有限公司 | 基于联盟区块链底层可信数据同步方法、网络结构及服务器 |
CN112527890A (zh) * | 2019-09-19 | 2021-03-19 | 上海哔哩哔哩科技有限公司 | 区块链数据同步方法、装置以及计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874393A (zh) * | 2017-01-13 | 2017-06-20 | 北京众享比特科技有限公司 | 基于区块链的业务数据同步方法及系统、数据库系统 |
CN107918666A (zh) * | 2017-11-24 | 2018-04-17 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种区块链上的数据同步方法和系统 |
US20180253452A1 (en) * | 2017-03-05 | 2018-09-06 | Jonathan Sean Callan | System and method for enforcing the structure and content of databases synchronized over a distributed ledger |
CN108830733A (zh) * | 2018-06-21 | 2018-11-16 | 中国银行股份有限公司 | 一种信息处理方法、区块链集群及系统 |
CN109086414A (zh) * | 2018-08-03 | 2018-12-25 | 上海点融信息科技有限责任公司 | 用于搜索区块链数据的方法、装置及存储介质 |
-
2019
- 2019-01-10 CN CN201910029929.XA patent/CN109857807A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874393A (zh) * | 2017-01-13 | 2017-06-20 | 北京众享比特科技有限公司 | 基于区块链的业务数据同步方法及系统、数据库系统 |
US20180253452A1 (en) * | 2017-03-05 | 2018-09-06 | Jonathan Sean Callan | System and method for enforcing the structure and content of databases synchronized over a distributed ledger |
CN107918666A (zh) * | 2017-11-24 | 2018-04-17 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种区块链上的数据同步方法和系统 |
CN108830733A (zh) * | 2018-06-21 | 2018-11-16 | 中国银行股份有限公司 | 一种信息处理方法、区块链集群及系统 |
CN109086414A (zh) * | 2018-08-03 | 2018-12-25 | 上海点融信息科技有限责任公司 | 用于搜索区块链数据的方法、装置及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112527890A (zh) * | 2019-09-19 | 2021-03-19 | 上海哔哩哔哩科技有限公司 | 区块链数据同步方法、装置以及计算机设备 |
CN111241205A (zh) * | 2020-04-26 | 2020-06-05 | 北京启迪区块链科技发展有限公司 | 基于联盟区块链底层可信数据同步方法、网络结构及服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109410045A (zh) | 一种平行链共识方法、设备和存储介质 | |
Pu et al. | Towards the semantics and verification of BPEL4WS | |
CN106294125B (zh) | 银行核心系统数据处理方法 | |
CN109034993A (zh) | 对账方法、设备、系统及计算机可读存储介质 | |
CN107463409A (zh) | 一种接口转换方法、接口转换器、存储介质及电子终端 | |
CN110399533A (zh) | 资金流向查询方法及装置 | |
CN110688828A (zh) | 文件处理方法及装置、文件处理系统、计算机设备 | |
CN110188112A (zh) | 一种区块链智能合约的变更记录的追溯方法及装置 | |
CN102999852A (zh) | 电子券数据的生成方法及装置 | |
CN114140075B (zh) | 业务处理方法、装置、介质及电子设备 | |
CN112330181A (zh) | 基于区块链的企业信用评价方法及装置 | |
CN109816501A (zh) | 智能对账系统、方法及服务器 | |
CN108415757A (zh) | 分布式事务处理方法及装置 | |
WO2019056770A1 (zh) | 基于关联交易的数据处理方法、装置和计算机设备 | |
CN110572457A (zh) | 基于区块链的资源申请方法及装置、电子设备、存储介质 | |
CN109857807A (zh) | 基于区块链的交易数据同步方法、装置、设备和介质 | |
CN107358525A (zh) | 一种账户交易方法和装置 | |
CN111127011A (zh) | 一种基于区块链进行对账的交易方法、系统和计算机可读存储介质 | |
Awad et al. | Resolution of compliance violation in business process models: A planning-based approach | |
CN112765280B (zh) | 区块数据存储方法、装置、计算机可读介质及电子设备 | |
CN110413672A (zh) | 数据自动导入方法、装置及计算机可读存储介质 | |
CN109801168A (zh) | 一种区块链交易的校验方法、设备和存储介质 | |
CN111711512B (zh) | 报文发送方法及装置 | |
CN109359956A (zh) | 合约配置方法、合约应用方法、设备和存储介质 | |
Gyapay et al. | Graph transformation with time |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190607 |
|
RJ01 | Rejection of invention patent application after publication |