基于声明式和分布式账本的数据处理方法、装置及电子装置与流程

文档序号:32406898发布日期:2022-12-02 20:40阅读:48来源:国知局
基于声明式和分布式账本的数据处理方法、装置及电子装置与流程

1.本技术涉及分布式一致性处理领域,具体而言,涉及一种基于声明式和分布式账本的数据处理方法、装置及电子装置。


背景技术:

2.分布式一致性网络体现在账本一致性,账本即共识数据,共识数据是通过共识算法,解决所谓去中心化的数据信任问题。分布式一致性处理的前提是,需要将上层业务逻辑通过编程方式,以数据的形式交由分布式一致性网络进行处理。其中,编程采用指令式编程(imperative programming):是一种描述电脑所需作出的行为的编程典范。命令“机器”如何去做事情(how),更强调流程及步骤,强调操作细节。
3.但是指令式编程的编写按预期方式准确执行的指令更困难,同时程序的任何部分改变状态的能力使得很难推断程序的执行,开发效率低,易读性差;由于受限于共识处理层的数据架构设计,难以实现不同层次解耦。
4.针对相关技术中开发效率低,易读性差,且难以实现不同层次解耦的问题,目前尚未提出有效的解决方案。


技术实现要素:

5.本技术的主要目的在于提供一种基于声明式和分布式账本的数据处理方法、装置及电子装置,以解决开发效率低,易读性差,且难以实现不同层次解耦的问题。
6.为了实现上述目的,根据本技术的一个方面,提供了一种基于声明式和分布式账本的数据处理方法。
7.根据本技术的基于声明式和分布式账本的数据处理方法包括:声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句;引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行;事务执行器先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理。
8.进一步的,事务执行器先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理之后还包括:声明式编程模型按照预设规范将上层业务待查询业务逻辑转化为第二声明式语句;引擎服务先调用分析解释器分析所述第二声明式语句,再调用响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行;事务查询器根据执行结果在分布式一致性网络中确定结果值和状态值,并返回给上层业务。
9.进一步的,声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句之后,引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行之前还包括:连接器将所述第一声明式语句传入已配置的引擎服务中。
10.进一步的,声明式编程模型按照预设规范将上层业务待查询业务逻辑转化为第二声明式语句之后,引擎服务先调用分析解释器分析所述第二声明式语句,再调用响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行之前还包括:连接器将所述第二声明式语句传入已配置的引擎服务中。
11.进一步的,所述执行控制器通过接收用户的第一配置内容生成执行条件。
12.进一步的,所述响应控制器通过接收用户的第二配置内容生成响应规则。
13.进一步的,所述事务处理器支持同时配置多个分布式一致性网络。
14.为了实现上述目的,根据本技术的另一方面,提供了一种基于声明式和分布式账本的数据处理装置。
15.根据本技术的基于声明式和分布式账本的数据处理装置包括:声明式编程模型,用于按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句;引擎服务,用于先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行;事务执行器,用于先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理。
16.进一步的,声明式编程模型,还用于按照预设规范将上层业务待查询业务逻辑转化为第二声明式语句;引擎服务,还用于先调用分析解释器分析所述第二声明式语句,再调用响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行;还包括:事务查询器,事务查询器,用于根据执行结果在分布式一致性网络中确定结果值和状态值,并返回给上层业务。
17.为了实现上述目的,根据本技术的另一方面,提供了一种电子装置。
18.根据本技术的电子装置包括:存储器和处理器,所述存储器中存储有计算机程序,其中,所述处理器被设置为运行所述计算机程序以执行所述的基于声明式和分布式账本的数据处理方法。
19.在本技术实施例中,采用基于声明式和分布式账本进行数据处理的方式,通过声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句;引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行;事务执行器先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理;达到了使用声明式语句替代指令式编程进行数据共识,且将数据共识过程中的各模块相互独立的目的,从而实现了提升开发效率,增强易读性,且实现引擎服务与分布式一致性网络之间解耦的技术效果,进而解决了开发效率低,易读性差,且难以实现不同层次解耦的技术问题。
附图说明
20.构成本技术的一部分的附图用来提供对本技术的进一步理解,使得本技术的其它特征、目的和优点变得更明显。本技术的示意性实施例附图及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
21.图1是根据本技术一优选实施例的基于声明式和分布式账本的数据处理方法的流程示意图;
22.图2是根据本技术另一优选实施例的基于声明式和分布式账本的数据处理方法的
流程示意图;
23.图3是根据本技术一优选实施例的基于声明式和分布式账本的数据处理装置的结构示意图;
24.图4是根据本技术另一优选实施例的基于声明式和分布式账本的数据处理装置的结构示意图;
25.图5是根据本技术一优选实施例的基于声明式和分布式账本的数据处理方法的工作框图;
26.图6是根据本技术另一优选实施例的基于声明式和分布式账本的数据处理方法的工作框图。
具体实施方式
27.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
28.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
29.在本技术中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本发明及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。
30.并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本发明中的具体含义。
31.此外,术语“安装”、“设置”、“设有”、“连接”、“相连”、“套接”应做广义理解。例如,可以是固定连接,可拆卸连接,或整体式构造;可以是机械连接,或电连接;可以是直接相连,或者是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
32.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
33.根据本发明实施例,提供了一种基于声明式和分布式账本的数据处理方法,如图1、5、6所示,该方法包括如下的步骤s101至步骤s103:
34.步骤s101、声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句;
35.通过将上层业务待共识的业务逻辑,参照声明式编程模型,转化为第一声明式语句。转化得到的声明式语句具有语言易于理解,也能提升开发效率和易读性,而且通过通用化的声明式共识规范,支持下层平台的灵活切换。
36.本实施例中,可以是通过人员对上层业务的界面操作,将上层业务待共识业务逻辑对接到声明式编程模型中进行转化;也可以是通过在上层业务中配置自动检测程序,当检测到有待共识的业务逻辑时,自动将待共识的业务逻辑对接到声明式编程模型中进行转化。
37.需要了解的是,当上层业务中有多个待共识的业务逻辑时,可以采用随机算法将多个待共识的业务逻辑置于消息队列,逐个对接到声明式编程模型中进行转化。
38.根据本发明实施例,优选的,声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句之后,引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行之前还包括:
39.连接器将所述第一声明式语句传入已配置的引擎服务中。
40.采用连接器连接声明式编程模型和引擎服务,实现两者之间的对接,从而实现第一声明式语句的顺利对接。
41.步骤s102、引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行;
42.引擎服务包括分析解释器、执行控制器等;首先引擎服务先调用分析解释器,通过分析解释器可以按照预设的分析规则分析第一声明式语句;具体的,按照预设的分析规则分析第一声明式语句包括:词法分析、语法分析、语义分析,完成声明式语句的分析和初步校验。
43.分析完成后,引擎服务再调用执行控制器,通过执行控制器进行执行条件校验处理;具体的,分析结束后可以得到一分析结果,执行控制器判断该分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行。
44.本实施例中,优选的,执行控制器通过接收用户的第一配置内容生成执行条件。即人员可以根据实际情况进行灵活配置,例如账户模型和数据结构相关条件配置。如此,满足底层共识模块执行条件的可配置化,根据共识模块(分布式一致性网络)的执行前提条件,灵活配置,快速接入,支持不同的共识算法和数据模型,不会限制下层平台的设计。
45.步骤s103、事务执行器先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理。
46.经过构造的执行树以生成执行计划并执行后得到一执行结果,通过事务执行器根据该执行结果构造分布式一致性网络可接收的事务数据,并通过rpc接口将事务数据写入分布式一致性网络,通过分布式一致性网络进行共识性处理,即通过共识算法解决所谓去中心化的数据信任问题。如此,分布式一致性网络与引擎服务相互独立,实现了两者之间的解耦。
47.本实施例中,优选的,事务处理器支持同时配置多个分布式一致性网络。事务处理器支持同时配置多个共识模块(分布式一致性网络),同时实现相同数据的共识处理。
48.从以上的描述中,可以看出,本发明实现了如下技术效果:
49.在本技术实施例中,采用基于声明式和分布式账本进行数据处理的方式,通过声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句;引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行;事务执行器先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理;达到了使用声明式语句替代指令式编程进行数据共识,且将数据共识过程中的各模块相互独立的目的,从而实现了提升开发效率,增强易读性,且实现引擎服务与分布式一致性网络之间解耦的技术效果,进而解决了开发效率低,易读性差,且难以实现不同层次解耦的技术问题。
50.根据本发明实施例,优选的,如图2、5、6所示所示,事务执行器先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理之后还包括:
51.步骤s201、声明式编程模型按照预设规范将上层业务待查询业务逻辑转化为第二声明式语句;
52.经过以上的处理后会得到一共识处理结果,该结果存储在分布式一致性网络中。
53.通过将上层业务待查询的业务逻辑,参照声明式编程模型,转化为第二声明式语句。转化得到的声明式语句具有语言易于理解,也能提升开发效率和易读性,而且通过通用化的声明式共识规范,支持下层平台的灵活切换。
54.本实施例中,可以是通过人员对上层业务的界面操作,将上层业务待共识业务逻辑对接到声明式编程模型中进行转化。
55.声明式编程模型按照预设规范将上层业务待查询业务逻辑转化为第二声明式语句之后,引擎服务先调用分析解释器分析所述第二声明式语句,再调用响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行之前还包括:
56.连接器将所述第二声明式语句传入已配置的引擎服务中。
57.采用连接器连接声明式编程模型和引擎服务,实现两者之间的对接,从而实现第二声明式语句的顺利对接。
58.步骤s202、引擎服务先调用分析解释器分析所述第二声明式语句,再调用响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行;
59.引擎服务包括分析解释器、执行控制器等;首先引擎服务先调用分析解释器,通过分析解释器可以按照预设的分析规则分析第二声明式语句;具体的,按照预设的分析规则分析第二声明式语句包括:词法分析、语法分析、语义分析,完成声明式语句的分析和初步校验。
60.分析完成后,引擎服务再调用响应控制器,通过响应控制器进行响应结果处理;具体的,分析结束后可以得到一分析结果,响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行。
61.本实施例中,优选的,响应控制器通过接收用户的第二配置内容生成响应规则。即人员可以根据实际情况进行灵活配置,根据共识模块(分布式一致性网络)的共识数据记录规则,配置解析规则,支持不同的共识算法和数据模型,不会限制下层平台的设计。
62.步骤s203、事务查询器根据执行结果在分布式一致性网络中确定结果值和状态
值,并返回给上层业务。
63.经过构造的执行树以生成执行计划并执行后得到一执行结果,通过事务查询器可以调用数据查询接口,在分布式一致性网络中确定结果值和状态值,然后再调取数据查询接口将结果值和状态值返回给上层业务。如此,实现了根据待查询的业务逻辑从分布式一致性网络中调取相应的共识结果,实现了查询。分布式一致性网络与引擎服务相互独立,实现了两者之间的解耦。
64.需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
65.根据本发明实施例,还提供了一种用于实施上述基于声明式和分布式账本的数据处理方法的装置,如图3、5、6所示,该装置包括:
66.声明式编程模型10,用于按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句;
67.通过将上层业务待共识的业务逻辑,参照声明式编程模型,转化为第一声明式语句。转化得到的声明式语句具有语言易于理解,也能提升开发效率和易读性,而且通过通用化的声明式共识规范,支持下层平台的灵活切换。
68.本实施例中,可以是通过人员对上层业务的界面操作,将上层业务待共识业务逻辑对接到声明式编程模型中进行转化;也可以是通过在上层业务中配置自动检测程序,当检测到有待共识的业务逻辑时,自动将待共识的业务逻辑对接到声明式编程模型中进行转化。
69.需要了解的是,当上层业务中有多个待共识的业务逻辑时,可以采用随机算法将多个待共识的业务逻辑置于消息队列,逐个对接到声明式编程模型中进行转化。
70.根据本发明实施例,优选的,声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句之后,引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行之前还包括:
71.连接器将所述第一声明式语句传入已配置的引擎服务中。
72.采用连接器连接声明式编程模型和引擎服务,实现两者之间的对接,从而实现第一声明式语句的顺利对接。
73.引擎服务11,用于先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行;
74.引擎服务包括分析解释器、执行控制器等;首先引擎服务先调用分析解释器,通过分析解释器可以按照预设的分析规则分析第一声明式语句;具体的,按照预设的分析规则分析第一声明式语句包括:词法分析、语法分析、语义分析,完成声明式语句的分析和初步校验。
75.分析完成后,引擎服务再调用执行控制器,通过执行控制器进行执行条件校验处理;具体的,分析结束后可以得到一分析结果,执行控制器判断该分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行。
76.本实施例中,优选的,执行控制器通过接收用户的第一配置内容生成执行条件。即
人员可以根据实际情况进行灵活配置,例如账户模型和数据结构相关条件配置。如此,满足底层共识模块执行条件的可配置化,根据共识模块(分布式一致性网络)的执行前提条件,灵活配置,快速接入,支持不同的共识算法和数据模型,不会限制下层平台的设计。
77.事务执行器12,用于先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理。
78.经过构造的执行树以生成执行计划并执行后得到一执行结果,通过事务执行器根据该执行结果构造分布式一致性网络可接收的事务数据,并通过rpc接口将事务数据写入分布式一致性网络,通过分布式一致性网络进行共识性处理,即通过共识算法解决所谓去中心化的数据信任问题。如此,分布式一致性网络与引擎服务相互独立,实现了两者之间的解耦。
79.本实施例中,优选的,事务处理器支持同时配置多个分布式一致性网络。事务处理器支持同时配置多个共识模块(分布式一致性网络),同时实现相同数据的共识处理。
80.从以上的描述中,可以看出,本发明实现了如下技术效果:
81.在本技术实施例中,采用基于声明式和分布式账本进行数据处理的方式,通过声明式编程模型按照预设规范将上层业务待共识业务逻辑转化为第一声明式语句;引擎服务先调用分析解释器分析所述第一声明式语句,再调用执行控制器判断分析结果是否满足预置执行条件,若满足,则构造执行树以生成执行计划并执行;事务执行器先将执行结果转换成事务数据,再将所述事务数据写入分布式一致性网络中进行共识处理;达到了使用声明式语句替代指令式编程进行数据共识,且将数据共识过程中的各模块相互独立的目的,从而实现了提升开发效率,增强易读性,且实现引擎服务与分布式一致性网络之间解耦的技术效果,进而解决了开发效率低,易读性差,且难以实现不同层次解耦的技术问题。
82.声明式编程模型10,还用于按照预设规范将上层业务待查询业务逻辑转化为第二声明式语句;
83.经过以上的处理后会得到一共识处理结果,该结果存储在分布式一致性网络中。
84.通过将上层业务待查询的业务逻辑,参照声明式编程模型,转化为第二声明式语句。转化得到的声明式语句具有语言易于理解,也能提升开发效率和易读性,而且通过通用化的声明式共识规范,支持下层平台的灵活切换。
85.本实施例中,可以是通过人员对上层业务的界面操作,将上层业务待共识业务逻辑对接到声明式编程模型中进行转化。
86.声明式编程模型按照预设规范将上层业务待查询业务逻辑转化为第二声明式语句之后,引擎服务先调用分析解释器分析所述第二声明式语句,再调用响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行之前还包括:
87.连接器将所述第二声明式语句传入已配置的引擎服务中。
88.采用连接器连接声明式编程模型和引擎服务,实现两者之间的对接,从而实现第二声明式语句的顺利对接。
89.引擎服务11,还用于先调用分析解释器分析所述第二声明式语句,再调用响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行;
90.引擎服务包括分析解释器、执行控制器等;首先引擎服务先调用分析解释器,通过分析解释器可以按照预设的分析规则分析第二声明式语句;具体的,按照预设的分析规则分析第二声明式语句包括:词法分析、语法分析、语义分析,完成声明式语句的分析和初步校验。
91.分析完成后,引擎服务再调用响应控制器,通过响应控制器进行响应结果处理;具体的,分析结束后可以得到一分析结果,响应控制器按照预置响应规则进行分析结果的响应,同时根据响应结果构造执行树以生成执行计划并执行。
92.本实施例中,优选的,响应控制器通过接收用户的第二配置内容生成响应规则。即人员可以根据实际情况进行灵活配置,根据共识模块(分布式一致性网络)的共识数据记录规则,配置解析规则,支持不同的共识算法和数据模型,不会限制下层平台的设计。
93.还包括:事务查询器22,
94.事务查询器22,用于根据执行结果在分布式一致性网络中确定结果值和状态值,并返回给上层业务。
95.经过构造的执行树以生成执行计划并执行后得到一执行结果,通过事务查询器可以调用数据查询接口,在分布式一致性网络中确定结果值和状态值,然后再调取数据查询接口将结果值和状态值返回给上层业务。如此,实现了根据待查询的业务逻辑从分布式一致性网络中调取相应的共识结果,实现了查询。分布式一致性网络与引擎服务相互独立,实现了两者之间的解耦。
96.显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
97.以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1