CN114328132A - 外部数据源的状态监控方法、装置、设备和介质 - Google Patents
外部数据源的状态监控方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN114328132A CN114328132A CN202210251192.8A CN202210251192A CN114328132A CN 114328132 A CN114328132 A CN 114328132A CN 202210251192 A CN202210251192 A CN 202210251192A CN 114328132 A CN114328132 A CN 114328132A
- Authority
- CN
- China
- Prior art keywords
- data
- change
- transaction request
- target data
- contract
- 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
- 238000012544 monitoring process Methods 0.000 title claims abstract description 74
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000008859 change Effects 0.000 claims abstract description 221
- 238000012795 verification Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 13
- 238000010586 diagram Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 8
- 238000013473 artificial intelligence Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003924 mental process Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 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/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- 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/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- 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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开提供了一种外部数据源的状态监控方法、装置、设备和介质,涉及计算机技术领域,尤其涉及区块链技术。该方法应用于区块链节点,包括:获取客户端发起的数据订阅事务请求;调用预言机合约执行所述数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对所述目标数据主题的数据变化进行监测;获取预言机节点反馈的目标数据主题的变化事件,并将所述变化事件上链,以供所述客户端监听到所述变化事件。上述技术方案实现了对外部数据源的状态变化进行监测。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及区块链技术。
背景技术
由于区块链系统是确定性的环境,所以,如果要访问外部数据源时,可通过预言机(Oracle)机制实现。
区块链中的业务合约,可以通过预言机服务来访问外部数据源。但是,外部数据源可能有多个,且数据内容可能在不断发生变化。而区块链上的业务合约和用户,难以及时获知外部数据源中的数据变化。
发明内容
本公开提供了一种外部数据源的状态监控方法、装置、设备和介质,以实现对外部数据源的状态变化进行监控。
根据本公开的一方面,提供了一种外部数据源的状态监控方法、装置、设备和介质,应用于区块链节点,所述方法包括:
获取客户端发起的数据订阅事务请求;
调用预言机合约执行所述数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对所述目标数据主题的数据变化进行监测;
获取预言机节点反馈的目标数据主题的变化事件,并将所述变化事件上链,以供所述客户端监听到所述变化事件。
根据本公开的另一方面,提供了一种外部数据源的状态监控方法、装置、设备和介质,应用于预言机节点,所述方法包括:
获取区块链上部署的预言机合约所执行的数据订阅事务请求;所述数据订阅事务请求由客户端发起;
根据所述数据订阅事务请求确定被订阅的目标数据主题,并对外部数据源所提供的目标数据进行数据变化的监测;
将监测到的目标数据主题的变化事件,反馈给所述预言机合约,使得所述预言机合约将所述变化事件上链,以供所述客户端监听到所述变化事件。
根据本公开的另一方面,提供了一种外部数据源的状态监控装置,应用于区块链节点,所述装置包括:
事务请求获取模块,用于获取客户端发起的数据订阅事务请求;
事务请求执行模块,用于调用预言机合约执行所述数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对所述目标数据主题的数据变化进行监测;
变化事件获取模块,用于获取预言机节点反馈的目标数据主题的变化事件,并将所述变化事件上链,以供所述客户端监听到所述变化事件。
根据本公开的另一方面,提供了一种外部数据源的状态监控装置,应用于预言机节点,所述装置包括:
事务请求获取模块,用于获取区块链上部署的预言机合约所执行的数据订阅事务请求;所述数据订阅事务请求由客户端发起;
目标数据监测模块,用于根据所述数据订阅事务请求确定被订阅的目标数据主题,并对外部数据源所提供的目标数据进行数据变化的监测;
变化事件反馈模块,用于将监测到的目标数据主题的变化事件,反馈给所述预言机合约,使得所述预言机合约将所述变化事件上链,以供所述客户端监听到所述变化事件。
根据本公开的另一方面,还提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开实施例所提供的任意一种外部数据源的状态监控方法。
根据本公开的另一方面,还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开实施例所提供的任意一种外部数据源的状态监控方法。
根据本公开的另一方面,还提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开实施例所提供的任意一种外部数据源的状态监控方法。
根据本公开的技术,实现了对外部数据源中状态变化进行有效监测。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例提供的一种外部数据源的状态监控方法的示意图;
图2是根据本公开实施例提供的另一种外部数据源的状态监控方法的示意图;
图3A是根据本公开实施例提供的又一种外部数据源的状态监控方法的示意图;
图3B是根据本公开实施例提供的一种外部数据源的状态监控方法的交互示意图;
图4是根据本公开实施例提供的一种外部数据源的状态监控装置的结构示意图;
图5是根据本公开实施例提供的一种外部数据源的状态监控装置的结构示意图;
图6是用来实现本公开实施例的外部数据源的状态监控方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本公开实施例提供的一种外部数据源的状态监控方法的示意图,本公开实施例可适用于区块链上的业务合约和用户,能够及时获知外部数据源中的数据变化的情况。该方法可由一种外部数据源的状态监控装置来执行,该装置可采用硬件和/或软件的方式来实现,可配置于电子设备中,该电子设备可以为区块链节点。参考图1,该方法应用于区块链节点,该方法具体包括如下:
S110、获取客户端发起的数据订阅事务请求。
区块链的客户端可以供用户根据自身实际需求,向区块链发起调用智能合约的请求,并且,还可以用于监听区块链链上的事件。
其中,数据订阅事务请求可以是用户根据自身需求,通过区块链的客户端向区块链节点发起的订阅事务请求。
示例性的,用户可以通过区块链的客户端获取预言机合约提供的接口界面,订阅能够满足自身需求或者感兴趣的数据,并向区块链节点发起数据的订阅请求,该请求即为数据订阅事务请求;由区块链节点获取客户端发起的数据订阅事务请求。
由于区块链是确定性的环境,不允许有不确定的事情或因素,智能合约不管何时何地运行都必须是一致的结果,这就导致了区块链在对外部数据进行调用时,不同区块链节点访问不同外部数据源时,会出现访问结果不一致的情况,且由于外部数据源中的数据本身也会动态变化,也引入了不确定性因素。上述得到不一致的链外数据访问结果,会导致区块链上的运行结果具有不确定性。因此,预言机作为区块链和外部环境的接口,能够将外部数据传递至区块链,实现区块链与外部环境之间的数据交互,并且区块链能够信任由预言机获取到的外部数据。部署在区块链中的为预言机合约,用于处理链上的事务请求;部署在区块链链外的为预言机节点,用于对链外数据进行获取并将从链外获取的数据反馈至链上的预言机合约。
S120、调用预言机合约执行数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对目标数据主题的数据变化进行监测。
其中,预言机合约可以是用于处理订阅数据事务请求的智能合约,即用户发起数据订阅事务请求后,区块链调用预言机合约来执行用户发起的数据订阅事务请求。
其中,目标数据主题可以是被用户订阅的数据主题,且目标数据主题的数量可以为一个或多个。可以通过对数据订阅事务请求进行处理来确定目标数据主题,目标数据主题对应的目标数据为外部数据源所提供的数据,也是订阅该目标数据主题的用户所需要的或者感兴趣的数据。目标数据主题可以是某个设定外部数据源所提供的数据,或者是某类数据的集合。可以由外部数据源确定并提供,也可以由预言机合约确定并提供。
预言机合约可以管理至少一个可以被订阅的数据主题,并发布至区块链,以供用户可以通过区块链的客户端,根据自身需求对至少一个数据主题进行订阅。预言机节点能够对目标数据主题关联的数据变化进行监测,即预言机节点能够实时监测外部数据源,若外部数据源发生变化时,预言机节点能够将目标数据主题关联的且发生变化的数据反馈至区块链节点。其中,预言机节点的数量可以为一个或多个。
示例性的,区块链节点在获取到客户端发起的数据订阅事务请求后,调用预言机合约执行数据订阅事务请求;预言机合约根据数据订阅事务请求确定目标数据主题,并记录被订阅的目标数据主题;预言机合约控制预言机节点对外部数据源中,与目标数据主题关联的目标数据进行监测。
需要说明的是,区块链节点上的预言机合约可以通过接口调用的方式实现对预言机节点的控制,但区块链节点和预言机节点的数量可能存在多个,为避免产生大量的数据发送或调用请求,可以采用产生事件日志的方式,实现区块链节点上预言机合约对预言机节点的控制。
在一个可选实施例中,调用预言机合约执行数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对目标数据主题的数据变化进行监测包括:调用预言机合约执行数据订阅事务请求,产生事件日志;其中,事件日志用于在被预言机节点监听到时,触发预言机节点获取事件日志中的目标数据主题,并对目标数据主题的数据变化进行监测。
其中,事件日志中所要记录的内容可以由相关技术人员在进行预言机合约的部署时预先设定。例如,事件日志可以是预言机合约执行数据订阅事务请求的过程中所产生的事件信息。
其中,事件日志可以记录在区块链的区块头或区块体中。区块包括区块头和区块体,区块体中可以记录区块的详细数据,例如,可以记录区块链执行过程中产生或接收的至少一条事务请求数据。区块头中可以记录上一个区块的哈希值和本区块的哈希值,以及至少一颗用于记录信息的树等。例如,事件日志可以记录在区块头中的日志树中。日志树可以是用于记录区块中各事件信息的数据结构。事件信息可以是数据订阅事件的相关信息,例如,事件信息可以包括被订阅的目标数据主题的主题名称等。
示例性的,区块链节点调用预言机合约执行数据订阅事务请求,预言机合约在执行数据订阅事务请求时,可以产生处理数据事务订阅请求对应的数据订阅事件日志,并将该日志记录在区块头或区块体中,以记录被订阅的目标数据主题。对于事件日志中所形成的内容可以进行预先定义,即设定在预言机合约执行数据订阅事务请求时所产生的数据订阅事件都包括哪些信息,例如,可以包括数据主题。相应的,事件日志可以被在网络中广播,预言机节点可以对区块链中所产生的事件进行监听,若监听到数据订阅事件日志,则可以触发预言机节点获取事件日志中的目标数据主题,并对与目标数据主题关联的数据变化进行监测。
本可选实施例方案通过调用预言机合约执行数据订阅事务请求,产生事件日志,记录在区块头或区块体中,以记录被订阅的目标数据主题,实现了在区块链节点中对事件日志的记录。通过预言机节点对区块中所产生的事件日志进行监听,能够准确的获取到区块链节点中的目标数据主题,实现了对链上目标数据主题的及时获取。此外,采用监听的方式,还可以使得区块链的预言机合约无需对特定的区块链节点进行接口调用。区块链网络包括多个区块链节点,若分别调用预言机节点,则可能产生大量数据发送或调用请求。
S130、获取预言机节点反馈的目标数据主题的变化事件,并将变化事件上链,以供客户端监听到变化事件。
其中,目标数据主题的变化事件可以是外部数据源中,与目标数据主题关联的数据发生变化的事件。
示例性的,预言机节点可以对外部数据源进行实时监测,当预言机节点监测到外部数据源中,与目标数据主题关联的数据发生变化时,将该变化事件反馈至区块链节点;区块链节点获取预言机节点反馈的目标数据主题的变化事件,将该变化事件上链,并由预言机合约根据该变化事件,对变化事件关联的目标数据主题进行更新,从而使得订阅该目标数据主题的客户端能够监听到变化事件。变化事件可以反映数据变化的状态,也可以细粒度的反映哪些数据发生了变化,以及反映具体的数据变化内容。
需要说明的是,当用户通过客户端监听到目标数据主题发生变化时,可以由用户部署的业务合约自动获取发生变化的数据,具体可以是客户端监听到数据变化时,自动触发业务合约获取新数据。可选的,还可以由用户人为自行判断是否有获取新数据的需求,若是,则可以发起业务事务请求,由业务合约对发生变化的数据进行获取。
在一个可选实施例中,在执行业务合约发起的业务事务请求的过程中,如果检测到外部数据源所提供目标数据的获取需求,则调用预言机合约,以控制预言机节点从外部数据源读取目标数据,并反馈给预言机合约。
其中,业务合约可以是部署在区块链系统中的用于实现各种业务功能的智能合约。业务事务请求可以是用户根据自身需求通过区块链客户端向业务合约发起的事务请求。目标数据可以是用户订阅的目标数据主题关联的数据。
示例性的,当客户端监听到变化事件后,可以根据自身需求确定是否需要对变化的新数据进行获取;若是,则用户可以通过业务合约发起业务事务请求。区块链节点在执行业务合约发起的业务事务请求的过程中,如果检测到该请求为外部数据源所提供的目标数据的获取请求,则调用预言机合约,由预言机合约控制预言机节点从外部数据源中读取目标数据,并反馈给预言机合约;业务合约可以通过跨合约调用,获取目标数据。
本可选实施例通过在执行业务合约发起的业务事务请求的过程中,判断是否检测到外部数据源所提供目标数据的获取需求,若是,则调用预言机合约控制预言机节点从外部数据源读取目标数据并反馈给预言机合约,实现了用户能够根据自身的需求,判断是否对发生变化的数据进行获取,提高了用户获取目标数据的便利性。
本公开实施例通过获取客户端发起的数据订阅事务请求;调用预言机合约执行数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对目标数据主题的数据变化进行监测;获取预言机节点反馈的目标数据主题的变化事件,并将变化事件上链,以供客户端监听到变化事件。上述方案用户通过客户端向预言机合约订阅数据变化事件,从而控制预言机节点对外部数据源的数据变化进行监测,通过预言机合约对变化事件的发布,可以使得用户能够及时获知订阅的数据发生变化,实现了在数据源更新时,用户对发生变化的数据的及时获取,提高了用户的便利性。此外,通过发布订阅的方式,预言机节点无需响应多个请求和发送多次数据,减小了区块链计算资源和存储资源的消耗。
图2是根据本公开实施例提供的另一种外部数据源的状态监控方法的示意图,本实施例是在上述实施例的基础上提出的一种可选方案。
参见图2,本实施例提供的外部数据源的状态监控的方法包括:
S210、获取客户端发起的数据订阅事务请求。
S220、调用预言机合约执行数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对目标数据主题的数据变化进行监测。
S230、获取预言机节点通过客户端发起的变化事务请求。
其中,变化事务请求可以是外部数据源中与目标数据主题关联的数据发生变化时,预言机节点向区块链发送的请求;变化事务请求用于表征目标数据主题的变化事件。
示例性的,当预言机节点监测到外部数据源中,与目标数据主题关联的数据发生变化时,预言机节点可以通过区块链的客户端向区块链发起变化事务请求。
S240、调用预言机合约执行变化事务请求,以获取目标数据主题的变化事件。
示例性的,当区块链节点获取到预言机节点发起的变化事务请求时,调用预言机合约执行变化事务请求,预言机节点获取目标数据主题的变化事件,并将该变化事件的事件内容进行更新,例如,可以更新该变化事件对应的目标数据主题的主题名称。
可选的,预言机节点可以预先在区块链节点中进行注册。具体的,预言机节点可以向区块链节点发送注册事务请求;区块链节点在执行注册事务请求的过程中,调用预言机合约,获取注册事务请求中预言机节点的标识和公钥,并上链存储。其中,注册事务请求可以是预言机节点向区块链节点发起的进行信息注册的事务请求。预言机节点的标识可以是表征预言机节点的唯一标识。预言机节点的公钥可以用于对预言机节点反馈的变化事务请求进行验证。
在一个可选实施例中,调用预言机合约执行变化事务请求的过程中,还包括:基于预言机合约中注册的预言机节点的公钥,对变化事务请求中的预言机节点签名进行有效性验证和账户匹配性验证。
其中,预言机节点签名可以是预言机节点采用私钥对变化事务请求的请求参数的签名。其中,请求参数可以包括目标数据主题的主题名称、目标数据或时间戳等。
示例性的,区块链节点可以基于预言机合约中注册的预言机节点的公钥,验证预言机节点签名是否有效,以及验证预言机节点的账户是否匹配。验证预言机节点的账户是否匹配具体可以是验证预言机节点的地址是否为有效的预言机节点地址,其中,预言机节点地址可以由预言机节点的公钥生成。
本可选实施例通过基于预言机合约中注册的预言机节点的公钥,对变化事务请求中的预言机节点签名进行有效性验证和账户匹配性验证,实现了对预言机节点以及预言机节点发送的变化事务请求进行验证,保证了预言机节点以及预言机节点发送的数据的有效性和可靠性。
需要说明的是,在调用预言机合约执行变化事务请求的过程中,可以根据变化事务请求的请求参数中的时间戳与区块链上记录的最新时间戳,确定目标数据主题的数据是否发生变化。
在一个可选实施例中,调用预言机合约执行变化事务请求的过程中,还包括:从变化事务请求中获取目标数据主题的变化时间戳,与链上记录的目标数据主题的最新时间戳进行比对;如果最新时间戳早于变化时间戳,则确定目标数据主题的数据发生变化。
其中,变化时间戳可以是区块链节点从当前的变化事务请求中获取的目标数据主题的时间戳;最新时间戳可以是区块链链上记录的上一次变化事务请求获取的目标数据主题的时间戳。
示例性的,区块链节点从预言机节点发送的变化事务请求中获取目标数据主题的变化时间戳,以及获取链上记录的目标数据主题的最新时间戳;将变化时间戳与最新时间戳进行比对;判断最新时间戳是否早于变化时间戳;若是,则确定目标数据主题的数据发生变化,若否,则确定目标数据主题的数据未发生变化。
本可选实施例通过获取目标数据主题的变化时间戳,并将其与最新时间戳进行比对的方式,确定目标数据主题的数据发生变化,实现了对目标数据主题的数据是否发生变化的准确确定,从而提高了获取目标数据主题的变化事件的准确度。
S250、将变化事件上链,以供客户端监听到变化事件。
本公开实施例方案通过获取预言机节点通过客户端发起的变化事务请求,调用预言机合约执行变化事务请求,以获取目标数据主题的变化事件。上述方案通过调用预言机合约执行变化事务请求,实现了对目标数据主题变化事件的及时获取,从而便于后续客户端对变化事件的监听。通过获取由预言机节点发送的变化事务请求,实现了对外部数据源中与目标数据主题关联的发生变化的外部数据的及时获取,实现了用户获取到其订阅的目标数据的实时性,从而提高了用户的便利性。
图3A是根据本公开实施例提供的一种外部数据源的状态监控方法的示意图,本公开实施例可适用于区块链上的业务合约和用户,能够及时获知外部数据源中的数据变化的情况。该方法可由一种外部数据源的状态监控装置来执行,该装置可采用硬件和/或软件的方式来实现,可配置于电子设备中,该电子设备可以为预言机节点。参考图3A,该方法应用于预言机节点,该方法具体包括如下:
S310、获取区块链上部署的预言机合约所执行的数据订阅事务请求。
其中,数据订阅事务请求可以由客户端发起;预言机合约可以是用于处理订阅数据事务请求的智能合约;数据订阅事务请求可以是用户根据自身需求,通过区块链的客户端向区块链节点发起的订阅事务请求。
在一个可选实施例中,获取区块链上部署的预言机合约所执行的数据订阅事务请求包括:监听区块链中的事件日志;其中,事件日志记录于区块头或区块体中;如果监听到事件日志中出现数据订阅事务请求时,则从事件日志中读取数据订阅事务请求。
其中,事件日志可以是预言机合约执行数据订阅事务请求的过程中所产生的事件信息。
示例性的,预言机节点可以对区块链中的事件日志进行监听,当监听到出现数据订阅事务请求的事件日志时,可以从事件日志中获取数据订阅事务请求,从而实现对区块链中数据订阅事务请求的及时获取。
本可选实施例通过监听区块链中的事件日志的方式,实现了对数据订阅事务请求的获取。如果监听到事件日志中出现数据订阅事务请求时,则从事件日志中读取数据订阅事务请求。采用监听区块链上的事件日志的方式,可以使得预言机节点无需对预言机合约进行接口连接,区块链网络包括多个区块链节点,若预言机节点分别对大量的区块链节点进行接口连接,则可能会获取大量的接口发送的调用请求。
S320、根据数据订阅事务请求确定被订阅的目标数据主题,并对外部数据源所提供的目标数据进行数据变化的监测。
其中,目标数据主题可以是被用户订阅的数据主题,且目标数据主题的数量可以为一个或多个。目标数据可以是目标数据主题对应的数据,即外部数据源所提供的数据,也是订阅该目标数据主题的用户所需要的或者感兴趣的数据。
示例性的,预言机节点从监听到的事件日志中读取数据订阅事务请求,并根据数据订阅事务请求确定被订阅的目标数据主题;预言机节点对外部数据源中,与目标数据主题关联的目标数据进行数据变化的定时或实时监测。
在一个可选实施例中,对外部数据源所提供的目标数据进行数据变化的监测包括:通过预言机节点中的数据源适配器,轮询监测外部数据源中目标数据主题的数据变化;在监测到数据变化时,获取目标数据主题的目标数据,与本地已存数据进行比对以验证数据变化。
其中,数据源适配器可以与外部数据源的调用接口进行适配,用于获取外部数据源提供的数据。
示例性的,在预言机节点内可以部署至少一个数据源适配器,并分别与外部数据源对应的API(Application Programming Interface,应用程序接口)进行适配。其中,外部数据源的数量可以与数据源适配器的数量相对应,即一个数据源适配器可以与一个外部数据源对应的API适配。通过预言机节点中的数据源适配器,对外部数据源中目标数据主题对应的数据变化进行轮询监测,并确定数据是否发生变化。若监测到目标数据主题对应的数据发生变化,则获取目标数据主题的目标数据。数据源适配器将获取的目标数据与本地已存数据进行比对,判断比对结果是否一致;若是,则确定目标数据发生变化,若否,则确定目标数据未发生变化。若目标数据发生变化,则数据源适配器根据发生变化的目标数据更新本地的已存数据。
本可选实施例通过预言机节点中的数据源适配器,轮询监测外部数据源中目标数据主题的数据变化,实现了对外部数据源中与目标数据主题对应的发生变化的数据的监测;在监测到数据变化时,获取目标数据主题的目标数据,与本地已存数据进行比对以验证数据变化,实现了对从外部数据源获取的数据的验证,从而能够准确的确定数据是否发生了更新。
S330、将监测到的目标数据主题的变化事件,反馈给预言机合约,使得预言机合约将变化事件上链,以供客户端监听到变化事件。
其中,目标数据主题的变化事件可以是外部数据源中与目标数据主题关联的数据发生变化的事件。
示例性的,预言机节点将监测到的目标数据主题的变化事件反馈至区块链节点;区块链节点调用预言机合约将该变化事件上链,以供客户端能够监听到变化事件。
在一个可选实施例中,将监测到的目标数据主题的变化事件,反馈给预言机合约包括:通过客户端发起变化事务请求,以表征监测到的目标数据主题的变化事件;变化事务请求用于调用预言机合约来执行。
其中,变化事务请求可以是外部数据源中与目标数据主题关联的数据发生变化时,预言机节点向区块链发送的请求;变化事务请求用于表征目标数据主题的变化事件。
示例性的,当预言机节点监测到外部数据源中,与目标数据主题关联的数据发生变化时,预言机节点可以通过区块链的客户端向区块链发起变化事务请求。
本可选实施例通过客户端发起变化事务请求,以表征监测到的目标数据主题的变化事件的方式,实现了区块链节点对目标数据主题变化事件的获取,便于后续客户端对变化事件的监听。
在一个具体实施例中,参见图3B所示的一种外部数据源的状态监控方法的交互示意图。用户可以通过区块链的客户端向区块链节点发起数据订阅事务请求,区块链节点调用预言机合约执行数据订阅事务请求,产生事件日志,记录在区块头或区块体中,以记录被订阅的目标数据主题。预言机节点对事件日志进行监听,其中,预言机节点中包括交易生成器、数据源适配器A、数据源适配器B和数据源适配器C。其中,数据源适配器A与外部数据源A的API进行适配,数据源适配器B与外部数据源B的API进行适配,数据源适配器C与外部数据源C的API进行适配。当预言机节点监听到事件日志中出现数据订阅事务请求时,从事件日志中读取数据订阅事务请求。预言机节点根据数据订阅事务请求确定被订阅的目标数据主题,并通过数据源适配器,对外部数据源中目标数据主题的数据变化进行检测。当数据源适配器检测到外部数据源中与目标数据主题关联的数据发生变化时,则将目标数据主题的目标数据与本地已存数据进行比对以验证数据变化。若目标数据发生变化,则将目标数据、目标数据主题的主题名称和时间戳发送给交易生成器。交易生成器将目标数据、目标数据主题的主题名称和时间戳作为变化事务请求的请求参数,并采用私钥对其进行签名;交易生成器将签名后的变化事务请求发送至区块链节点。区块链节点基于预言机合约中预先注册的预言机节点的公钥,对变化事务请求中的预言机节点签名进行验证,具体可以是验证签名的有效性、验证地址是否为有效的预言机节点地址以及验证时间戳是否大于该目标数据主题最新的时间戳。若验证成功,则预言机合约将该目标数据主题的目标数据、时间戳进行更新,并将该变化事件上链。客户端对变化事件进行监听,在执行业务合约发起的业务事务请求的过程中,如果检测到外部数据源所提供目标数据的获取需求,则调用预言机合约,以控制预言机节点从外部数据源读取目标数据,并反馈给预言机合约。
本公开实施例通过获取区块链上部署的预言机合约所执行的数据订阅事务请求;根据数据订阅事务请求确定被订阅的目标数据主题,并对外部数据源所提供的目标数据进行数据变化的监测;将监测到的目标数据主题的变化事件,反馈给预言机合约,使得预言机合约将变化事件上链,以供客户端监听到变化事件。上述方案通过部署预言机节点,并由预言机节点获取确定目标数据主题关联的数据是否发生变化,从而能够响应用户的需求,对变化的数据进行获取,实现了在数据源更新时,用户对发生变化的数据的及时获取,提高了用户的便利性。此外,通过发布订阅的方式,预言机节点无需响应多个请求和发送多次数据,减小了区块链计算资源和存储资源的消耗。
图4是根据本公开实施例提供的一种外部数据源的状态监控装置的示意图,本实施例可适用于区块链上的业务合约和用户,能够及时获知外部数据源中的数据变化的应用场景,该装置配置于电子设备中,可实现本公开任意实施例所述的外部数据源的状态监控方法。该电子设备可以为区块链节点,参考图4,该外部数据源的状态监控装置400具体包括如下:
事务请求获取模块401,用于获取客户端发起的数据订阅事务请求;
事务请求执行模块402,用于调用预言机合约执行所述数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对所述目标数据主题的数据变化进行监测;
变化事件获取模块403,用于获取预言机节点反馈的目标数据主题的变化事件,并将所述变化事件上链,以供所述客户端监听到所述变化事件。
本公开实施例用户通过客户端向预言机合约订阅数据变化事件,从而控制预言机节点对外部数据源的数据变化进行监测,通过预言机合约对变化事件的发布,可以使得用户能够及时获知订阅的数据发生变化,实现了在数据源更新时,用户对发生变化的数据的及时获取,提高了用户的便利性。此外,通过发布订阅的方式,预言机节点无需响应多个请求和发送多次数据,减小了区块链计算资源和存储资源的消耗。
在一种可选的实施方式中,所述事务请求执行模块402,包括:
事务请求调用单元,用于调用所述预言机合约执行所述数据订阅事务请求,产生事件日志,记录在区块头或区块体中,以记录被订阅的目标数据主题;
其中,所述事件日志用于在被所述预言机节点监听到时,触发所述预言机节点获取所述事件日志中的目标数据主题,并对所述目标数据主题的数据变化进行监测。
在一种可选的实施方式中,所述变化事件获取模块403,包括:
变化事务请求获取单元,用于获取预言机节点通过客户端发起的变化事务请求,其中,所述变化事务请求用于表征目标数据主题的变化事件;
变化事务请求调用单元,用于调用所述预言机合约执行所述变化事务请求,以获取所述目标数据主题的变化事件。
在一种可选的实施方式中,所述变化事件获取模块403还包括:
签名验证单元,用于基于所述预言机合约中注册的预言机节点的公钥,对所述变化事务请求中的预言机节点签名进行有效性验证和账户匹配性验证。
在一种可选的实施方式中,所述变化事件获取模块403还包括:
时间戳比对单元,用于从所述变化事务请求中获取目标数据主题的变化时间戳,与链上记录的目标数据主题的最新时间戳进行比对;
变化数据确定单元,用于如果最新时间戳早于所述变化时间戳,则确定所述目标数据主题的数据发生变化。
在一种可选的实施方式中,所述预言机节点的数量为一个或多个,所述目标数据主题的数量为一个或多个,所述目标数据主题对应的目标数据为外部数据源所提供的数据。
在一种可选的实施方式中,所述装置还包括:
预言机合约调用模块,用于在执行业务合约发起的业务事务请求的过程中,如果检测到外部数据源所提供目标数据的获取需求,则调用预言机合约,以控制所述预言机节点从所述外部数据源读取所述目标数据,并反馈给所述预言机合约。
本公开实施例的技术方案所提供的一种外部数据源的状态监控装置可执行本公开任意实施例所提供的外部数据源的状态监控方法,具备执行外部数据源的状态监控方法相应的功能模块和有益效果。
图5是根据本公开实施例提供的一种外部数据源的状态监控装置的示意图,本实施例可适用于区块链上的业务合约和用户,能够及时获知外部数据源中的数据变化的应用场景,该装置配置于电子设备中,可实现本公开任意实施例所述的外部数据源的状态监控方法。该电子设备可以为预言机节点,参考图5,该外部数据源的状态监控装置500具体包括如下:
事务请求获取模块501,用于获取区块链上部署的预言机合约所执行的数据订阅事务请求;所述数据订阅事务请求由客户端发起;
目标数据监测模块502,用于根据所述数据订阅事务请求确定被订阅的目标数据主题,并对外部数据源所提供的目标数据进行数据变化的监测;
变化事件反馈模块503,用于将监测到的目标数据主题的变化事件,反馈给所述预言机合约,使得所述预言机合约将所述变化事件上链,以供所述客户端监听到所述变化事件。
本公开实施例通过部署预言机节点,并由预言机节点获取确定目标数据主题关联的数据是否发生变化,从而能够响应用户的需求,对变化的数据进行获取,实现了在数据源更新时,用户对发生变化的数据的及时获取,提高了用户的便利性。此外,通过发布订阅的方式,预言机节点无需响应多个请求和发送多次数据,减小了区块链计算资源和存储资源的消耗。
在一种可选的实施方式中,事务请求获取模块501,包括:
事件日志监听单元,用于监听区块链中的事件日志;其中,所述事件日志记录于区块头或区块体中;
事务请求读取单元,用于如果监听到所述事件日志中出现数据订阅事务请求时,则从事件日志中读取所述数据订阅事务请求。
在一种可选的实施方式中,变化事件反馈模块503,包括:
变化事务请求发起单元,用于通过客户端发起变化事务请求,以表征监测到的目标数据主题的变化事件;所述变化事务请求用于调用预言机合约来执行。
在一种可选的实施方式中,目标数据监测模块502,包括:
数据变化监测单元,用于通过预言机节点中的数据源适配器,轮询监测外部数据源中目标数据主题的数据变化;
目标数据获取单元,用于在监测到数据变化时,获取目标数据主题的目标数据,与本地已存数据进行比对以验证数据变化。
本公开实施例的技术方案所提供的一种外部数据源的状态监控装置可执行本公开任意实施例所提供的外部数据源的状态监控方法,具备执行外部数据源的状态监控方法相应的功能模块和有益效果。
本公开的技术方案中,所涉及的事务请求的获取或事务请求的调用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如外部数据源的状态监控方法。例如,在一些实施例中,外部数据源的状态监控方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的外部数据源的状态监控方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行外部数据源的状态监控方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (16)
1.一种外部数据源的状态监控方法,应用于区块链节点,所述方法包括:
获取客户端发起的数据订阅事务请求;
调用预言机合约执行所述数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对所述目标数据主题的数据变化进行监测;
获取预言机节点反馈的目标数据主题的变化事件,并将所述变化事件上链,以供所述客户端监听到所述变化事件。
2.根据权利要求1所述的方法,其中,调用预言机合约执行所述数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对所述目标数据主题的数据变化进行监测包括:
调用所述预言机合约执行所述数据订阅事务请求,产生事件日志;
其中,所述事件日志用于在被所述预言机节点监听到时,触发所述预言机节点获取所述事件日志中的目标数据主题,并对所述目标数据主题的数据变化进行监测。
3.根据权利要求1所述的方法,其中,获取预言机节点反馈的目标数据主题的变化事件包括:
获取预言机节点通过客户端发起的变化事务请求,其中,所述变化事务请求用于表征目标数据主题的变化事件;
调用所述预言机合约执行所述变化事务请求,以获取所述目标数据主题的变化事件。
4.根据权利要求3所述的方法,调用所述预言机合约执行所述变化事务请求的过程中,还包括:
基于所述预言机合约中注册的预言机节点的公钥,对所述变化事务请求中的预言机节点签名进行有效性验证和账户匹配性验证。
5.根据权利要求3所述的方法,调用所述预言机合约执行所述变化事务请求的过程中,还包括:
从所述变化事务请求中获取目标数据主题的变化时间戳,与链上记录的目标数据主题的最新时间戳进行比对;
如果最新时间戳早于所述变化时间戳,则确定所述目标数据主题的数据发生变化。
6.根据权利要求1所述的方法,其中,所述预言机节点的数量为一个或多个,所述目标数据主题的数量为一个或多个,所述目标数据主题对应的目标数据为外部数据源所提供的数据。
7.根据权利要求1所述的方法,还包括:
在执行业务合约发起的业务事务请求的过程中,如果检测到外部数据源所提供目标数据的获取需求,则调用预言机合约,以控制所述预言机节点从所述外部数据源读取所述目标数据,并反馈给所述预言机合约。
8.一种外部数据源的状态监控方法,应用于预言机节点,所述方法包括:
获取区块链上部署的预言机合约所执行的数据订阅事务请求;所述数据订阅事务请求由客户端发起;
根据所述数据订阅事务请求确定被订阅的目标数据主题,并对外部数据源所提供的目标数据进行数据变化的监测;
将监测到的目标数据主题的变化事件,反馈给所述预言机合约,使得所述预言机合约将所述变化事件上链,以供所述客户端监听到所述变化事件。
9.根据权利要求8所述的方法,其中,获取区块链上部署的预言机合约所执行的数据订阅事务请求包括:
监听区块链中的事件日志;
如果监听到所述事件日志中出现数据订阅事务请求时,则从事件日志中读取所述数据订阅事务请求。
10.根据权利要求8所述的方法,其中,将监测到的目标数据主题的变化事件,反馈给所述预言机合约包括:
通过客户端发起变化事务请求,以表征监测到的目标数据主题的变化事件;所述变化事务请求用于调用预言机合约来执行。
11.根据权利要求8所述的方法,其中,对外部数据源所提供的目标数据进行数据变化的监测包括:
通过预言机节点中的数据源适配器,轮询监测外部数据源中目标数据主题的数据变化;
在监测到数据变化时,获取目标数据主题的目标数据,与本地已存数据进行比对以验证数据变化。
12.一种外部数据源的状态监控装置,应用于区块链节点,所述装置包括:
事务请求获取模块,用于获取客户端发起的数据订阅事务请求;
事务请求执行模块,用于调用预言机合约执行所述数据订阅事务请求,以记录被订阅的目标数据主题,并控制预言机节点对所述目标数据主题的数据变化进行监测;
变化事件获取模块,用于获取预言机节点反馈的目标数据主题的变化事件,并将所述变化事件上链,以供所述客户端监听到所述变化事件。
13.一种外部数据源的状态监控装置,应用于预言机节点,所述装置包括:
事务请求获取模块,用于获取区块链上部署的预言机合约所执行的数据订阅事务请求;所述数据订阅事务请求由客户端发起;
目标数据监测模块,用于根据所述数据订阅事务请求确定被订阅的目标数据主题,并对外部数据源所提供的目标数据进行数据变化的监测;
变化事件反馈模块,用于将监测到的目标数据主题的变化事件,反馈给所述预言机合约,使得所述预言机合约将所述变化事件上链,以供所述客户端监听到所述变化事件。
14.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7或8-11中任一项所述的外部数据源的状态监控方法。
15.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-7或8-11中任一项所述的外部数据源的状态监控方法。
16.一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令在被处理器执行时实现根据权利要求1-7或8-11中任一项所述的外部数据源的状态监控方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210251192.8A CN114328132A (zh) | 2022-03-15 | 2022-03-15 | 外部数据源的状态监控方法、装置、设备和介质 |
US18/184,472 US20230297557A1 (en) | 2022-03-15 | 2023-03-15 | Method for monitoring a state of an external data source, device, and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210251192.8A CN114328132A (zh) | 2022-03-15 | 2022-03-15 | 外部数据源的状态监控方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114328132A true CN114328132A (zh) | 2022-04-12 |
Family
ID=81033803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210251192.8A Pending CN114328132A (zh) | 2022-03-15 | 2022-03-15 | 外部数据源的状态监控方法、装置、设备和介质 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20230297557A1 (zh) |
CN (1) | CN114328132A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115987697A (zh) * | 2023-03-21 | 2023-04-18 | 安徽省大数据中心 | 基于事件订阅机制的多层级情报数据共享方法及系统 |
CN116032494A (zh) * | 2023-03-24 | 2023-04-28 | 深圳开鸿数字产业发展有限公司 | 数据交互方法、区块链预言机、设备及介质 |
CN116795650A (zh) * | 2023-06-29 | 2023-09-22 | 浙江海得智慧能源有限公司 | 一种储能系统运行状态监测方法、系统及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200076743A1 (en) * | 2018-08-31 | 2020-03-05 | Twitter, Inc. | Event content delivery |
CN111401903A (zh) * | 2020-06-03 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 区块链消息处理方法、装置、计算机以及可读存储介质 |
CN111930852A (zh) * | 2020-09-29 | 2020-11-13 | 北京百度网讯科技有限公司 | 基于区块链的数据处理方法、装置、设备以及存储介质 |
CN112100277A (zh) * | 2020-09-14 | 2020-12-18 | 泰链智能技术(济南)有限公司 | 一种企业数据上链预言机实现方法、系统、设备及产品 |
CN112417034A (zh) * | 2020-10-19 | 2021-02-26 | 易联众信息技术股份有限公司 | 一种基于区块链的预言机服务的选定方法及系统 |
-
2022
- 2022-03-15 CN CN202210251192.8A patent/CN114328132A/zh active Pending
-
2023
- 2023-03-15 US US18/184,472 patent/US20230297557A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200076743A1 (en) * | 2018-08-31 | 2020-03-05 | Twitter, Inc. | Event content delivery |
CN111401903A (zh) * | 2020-06-03 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 区块链消息处理方法、装置、计算机以及可读存储介质 |
CN112100277A (zh) * | 2020-09-14 | 2020-12-18 | 泰链智能技术(济南)有限公司 | 一种企业数据上链预言机实现方法、系统、设备及产品 |
CN111930852A (zh) * | 2020-09-29 | 2020-11-13 | 北京百度网讯科技有限公司 | 基于区块链的数据处理方法、装置、设备以及存储介质 |
CN112417034A (zh) * | 2020-10-19 | 2021-02-26 | 易联众信息技术股份有限公司 | 一种基于区块链的预言机服务的选定方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115987697A (zh) * | 2023-03-21 | 2023-04-18 | 安徽省大数据中心 | 基于事件订阅机制的多层级情报数据共享方法及系统 |
CN116032494A (zh) * | 2023-03-24 | 2023-04-28 | 深圳开鸿数字产业发展有限公司 | 数据交互方法、区块链预言机、设备及介质 |
CN116795650A (zh) * | 2023-06-29 | 2023-09-22 | 浙江海得智慧能源有限公司 | 一种储能系统运行状态监测方法、系统及设备 |
CN116795650B (zh) * | 2023-06-29 | 2024-05-03 | 浙江海得智慧能源有限公司 | 一种储能系统运行状态监测方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
US20230297557A1 (en) | 2023-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114328132A (zh) | 外部数据源的状态监控方法、装置、设备和介质 | |
CN113704063B (zh) | 一种云手机的性能监控方法、装置、设备及存储介质 | |
CN114327803A (zh) | 区块链访问机器学习模型的方法、装置、设备和介质 | |
CN114357495B (zh) | 基于区块链的预言机链下聚合方法、装置、设备和介质 | |
CN109299124B (zh) | 用于更新模型的方法和装置 | |
CN113238815A (zh) | 一种接口访问控制方法、装置、设备及存储介质 | |
CN111367934B (zh) | 数据一致性的检验方法、装置、服务器和介质 | |
CN113595886A (zh) | 即时通讯消息的处理方法、装置、电子设备及存储介质 | |
CN113656239A (zh) | 针对中间件的监控方法、装置及计算机程序产品 | |
CN117093627A (zh) | 信息挖掘的方法、装置、电子设备和存储介质 | |
CN114338051B (zh) | 区块链获取随机数的方法、装置、设备和介质 | |
CN116450176A (zh) | 版本更新方法、装置、电子设备及存储介质 | |
CN114327802B (zh) | 区块链访问链外数据的方法、装置、设备和介质 | |
CN113596011B (zh) | 流量识别方法及装置,计算设备和介质 | |
CN114331446A (zh) | 区块链的链外服务实现方法、装置、设备和介质 | |
US11599406B2 (en) | Common platform for fulfilling different actions | |
CN114091909A (zh) | 一种协同开发的方法、系统、装置及电子设备 | |
CN114362968B (zh) | 区块链获取随机数的方法、装置、设备和介质 | |
CN113595870B (zh) | 推送消息的处理方法、装置、电子设备及存储介质 | |
CN115292081B (zh) | 信息发送方法、装置、电子设备和介质 | |
CN110262756B (zh) | 用于缓存数据的方法和装置 | |
CN114461502B (zh) | 模型的监控方法和装置 | |
CN114117317A (zh) | 模型处理方法、装置、设备以及存储介质 | |
CN118034749A (zh) | 更新方法和电子设备 | |
CN114327956A (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 |