CN111192143B - 数据处理方法、装置、存储介质及区块链节点 - Google Patents

数据处理方法、装置、存储介质及区块链节点 Download PDF

Info

Publication number
CN111192143B
CN111192143B CN201911359335.1A CN201911359335A CN111192143B CN 111192143 B CN111192143 B CN 111192143B CN 201911359335 A CN201911359335 A CN 201911359335A CN 111192143 B CN111192143 B CN 111192143B
Authority
CN
China
Prior art keywords
rule
target
source data
rules
blockchain network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911359335.1A
Other languages
English (en)
Other versions
CN111192143A (zh
Inventor
周阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cloudminds Robotics Co Ltd
Original Assignee
Cloudminds Shanghai Robotics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cloudminds Shanghai Robotics Co Ltd filed Critical Cloudminds Shanghai Robotics Co Ltd
Priority to CN201911359335.1A priority Critical patent/CN111192143B/zh
Publication of CN111192143A publication Critical patent/CN111192143A/zh
Application granted granted Critical
Publication of CN111192143B publication Critical patent/CN111192143B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Fuzzy Systems (AREA)
  • Technology Law (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种数据处理方法、装置、存储介质及区块链节点,应用于区块链网络中的区块链节点。所述方法包括:接收待处理的目标源数据;从所述区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,其中,与所述目标源数据匹配的目标规则能够处理所述目标源数据;针对所述目标源数据执行所述目标规则。这样,通过智能合约,实现区块链网络中的规则、数据共享,只要有规则在区块链网络中被创建并存储到智能合约中,该规则就可以被区块链网络的任意一个区块链节点使用,并且,规则创建形式更加统一,便于扩展,便于使用,节省人力及时间资源。并且,基于区块链和智能合约的特性,不会出现单点故障的问题,稳定性高。

Description

数据处理方法、装置、存储介质及区块链节点
技术领域
本公开涉及区块链领域,具体地,涉及一种数据处理方法、装置、存储介质及区块链节点。
背景技术
规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。通过使用规则引擎,可以把复杂、冗余的业务规则同整个支撑系统分离开来,做到架构的可复用移植。规则引擎的具体执行可以分为接收数据输入、解释业务规则、根据业务规则做出业务决策这几部分。
在目前的应用中,规则引擎是由使用者各自维护的中心化系统,不同使用者之间的规则引擎不能互通。因此,若需要在不同的规则引擎之间共享规则(或数据),需要熟悉这些规则引擎的用法的规则配置人员进行一系列配置,对规则配置人员的能力有一定的要求,这会带来大量的人力需求及学习成本需求。另外,每当出现有关规则引擎共享数据的新的需求,就需要规则配置人员重新进行配置,无法适应不同的应用场景,重新配置的时间消耗大,效率也不高。
发明内容
本公开的目的是提供一种数据处理方法、装置、存储介质及区块链节点,以实现规则的共享。
为了实现上述目的,根据本公开的第一方面,提供一种基于智能合约的数据处理方法,应用于区块链网络中的区块链节点,所述方法包括:
接收待处理的目标源数据;
从所述区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,其中,与所述目标源数据匹配的目标规则能够处理所述目标源数据;
针对所述目标源数据执行所述目标规则。
可选地,每一种所述规则对应有源数据类型;
所述从区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,包括:
将所述区块链网络的智能合约存储的多种规则中、源数据类型与所述目标源数据对应的源数据类型一致的规则确定为所述目标规则。
可选地,所述目标规则为多个;
所述针对所述目标源数据执行所述目标规则,包括:
根据所述目标规则,确定目标规则队列:
针对所述目标源数据,按照所述多个目标规则在所述目标规则队列中的先后顺序依次执行所述多个目标规则。
可选地,通过如下方式中的任意一者确定所述目标规则队列:
根据目标规则的生成时间确定所述目标规则队列,其中,生成时间越晚的目标规则在所述目标规则队列中越靠前;
根据目标规则的预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前;
根据目标规则的生成时间和预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前,以及,对应于相同预定义权重的目标规则按照生成时间由晚到早的顺序在所述目标规则队列中由先到后排列。
可选地,所述方法还包括:
若接收到用于请求上报源数据的上报请求,根据所述区块链网络的智能合约存储的多种规则,确定与所述上报请求对应的源数据类型和数据格式,其中,所述数据格式用于指示源数据的构成方式;
将与所述上报请求对应的源数据类型和数据格式发送至所述上报请求的发送方。
可选地,所述上报请求携带有用于指示源数据类型的标识信息;
所述根据所述区块链网络的智能合约存储的多种规则,确定与所述上报请求对应的源数据类型和数据格式,包括:
确定所述区块链网络的智能合约存储的多种规则中,源数据类型与所述标识信息所指示的源数据类型一致的备选规则;
将所述备选规则对应的源数据类型和数据格式确定为与所述上报请求对应的源数据类型和数据格式。
可选地,所述区块链网络的智能合约存储的规则通过所述区块链网络中的规则引擎创建。
可选地,所述规则引擎包括规则引擎基础功能UI模块和规则引擎语法转换模块,所述规则引擎基础功能UI模块用于为用户提供配置规则的可视化组件及规则参数的输入接口,所述规则引擎语法转换模块用于将用户通过所述规则引擎基础功能UI模块输入的内容转换为符合所述区块链网络的智能合约语法规则的代码,以创建所述规则;
和/或,所述规则引擎包括规则引擎API,所述规则引擎API封装有用于配置规则的方法,且所述规则引擎API用于根据用户针对所述规则引擎API的输入内容创建所述规则。
根据本公开的第二方面,提供一种基于智能合约的数据处理装置,应用于区块链网络中的区块链节点,所述装置包括:
接收模块,用于接收待处理的目标源数据;
获取模块,用于从所述区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,其中,与所述目标源数据匹配的目标规则能够处理所述目标源数据;
规则执行模块,用于针对所述目标源数据执行所述目标规则。
可选地,每一种所述规则对应有源数据类型;
所述获取模块用于将所述区块链网络的智能合约存储的多种规则中、源数据类型与所述目标源数据对应的源数据类型一致的规则确定为所述目标规则。
可选地,所述目标规则为多个;
所述规则执行模块包括:
第一确定子模块,用于根据所述目标规则,确定目标规则队列:
执行子模块,用于针对所述目标源数据,按照所述多个目标规则在所述目标规则队列中的先后顺序依次执行所述多个目标规则。
可选地,所述装置通过如下方式中的任意一者确定所述目标规则队列:
根据目标规则的生成时间确定所述目标规则队列,其中,生成时间越晚的目标规则在所述目标规则队列中越靠前;
根据目标规则的预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前;
根据目标规则的生成时间和预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前,以及,对应于相同预定义权重的目标规则按照生成时间由晚到早的顺序在所述目标规则队列中由先到后排列。
可选地,所述装置还包括:
确定模块,用于若接收到用于请求上报源数据的上报请求,根据所述区块链网络的智能合约存储的多种规则,确定与所述上报请求对应的源数据类型和数据格式,其中,所述数据格式用于指示源数据的构成方式;
发送模块,用于将与所述上报请求对应的源数据类型和数据格式发送至所述上报请求的发送方。
可选地,所述上报请求携带有用于指示源数据类型的标识信息;
所述确定模块包括:
第二确定子模块,用于确定所述区块链网络的智能合约存储的多种规则中,源数据类型与所述标识信息所指示的源数据类型一致的备选规则;
第三确定子模块,用于将所述备选规则对应的源数据类型和数据格式确定为与所述上报请求对应的源数据类型和数据格式。
可选地,所述区块链网络的智能合约存储的规则通过所述区块链网络中的规则引擎创建。
可选地,所述规则引擎包括规则引擎基础功能UI模块和规则引擎语法转换模块,所述规则引擎基础功能UI模块用于为用户提供配置规则的可视化组件及规则参数的输入接口,所述规则引擎语法转换模块用于将用户通过所述规则引擎基础功能UI模块输入的内容转换为符合所述区块链网络的智能合约语法规则的代码,以创建所述规则;
和/或,所述规则引擎包括规则引擎API,所述规则引擎API封装有用于配置规则的方法,且所述规则引擎API用于根据用户针对所述规则引擎API的输入内容创建所述规则。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。
根据本公开的第四方面,提供一种区块链节点,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。
通过上述技术方案,接收待处理的目标源数据,并从区块链网络的智能合约存储的多种规则中获取与目标源数据匹配的目标规则,之后,针对目标源数据执行目标规则。这样,通过智能合约,实现区块链网络中的规则、数据共享,只要有规则在区块链网络中被创建并存储到智能合约中,该规则就可以被区块链网络的任意一个区块链节点使用,并且,规则创建形式更加统一,便于扩展,便于使用,节省人力及时间资源。并且,基于区块链和智能合约的特性,不会出现单点故障的问题,稳定性高。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据本公开的一种实施方式提供的基于智能合约的数据处理方法的流程图;
图2是根据本公开提供的基于智能合约的数据处理方法中,规则引擎的一种示例性的框架示意图;
图3是根据本公开提供的基于智能合约的数据处理方法中,针对目标源数据执行目标规则的步骤的一种示例性的流程图;
图4是根据本公开的一种实施方式提供的基于智能合约的数据处理装置的框图;
图5是根据一示例性实施例示出的一种区块链节点的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
需要说明的是,本公开的说明书和权利要求书以及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必理解为特定的顺序或先后次序。
为了使本领域技术人员更容易理解本公开实施例提供的技术方案,下面首先对本公开涉及到的相关技术进行简单介绍。
区块链,本质上是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改、不可伪造、完全可追溯、去中心化的分布式账本。
智能合约是区块链的核心构成要素,为静态的底层区块链数据赋予了灵活可编程的机制和算法,能够实现控制和管理区块链上的数据的功能,智能合约主要实现区块链上的数据存储、读写以及一些逻辑操作。智能合约是可编程的数字形式的协议,由特定的合约语言编码而成,通过编译、部署形成可执行的程序。智能合约的自动化和可编程性能可以为区块链提供更多的应用可能。
图1是根据本公开的一种实施方式提供的基于智能合约的数据处理方法的流程图。该方法可以应用于区块链网络中的区块链节点。如图1所示,该方法可以包括以下步骤。
在步骤11中,接收待处理的目标源数据。
源数据可以对应有源数据类型和数据格式,源数据类型和源数据的数据格式是用户基于实际的业务需求自定义的,可以有多种形式。其中,源数据类型能够反映源数据是什么样的数据,源数据的数据格式用于指示源数据的构成方式,反映源数据的构成情况,例如,由哪一种数据元素构成,或者,由哪几种数据元素以何种形式组合而成。
示例地,在网络监测的业务场景中,源数据可以是网络状态数据,其源数据类型对应网络状态类型,其数据格式可以为{网络流量走向,网络速度}。再例如,在地震监测的业务场景中,源数据可以是地质活动数据,其源数据类型对应地质活动类型,其数据格式可以为{坐标,地形,重力,磁力}。再例如,在空气监测的业务场景中,源数据可以是空气数据,其源数据类型对应空气类型,其数据格式可以为{坐标,时间,PM2.5浓度值}。
目标源数据可以由能够与区块链节点通信的设备发送,并由区块链节点接收。并且,基于区块链本身的特性,在区块链节点接收到目标源数据后,区块链网络会存储该目标源数据,也就是说,一旦目标源数据被区块链节点接收,该目标源数据就会被保存到区块链网络,例如,存储到区块链网络的智能合约中。
在步骤12中,从区块链网络的智能合约存储的多种规则中获取与目标源数据匹配的目标规则。
区块链网络的智能合约中存储有多种规则。每一种规则由规则名称、条件表达式和结果表达式构成。其中,规则名称具有唯一性,也就是说,一个规则名称能够唯一代表一种规则。条件表达式和结果表达式共同构成了规则的执行逻辑,也就是说,在针对某数据执行某规则时,数据经过规则中的条件表达式和结果表达式处理后,能够得到规则的执行结果。
示例地,区块链网络的智能合约中的多种规则可以以规则集的形式存储。例如,将具有关联性的规则归入同一规则集下。其中,具有关联性的规则可以是对应相同或相似业务场景的规则,例如,空气监测规则集中包含有关空气监测的规则、网络监测规则集中包含有关网络监测的规则、地震监测规则集中包含有关地震监测的规则集。
接收到待处理的目标源数据后,从区块链网络的智能合约存储的多种规则中获取与目标源数据匹配的目标规则。在这里,能够与目标源数据匹配的目标规则可以认为是能够处理目标源数据的规则。在一种可能的实施例中,目标规则可以是存储在智能合约的规则中、能够处理目标源数据的所有规则。在另一种可能的实施例中,可以从存储在智能合约的规则中、能够处理目标源数据的所有规则中选择预设数量的规则作为目标规则。
在一种可能的实施方式中,存储于智能合约的每种规则对应有源数据类型,该源数据类型可以在规则创建阶段和规则一同被定义。其中,一种规则可以对应有一种源数据类型,或者,一种规则可以对应有多种源数据类型。规则所对应的源数据类型能够反映规则能够处理何种源数据,例如,有关空气监测的规则可以对应于空气类型这一源数据类型,或者,有关自然环境监测的规则可以对应于地质活动类型和空气类型这两种源数据类型。在这一实施方式中,可以通过如下方式从区块链网络的智能合约存储的多种规则中获取与目标源数据匹配的目标规则:
将区块链网络的智能合约存储的多种规则中、源数据类型与目标源数据对应的源数据类型一致的规则确定为目标规则。
在另一种可能的实施方式中,若规则以规则集的形式存储在智能合约中,则存储于智能合约的每一规则集可以对应有源数据类型(源数据类型可以为一种或多种),规则集所对应的源数据类型能够反映该规则集内的规则能够处理何种源数据,每种规则对应的源数据类型可以在规则创建阶段和规则一同被定义。因此,在这一实施方式中,可以通过如下方式从区块链网络的智能合约存储的多种规则中获取与目标源数据匹配的目标规则:
将区块链网络的智能合约存储的规则集中、源数据类型与目标源数据对应的源数据类型一致的规则集中的规则确定为目标规则。
在步骤13中,针对目标源数据执行目标规则。
在确定出目标规则之后,可针对目标源数据执行目标规则,以得到相应的结果。例如,假设目标规则的逻辑为当PM2.5浓度值大于100μg/m3时向A终端发送用于指示空气污染的短信,那么,若目标源数据指示PM2.5浓度值为150μg/m3,针对该目标源数据执行目标规则后,A终端就会收到一条用于指示空气污染的短信。
通过上述技术方案,接收待处理的目标源数据,并从区块链网络的智能合约存储的多种规则中获取与目标源数据匹配的目标规则,之后,针对目标源数据执行目标规则。这样,通过智能合约,实现区块链网络中的规则、数据共享,只要有规则在区块链网络中被创建并存储到智能合约中,该规则就可以被区块链网络的任意一个区块链节点使用,并且,规则创建形式更加统一,便于扩展,便于使用,节省人力及时间资源。并且,基于区块链和智能合约的特性,不会出现单点故障的问题,稳定性高。
为了便于本领域技术人员更加理解本公开实施例提供的技术方案,下面对本公开中涉及到的相关步骤进行详细说明。
首先对本公开区块链网络的智能合约存储的规则的创建方式进行详细说明。本公开中区块链网络的智能合约存储的规则可以是通过区块链网络中的规则引擎创建的,规则引擎可以部署于本公开的区块链网络中的任意一个或几个区块链节点,每一规则引擎均可实现规则的创建与存储。
本公开规则引擎的构成框架可以如图2所示,规则引擎可以由规则引擎基础功能UI模块、规则引擎语法转换模块、规则引擎API和区块链智能合约构成。
其中,规则引擎基础功能UI模块和规则引擎语法转换模块配合使用。
规则引擎基础功能UI模块可以为用户提供配置规则的可视化组件及规则参数的输入接口。配置规则的可视化组件可以包括设值组件、取值组件、计算组件、比较组件、条件组件、循环组件、事件发送组件等。每一可视化组件可以设置有规则参数的输入接口。规则配置人员可以根据实际的业务需求及流程,拖拽这些组件,并填写相关规则参数,以配置规则的执行逻辑。
规则引擎语法转换模块可以将用户通过规则引擎基础功能UI模块输入的内容转换为符合区块链网络的智能合约语法规则的代码,以创建规则。基于用户(即,规则配置人员)通过规则引擎基础功能UI模块输入的内容,将已配置的执行逻辑按照区块链智能合约的语法规则进行UI到代码的转换,从而形成规则,并存储到区块链网络的智能合约中。
其中,根据UI转化为相应语言的代码属于本领域的公知常识,此处不进行过多描述。举例来说,针对每一可视化组件,根据其逻辑或功能预先设置与其对应的符合区块链网络的智能合约语法规则的代码,从而,在可视化组件被使用时,可以直接调用该可视化组件对应的代码,并将用户针对该可视化组件实际输入的规则参数填入到代码中对应于该参数的位置。被调用的每一可视化组件均完成上述过程,规则也对应形成,可以存储到区块链网络的智能合约中。
规则引擎API封装有用于配置规则的方法,且规则引擎API用于根据用户针对规则引擎API的输入内容创建规则。其中,规则引擎API对区块链智能合约中操作规则、数据的读/写方法等进行封装。规则引擎API封装的方法可以包括以下几者:新增规则集、获取规则集、删除规则集、新增规则、获取规则、删除规则、新增源数据、获取源数据。
由上所述,规则引擎基础功能UI模块和规则引擎语法转换模块这二者和规则引擎API均可实现规则创建。其中,规则引擎基础功能UI模块和规则引擎语法转换模块这二者面向熟悉业务规则、但没有编程能力的用户,规则引擎API则是面向具有编程能力的用户。因此,在规则引擎中,可以设置规则引擎基础功能UI模块和规则引擎语法转换模块、而不设置规则引擎API,或者,可以设置规则引擎API、而不设置规则引擎基础功能UI模块和规则引擎语法转换模块,或者,可以规则引擎基础功能UI模块、规则引擎语法转换模块和规则引擎API这三者均设置,可根据实际的需求灵活设置
在一种可能的实施方式中,若目标规则为多个,步骤13中的针对目标源数据执行目标规则可以包括以下步骤,如图3所示。
在步骤31中,根据目标规则,确定目标规则队列。
目标规则队列可以对多个目标规则按照一定的方式进行排序而得到。在目标规则队列中,规则位置的先后代表规则被执行的不同优先级,一般情况下,规定越靠前的规则被执行的优先级越高,越靠后的规则被执行的优先级越低。
在一种可能的实施方式中,可以通过以下方式中的任意一者确定目标规则队列:
根据目标规则的生成时间确定目标规则队列;
根据目标规则的预定义权重确定目标规则队列;
根据目标规则的生成时间和预定义权重确定目标规则队列。
规则的生成时间就是该规则被成功创建的时间。规则的预定义权重可以在规则创建阶段由用户自定义。
在根据目标规则的生成时间确定目标规则队列时,生成时间越晚的目标规则在目标规则队列中越靠前。其中,生成时间越晚,表示规则越“新”,代表可以更优先地被执行,因此,在目标规则队列中位置更靠前。
在根据目标规则的预定义权重确定目标规则队列时,预定义权重越高的目标规则在目标规则队列中越靠前。其中,预定义权重越高,表示规则越被重视,代表可以更优先地被执行,因此,在目标规则队列中位置更靠前。
在根据目标规则的生成时间和预定义权重确定目标规则队列时,预定义权重越高的目标规则在目标规则队列中越靠前,以及,对应于相同预定义权重的目标规则按照生成时间由晚到早的顺序在目标规则队列中由先到后排列。也就是说,按照预定义权重的大小对规则排序,若存在预定义权重相同的规则,再基于生成时间对同预定义权重下的规则进一步排序。
在步骤32中,针对目标源数据,按照多个目标规则在目标规则队列中的先后顺序依次执行多个目标规则。
在确定目标规则队列后,可以针对目标源数据,按照多个目标规则在目标规则队列中的顺序、由先到后依次执行多个目标规则。
采用上述方式,基于对目标规则排序后所得的目标规则队列,为目标规则分配不同的执行优先级,按顺序依次针对目标源数据执行规则,可以适应多种不同的应用场景。
在一种可能的实施方式中,本公开提供的方法还可以包括以下步骤:
若接收到用于请求上报源数据的上报请求,根据区块链网络的智能合约存储的多种规则,确定与上报请求对应的源数据类型和数据格式;
将与上报请求对应的源数据类型和数据格式发送至上报请求的发送方。
上述步骤在步骤11前执行,若接收到上报请求,说明有设备需要上报源数据到区块链网络,并期望使用区块链网络的智能合约存储的规则,而在区块链网络的智能合约存储的多种规则中,每一种规则对源数据的源数据类型和数据格式都有严格的要求,源数据类型和数据格式不匹配规则就无法执行,并且,如前文所述,源数据类型和源数据的数据格式是基于业务需求而自定义的,可能并不被上报请求的发送方知晓。因此,需要确定与上报请求对应的源数据类型和数据格式。
在一种可能的实施方式中,可以将区块链网络的智能合约存储的所有规则各自对应的源数据类型和源数据的数据格式确定为与上报请求对应的源数据类型和数据格式。这样,在后续能为上报请求的发送方返回更加全面的参考信息。
在另一种可能的实施方式中,上报请求可以携带有用于指示源数据类型的标识信息(例如,关键字)。因此,在这一实施方式中,根据区块链网络的智能合约存储的多种规则,确定与上报请求对应的源数据类型和数据格式,可以包括以下步骤:
确定区块链网络的智能合约存储的多种规则中,源数据类型与标识信息所指示的源数据类型一致的备选规则;
将备选规则对应的源数据类型和数据格式确定为与上报请求对应的源数据类型和数据格式。
这样,在后续能为上报请求的发送方返回更加准确的参考信息,针对性更强。
在确定与上报请求对应的源数据类型和数据格式之后,就可以将与上报请求对应的源数据类型和数据格式发送至上报请求的发送方。基于这一信息,上报请求的发送方能够知晓上传目标源数据的正确方式,从而向区块链节点发送正确的目标源数据,以顺利使用区块链网络中的规则。
图4是根据本公开的一种实施方式提供的基于智能合约的数据处理装置的框图,应用于区块链网络中的区块链节点。该装置40可以包括:
接收模块41,用于接收待处理的目标源数据;
获取模块42,用于从所述区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,其中,与所述目标源数据匹配的目标规则能够处理所述目标源数据;
规则执行模块43,用于针对所述目标源数据执行所述目标规则。
可选地,每一种所述规则对应有源数据类型;
所述获取模块42用于将所述区块链网络的智能合约存储的多种规则中、源数据类型与所述目标源数据对应的源数据类型一致的规则确定为所述目标规则。
可选地,所述目标规则为多个;
所述规则执行模块43包括:
第一确定子模块,用于根据所述目标规则,确定目标规则队列:
执行子模块,用于针对所述目标源数据,按照所述多个目标规则在所述目标规则队列中的先后顺序依次执行所述多个目标规则。
可选地,所述装置40通过如下方式中的任意一者确定所述目标规则队列:
根据目标规则的生成时间确定所述目标规则队列,其中,生成时间越晚的目标规则在所述目标规则队列中越靠前;
根据目标规则的预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前;
根据目标规则的生成时间和预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前,以及,对应于相同预定义权重的目标规则按照生成时间由晚到早的顺序在所述目标规则队列中由先到后排列。
可选地,所述装置40还包括:
确定模块,用于若接收到用于请求上报源数据的上报请求,根据所述区块链网络的智能合约存储的多种规则,确定与所述上报请求对应的源数据类型和数据格式,其中,所述数据格式用于指示源数据的构成方式;
发送模块,用于将与所述上报请求对应的源数据类型和数据格式发送至所述上报请求的发送方。
可选地,所述上报请求携带有用于指示源数据类型的标识信息;
所述确定模块包括:
第二确定子模块,用于确定所述区块链网络的智能合约存储的多种规则中,源数据类型与所述标识信息所指示的源数据类型一致的备选规则;
第三确定子模块,用于将所述备选规则对应的源数据类型和数据格式确定为与所述上报请求对应的源数据类型和数据格式。
可选地,所述区块链网络的智能合约存储的规则通过所述区块链网络中的规则引擎创建。
可选地,所述规则引擎包括规则引擎基础功能UI模块和规则引擎语法转换模块,所述规则引擎基础功能UI模块用于为用户提供配置规则的可视化组件及规则参数的输入接口,所述规则引擎语法转换模块用于将用户通过所述规则引擎基础功能UI模块输入的内容转换为符合所述区块链网络的智能合约语法规则的代码,以创建所述规则;
和/或,所述规则引擎包括规则引擎API,所述规则引擎API封装有用于配置规则的方法,且所述规则引擎API用于根据用户针对所述规则引擎API的输入内容创建所述规则。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开实施例提供的基于智能合约的数据处理方法的步骤。
本公开实施例还提供一种区块链节点,该区块链节点包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现本公开实施例提供的基于智能合约的数据处理方法的步骤。
图5是根据一示例性实施例示出的一种区块链节点的框图。如图5所示,该区块链节点700可以包括:处理器701,存储器702。该区块链节点700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。
其中,处理器701用于控制该区块链节点700的整体操作,以完成上述的基于智能合约的数据处理方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该区块链节点700的操作,这些数据例如可以包括用于在该区块链节点700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该区块链节点700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,区块链节点700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的基于智能合约的数据处理方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的基于智能合约的数据处理方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由区块链节点700的处理器701执行以完成上述的基于智能合约的数据处理方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

Claims (9)

1.一种基于智能合约的数据处理方法,其特征在于,应用于区块链网络中的区块链节点,所述方法包括:
若接收到用于请求向区块链网络上报源数据的上报请求,根据所述区块链网络的智能合约存储的多种规则,确定与所述上报请求对应的源数据类型和数据格式,其中,所述数据格式用于指示源数据的构成方式,所述区块链网络的智能合约存储的规则通过所述区块链网络中的规则引擎创建,规则引擎部署于区块链网络中的任意一个或几个区块链节点,每一规则引擎均可实现规则的创建与存储;
将与所述上报请求对应的源数据类型和数据格式发送至所述上报请求的发送方;
接收待处理的目标源数据;
从所述区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,其中,与所述目标源数据匹配的目标规则能够处理所述目标源数据;
针对所述目标源数据执行所述目标规则。
2.根据权利要求1所述的方法,其特征在于,每一种所述规则对应有源数据类型;
所述从区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,包括:
将所述区块链网络的智能合约存储的多种规则中、源数据类型与所述目标源数据对应的源数据类型一致的规则确定为所述目标规则。
3.根据权利要求1所述的方法,其特征在于,所述目标规则为多个;
所述针对所述目标源数据执行所述目标规则,包括:
根据所述目标规则,确定目标规则队列:
针对所述目标源数据,按照所述多个目标规则在所述目标规则队列中的先后顺序依次执行所述多个目标规则。
4.根据权利要求3所述的方法,其特征在于,通过如下方式中的任意一者确定所述目标规则队列:
根据目标规则的生成时间确定所述目标规则队列,其中,生成时间越晚的目标规则在所述目标规则队列中越靠前;
根据目标规则的预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前;
根据目标规则的生成时间和预定义权重确定所述目标规则队列,其中,预定义权重越高的目标规则在所述目标规则队列中越靠前,以及,对应于相同预定义权重的目标规则按照生成时间由晚到早的顺序在所述目标规则队列中由先到后排列。
5.根据权利要求1所述的方法,其特征在于,所述上报请求携带有用于指示源数据类型的标识信息;
所述根据所述区块链网络的智能合约存储的多种规则,确定与所述上报请求对应的源数据类型和数据格式,包括:
确定所述区块链网络的智能合约存储的多种规则中,源数据类型与所述标识信息所指示的源数据类型一致的备选规则;
将所述备选规则对应的源数据类型和数据格式确定为与所述上报请求对应的源数据类型和数据格式。
6.根据权利要求1所述的方法,其特征在于,所述规则引擎包括规则引擎基础功能UI模块和规则引擎语法转换模块,所述规则引擎基础功能UI模块用于为用户提供配置规则的可视化组件及规则参数的输入接口,所述规则引擎语法转换模块用于将用户通过所述规则引擎基础功能UI模块输入的内容转换为符合所述区块链网络的智能合约语法规则的代码,以创建所述规则;
和/或,所述规则引擎包括规则引擎API,所述规则引擎API封装有用于配置规则的方法,且所述规则引擎API用于根据用户针对所述规则引擎API的输入内容创建所述规则。
7.一种基于智能合约的数据处理装置,其特征在于,应用于区块链网络中的区块链节点,所述装置包括:
确定模块,用于若接收到用于请求向区块链网络上报源数据的上报请求,根据所述区块链网络的智能合约存储的多种规则,确定与所述上报请求对应的源数据类型和数据格式,其中,所述数据格式用于指示源数据的构成方式,所述区块链网络的智能合约存储的规则通过所述区块链网络中的规则引擎创建,规则引擎部署于区块链网络中的任意一个或几个区块链节点,每一规则引擎均可实现规则的创建与存储;
发送模块,用于将与所述上报请求对应的源数据类型和数据格式发送至所述上报请求的发送方;
接收模块,用于接收待处理的目标源数据;
获取模块,用于从所述区块链网络的智能合约存储的多种规则中获取与所述目标源数据匹配的目标规则,其中,与所述目标源数据匹配的目标规则能够处理所述目标源数据;
规则执行模块,用于针对所述目标源数据执行所述目标规则。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6中任一项所述方法的步骤。
9.一种区块链节点,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-6中任一项所述方法的步骤。
CN201911359335.1A 2019-12-25 2019-12-25 数据处理方法、装置、存储介质及区块链节点 Active CN111192143B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911359335.1A CN111192143B (zh) 2019-12-25 2019-12-25 数据处理方法、装置、存储介质及区块链节点

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911359335.1A CN111192143B (zh) 2019-12-25 2019-12-25 数据处理方法、装置、存储介质及区块链节点

Publications (2)

Publication Number Publication Date
CN111192143A CN111192143A (zh) 2020-05-22
CN111192143B true CN111192143B (zh) 2023-07-18

Family

ID=70710549

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911359335.1A Active CN111192143B (zh) 2019-12-25 2019-12-25 数据处理方法、装置、存储介质及区块链节点

Country Status (1)

Country Link
CN (1) CN111192143B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112698971B (zh) * 2020-12-30 2023-08-18 平安科技(深圳)有限公司 基于规则引擎的参数转换方法、装置、设备及介质
CN112734586A (zh) * 2021-01-27 2021-04-30 国网信息通信产业集团有限公司 基于区块链的数据处理方法及系统
CN113259378B (zh) * 2021-06-11 2021-10-12 北京百度网讯科技有限公司 区块链系统的运行方法、装置、设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103491135A (zh) * 2013-09-02 2014-01-01 用友软件股份有限公司 自匹配数据格式的装置和方法
CN108345685A (zh) * 2018-03-07 2018-07-31 物数(上海)信息科技有限公司 区块链下的多粒度数据处理方法、系统、设备及存储介质
CN109325870A (zh) * 2018-10-10 2019-02-12 上海保险交易所股份有限公司 共享隐私数据的方法和系统
CN110334148A (zh) * 2019-05-23 2019-10-15 深圳壹账通智能科技有限公司 企业资源计划系统中数据写入区块链网络的方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8650170B2 (en) * 2011-06-22 2014-02-11 Verisign, Inc. Systems and methods for inter-object pattern matching
CN106294530B (zh) * 2015-06-29 2019-09-13 阿里巴巴集团控股有限公司 规则匹配的方法和系统
US10360191B2 (en) * 2016-10-07 2019-07-23 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
CN107426170B (zh) * 2017-05-24 2019-08-09 阿里巴巴集团控股有限公司 一种基于区块链的数据处理方法及设备
CN109274735B (zh) * 2018-09-11 2021-09-14 腾讯科技(深圳)有限公司 一种对等网络连接方法及相关设备
CN109871408B (zh) * 2019-03-05 2023-07-14 深圳市迅雷网络技术有限公司 一种多类型数据库适配方法、装置、电子设备及存储介质
CN110188159B (zh) * 2019-05-27 2023-05-12 深圳前海微众银行股份有限公司 征信数据接入方法、装置、设备及计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103491135A (zh) * 2013-09-02 2014-01-01 用友软件股份有限公司 自匹配数据格式的装置和方法
CN108345685A (zh) * 2018-03-07 2018-07-31 物数(上海)信息科技有限公司 区块链下的多粒度数据处理方法、系统、设备及存储介质
CN109325870A (zh) * 2018-10-10 2019-02-12 上海保险交易所股份有限公司 共享隐私数据的方法和系统
CN110334148A (zh) * 2019-05-23 2019-10-15 深圳壹账通智能科技有限公司 企业资源计划系统中数据写入区块链网络的方法及装置

Also Published As

Publication number Publication date
CN111192143A (zh) 2020-05-22

Similar Documents

Publication Publication Date Title
CN111192143B (zh) 数据处理方法、装置、存储介质及区块链节点
CN110532020B (zh) 一种微服务编排的数据处理方法、装置及系统
CN109845303B (zh) 网络切片的管理方法及管理单元
KR102304698B1 (ko) 자동 장치 프로그램 생성을 위한 방법 및 장치
KR102622652B1 (ko) 컨트롤러 기반 디바이스들의 그룹에 대한 자동 소프트웨어 개발을 위한 방법 및 장치
CN111930486B (zh) 任务选取数据处理方法、装置、设备及存储介质
US20190181901A1 (en) Local profile assistant and application programming interface
CN110896355A (zh) 一种网络切片的选择方法及装置
CN111447143B (zh) 业务服务数据传输方法、装置、计算机设备和存储介质
CN109802850B (zh) 通信方法和通信装置
CN110286939A (zh) 软件开发工具包的开发方法、装置、设备及存储介质
CN111061678A (zh) 业务数据处理方法、装置、计算机设备和存储介质
CN113168333B (zh) 受协调设备环境的工作流配置
CN113111107A (zh) 一种数据综合接入系统及方法
CN107689984B (zh) 消息推送方法、装置、计算机设备和存储介质
CN115794106A (zh) 一种轨道交通二进制协议数据配置式解析的方法及系统
CN113296987B (zh) 调用模块的接口调用方法、装置、计算机设备及存储介质
CN110958666A (zh) 基于强化学习的网络切片资源映射方法
US20200092126A1 (en) Building automation system providing for integration of subsystems
CN112199186B (zh) 基于智能合约的数据处理方法、装置、设备及存储介质
CN113439418A (zh) 更改资源状态的方法、系统、终端及存储介质
CN115333943A (zh) 确定性网络资源配置系统、方法、设备及存储介质
US11843678B2 (en) Information processing system, method, and program
CN112865999A (zh) 信息处理方法及相关设备
CN117376300B (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
TA01 Transfer of patent application right

Effective date of registration: 20210308

Address after: 201111 2nd floor, building 2, no.1508, Kunyang Road, Minhang District, Shanghai

Applicant after: Dalu Robot Co.,Ltd.

Address before: No.3, 7th floor, unit 1, building 5, No.399, Fucheng Avenue West, Chengdu, Sichuan 610094

Applicant before: CLOUDMINDS (CHENGDU) TECHNOLOGIES Co.,Ltd.

TA01 Transfer of patent application right
CB02 Change of applicant information

Address after: 201111 Building 8, No. 207, Zhongqing Road, Minhang District, Shanghai

Applicant after: Dayu robot Co.,Ltd.

Address before: 201111 2nd floor, building 2, no.1508, Kunyang Road, Minhang District, Shanghai

Applicant before: Dalu Robot Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant