一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据的检索处理方法、装置和电子设备与流程

2022-02-20 00:59:43 来源:中国专利 TAG:


1.本技术属于数据检索技术领域,尤其涉及一种数据的检索处理方法、装置和电子设备。


背景技术:

2.低代码开发平台(low-code development platform,lcdp)是无需编码(0代码)或通过少量编码就可以快速生成应用程序的开发平台,其强大之处在于,允许终端用户使用易于理解的可视化工具开发自己的应用程序,而不是传统的编写代码方式。
3.申请人研究发现,低代码平台应用在检索大规模数据时(如,检索上亿条数据),性能表现极差,极大影响了用户体验。


技术实现要素:

4.为此,本技术公开如下技术方案:
5.一种数据的检索处理方法,所述方法包括:
6.获取对应用表单的数据检索请求;所述数据检索请求中包括用于作为检索依据的目标属性;
7.将所述目标属性与预聚合缓存区中检索目录中的表单属性进行匹配,得到匹配结果;其中,所述预聚合缓存区中存放有预先构建的预聚合视图,所述预聚合视图包括预先生成的检索目录集和检索目录集中的各检索目录分别对应的第一检索结果,所述检索目录包括:包含具有索引特征的表单属性的索引信息;
8.基于所述匹配结果,生成所述数据检索请求的第二检索结果。
9.可选的,所述基于所述匹配结果,生成所述数据检索请求的第二检索结果,包括:
10.如果匹配成功,基于所述预聚合缓存区中与所述目标属性匹配的表单属性所属的检索目录对应的第一检索结果,生成所述数据检索请求的第二检索结果;
11.如果匹配失败,依据所述目标属性,对应用表单的表单数据的数据源进行检索,以生成所述数据检索请求的第二检索结果。
12.可选的,在应用表单发布时,构建并在所述预聚合缓存区中存放所述预聚合视图;
13.检索目录中的表单属性为:在应用表单发布时,通过识别应用表单的具备索引特征的属性并对具备索引特征的属性进行分类所得的相应类别表单属性;
14.检索目录对应的第一检索结果包括:分别基于同一检索目录中的不同表单属性及不同表单属性在应用表单的表单数据的数据源中对应的不同检索路径,对所述数据源进行检索并对各检索的检索结果进行聚合所得的结果;检索目录中的索引信息包括:同一类别的具有索引特征的各表单属性和所述具有索引特征的各表单属性分别对应的数据检索路径。
15.可选的,所述基于所述预聚合缓存区中与所述目标属性匹配的表单属性所属的检索目录对应的第一检索结果,生成所述数据检索请求的第二检索结果,包括:
16.将所述第一检索结果作为所述第二检索结果,或者,依据所述目标属性对所述第一检索结果进行检索,以生成所述数据检索请求的第二检索结果。
17.可选的,所述预聚合视图中包括的与检索目录对应的第一检索结果为:在应用表单的发布时,对应用表单的表单数据的数据源进行检索所得的与应用表单的具备索引特征的表单属性和所述具备索引特征的表单属性对应的目标数据范围匹配的检索结果;
18.其中,所述目标数据范围为应用表单发布时所述具备索引特征的表单属性静态要求的表单数据范围;
19.所述将所述目标属性与预聚合缓存区中检索目录中的表单属性进行匹配,包括:
20.将所述目标属性及所述目标属性对应的当前数据范围分别与预聚合缓存区中检索目录中的表单属性及表单属性对应的所述目标数据范围进行匹配。
21.可选的,检索目录对应的第一检索结果包括:对所述数据源中的单一数据文件进行检索所得的结果;
22.在构建所述预聚合视图时还包括:
23.确定所述应用表单的表单属性中具有索引特征且能用于对所述数据源中的多个数据文件进行联合检索的表单属性,得到联合检索表单属性;
24.基于确定出的联合检索表单属性,根据应用表单的数据源的数据定义语言和/或数据操纵语言的特征,对所述数据源的多个数据文件进行联合检索,得到联合检索结果;
25.向所述预聚合视图中增添联合检索目录,并在所述预聚合视图中为所述联合检索目录记录对应的联合检索结果;
26.其中,所述联合检索目录包括:包含所述联合检索表单属性的索引信息。
27.可选的,所述方法,还包括:
28.通过预定的数据过期策略删除所述预聚合缓存区中的过期数据;
29.和/或,通过预定的数据更新策略,从应用表单的表单数据的数据源更新数据至预聚合缓存区。
30.可选的,应用表单的表单属性包括应用表单的各表单元素绑定的业务数据参数;
31.通过将业务数据参数设置为动态数据接口的接口参数,并为表单元素配置对应的动态数据接口,实现表单元素与对应的业务数据参数的绑定。
32.一种数据的检索处理装置,所述装置包括:
33.获取模块,用于获取对应用表单的数据检索请求;所述数据检索请求中包括用于作为检索依据的目标属性;
34.匹配模块,用于将所述目标属性与预聚合缓存区中检索目录中的表单属性进行匹配;其中,所述预聚合缓存区中存放有预先构建的预聚合视图,所述预聚合视图包括预先生成的检索目录集和检索目录集中的各检索目录分别对应的第一检索结果,所述检索目录包括:包含具有索引特征的表单属性的索引信息;
35.生成模块,用于基于所述匹配结果,生成所述数据检索请求的第二检索结果。
36.一种电子设备,包括:
37.存储器,用于存放计算机指令集;
38.处理器,用于通过执行存储器上存放的指令集,实现如上文任一项所述的数据的检索处理方法。
39.由以上方案可知,本技术公开的数据的检索处理方法、装置和电子设备,预先构建了预聚合视图,并将其存放于预聚合缓存区中,预聚合视图包括检索目录集和各检索目录分别对应的第一检索结果,检索目录进一步包括:包含具有索引特征的表单属性的索引信息;在此基础上,在获取对应用表单的数据检索请求后,将所获取请求中携带的目标属性与预聚合缓存区中检索目录中的表单属性进行匹配,最终基于匹配结果生成数据检索请求的第二检索结果。本技术方案,通过预先构建预聚合视图,并将预聚合缓存区中存放的该预聚合视图作为检索依据,可在预聚合视图中存在所请求的表单数据的情况下,避免对表单数据的数据源的检索,从而实现了自动根据表单属性进行表单数据的快速检索,有效改善了低代码平台应用在检索大规模数据时的检索性能。
附图说明
40.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
41.图1是本技术提供的根据表单属性实现表单数据快速检索的处理逻辑图;
42.图2是本技术提供的通过多表联合检索优化预聚合视图的实现流程图;
43.图3是本技术提供的数据的检索处理方法的一种流程示意图;
44.图4是本技术提供的数据的检索处理方法的另一种流程示意图;
45.图5是本技术提供的数据的检索处理装置的结构示意图;
46.图6是本技术提供的电子设备的结构示意图。
具体实施方式
47.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
48.本技术公开一种数据的检索处理方法、装置和电子设备,该方法及装置可应用于服务端中用来提供表单数据检索服务的服务器,通过自动根据应用表单的表单属性实现表单数据的快速检索,来克服低代码平台应用在检索大规模数据(如,检索上亿条数据)时性能表现极差的问题。
49.可选的,本技术实施例中,应用表单为基于低代码开发平台构建的应用表单,低代码开发平台可通过提供可视化编程组件以及软件全生命周期管理能力,降低开发者的开发代码量、开发难度。
50.应用表单用于实现用户端与服务端之间信息的交互传递,通过应用表单可实现从用户端收集信息如用户检索请求、用户订单等,然后将收集的信息经过服务端处理后向用户端作出反馈。应用表单包括但不限于文本域、按钮、复选框、下拉框、列表/下拉菜单等类型的基础表单元素,以及基于基础表单元素构建的更复杂的表单对象,如基于输入框、下拉框构建的带翻页、带查询功能的员工信息列表组件等。
51.本技术实施例公开的检索处理方法、装置和电子设备,以预先构建预聚合视图并在预聚合缓存区中存放预聚合视图,来支持自动根据应用表单的表单属性进行表单数据的快速检索,以下首先说明构建预聚合视图并将其存放至预聚合缓存区的实现过程。
52.构建预聚合视图并将其存放至预聚合缓存区的实现过程可通过一预先构建的预聚合引擎来执行,结合参见图1,该过程具体包括:
53.11)用户在低代码开发平台上完成应用表单的交互设计,并绑定动态数据接口(application programming interface,api),通过该过程确定表单元素、动态接口api等的属性配置。
54.具体的,用户可在低代码开发平台上通过拖拽、堆叠、组合等操作方式在页面进行表单元素的布局及关联设计,并为设计的表单元素进行属性配置,以及需关联的动态数据接口与接口属性的配置。
55.例如,为某表单元素配置长度、宽度、字体、允许输入的语言(中文/英文)这些属性,并配置需要对接的动态数据接口(如动态数据列表、动态搜索框、数据透视图等),以及需对接的动态数据接口的地址、参数等属性信息。
56.同时,通过将业务数据参数(如,员工基本信息、公司各组织部门的部门信息等)设置为动态数据接口的接口参数,并为表单元素配置对应的动态数据接口,实现表单元素与对应的业务数据参数的绑定,并将通过接口参数绑定的业务数据参数(如,员工的姓名、性别、职务等参数)作为表单属性。
57.也即,用户通过在低代码开发平台上进行应用表单的交互设计,并绑定动态数据接口所确定的表单属性不仅包括表单元素自身基本属性,如长度、宽度、字体、允许输入的语言等,还包括应用表单的各表单元素绑定的业务数据参数,如员工性别、所属组织部门、职务等。
58.12)用户根据自身需求选择合适的数据库引擎,基于选择的数据库引擎执行应用表单所属应用的发布。
59.具体的,在用户基于应用表单的交互设计及动态数据接口绑定,完成低代码平台应用的设计后,可根据自身需求选取clickhouse、hive、spark、postgresql、mysql等数据库引擎,并通过所选取的数据库引擎执行低代码应用的发布处理。
60.13)在低代码应用发布过程中,系统执行对该低代码应用表单属性配置的扫描与筛选过程,并利用分类算法基于扫描与筛选结果创建索引特征模型。
61.在低代码平台应用发布过程中,服务端系统扫描发布的该低代码平台应用的应用表单属性,如扫描应用表单的表单元素的长度、宽度、字体、允许输入的语言、所绑定业务数据对应的员工性别、所属部门、职务等属性。并对扫描所得的各表单属性信息进行筛选,筛选其中具备索引特征的属性,其中,具备索引特征的属性是指能用于对表单数据(即,表单关联的业务数据)进行数据检索的属性,如员工性别、所属部门、职务等,本实施例将这些属性称为具备索引特征的属性。
62.之后,进一步基于预定分类算法按属性间的关联对具备索引特征的属性进行分类,所采用的分类算法可以是但不限于线性回归等分类算法,如,在基于“编程技能”这一属性查询“具备编程技能的员工”、基于“编程技能” “性别男”这一组合属性查询“具备编程技能的男员工”时,两者需查询相同的数据模型(如,表单数据库中的相同数据表),根据这一
关联,基于分类算法将“编程技能”这一属性和“编程技能” “性别男”这一组合属性归为一类等。
63.并基于分类结果创建索引特征模型,创建的索引特征模型包括:同一类别的具有索引特征的各表单属性和具有索引特征的各表单属性在表单数据的数据源中分别对应的数据检索路径。其中,表单数据的数据源如可以是表单数据的数据库,表单属性在表单数据的数据源中对应的数据检索路径,可以包括表单属性所指示的表单数据(如“性别”属性所指示的员工数据)在表单数据库中对应的数据表、数据文件等的检索路径信息。
64.本实施例将每一类别的具有索引特征的各表单属性和具有索引特征的各表单属性分别对应的数据检索路径称为检索目录,各检索目录形成检索目录集。也即,本实施例中,索引特征模型本质为一检索目录集。
65.14)基于低代码平台应用的索引特征模型结合选择的数据库引擎创建预聚合视图并存放至预聚合缓存区。
66.索引特征模型中每一类具备索引特征的属性(即,每一检索目录中的属性)对应一组数据检索路径。
67.在低代码平台应用发布时,本实施例同时基于同一检索目录中不同表单属性及不同表单属性在应用表单的表单数据源中对应的不同检索路径,利用所选择的数据库引擎对应的数据检索实现过程,对表单数据源如表单数据库进行检索,
68.并利用预定归类算法(如决策树)对各检索对应的表单属性及检索结果进行聚合,以创建预聚合视图,其中,创建的预聚合视图包括检索目录集和检索目录集中的各检索目录分别对应的第一检索结果,且检索目录中的各具备检索特征的属性、检索路径及其对应的第一检索结果组织为基于预定归类算法如决策树聚合所得的视图形式。
69.或者,换个角度说,预聚合视图包括预先生成的检索目录集和检索目录集中的各检索目录分别对应的第一检索结果,检索目录集中的检索目录包括:包含具有索引特征的表单属性的索引信息;检索目录中的表单属性具体为:在应用表单发布时,通过识别应用表单的具备索引特征的属性并对具备索引特征的属性进行分类所得的相应类别表单属性;检索目录对应的第一检索结果包括:分别基于同一检索目录中的不同表单属性及不同表单属性在应用表单的表单数据的数据源中对应的不同检索路径,对所述数据源进行检索并对各检索的检索结果进行聚合所得的结果(如,对于“具备编程技能的员工”的检索结果,和“具备编程技能的男员工”的检索结果,将其合并为一个检索结果,即“具备编程技能的员工”对应的检索结果,以节省缓存);检索目录中的索引信息包括:同一类别的具有索引特征的各表单属性和所述具有索引特征的各表单属性分别对应的数据检索路径。
70.在构建完成预聚合视图后,将其存放于预聚合缓存区,以供表单数据检索时使用,加快表单数据检索的过程。
71.进一步,优选的,本技术实施例中,预聚合视图中包括的与检索目录对应的第一检索结果为:在完成应用表单的发布时,对应用表单的表单数据的数据源进行检索所得的与应用表单的具备索引特征的表单属性和该具备索引特征的表单属性对应的目标数据范围匹配的检索结果。该目标数据范围为:应用表单发布时具备索引特征的表单属性静态要求的表单数据范围。通过仅在预聚合缓存区存放与应用表单发布时具备索引特征的表单属性静态要求的表单数据范围匹配的检索结果,实现在加快表单数据检索过程的前提下,尽可
能降低预聚合缓存区中所存放数据的数据量。
72.以下举例说明:
73.假设在根据“员工性别”这一表单属性查询“员工数据”这一表单数据时,存在翻页情况,每一页上限为100条员工数据,则缓存区中仅存放根据表单发布时通过分析能确定出的1-100条数据这一范围的员工数据(即,在低代码应用发布时的初始状态下,应用表单静态要求的数据范围是1-100,用户翻页时进一步将数据范围要求动态变换为101-200),其他页数据则不缓存。
74.通过上述步骤11)-14)的处理过程所构建的预聚合视图中,检索目录对应的第一检索结果具体是对应用表单的数据源(如,应用表单的表单数据库)中单一数据文件(如,单一数据表)进行检索所得的结果。
75.本技术实施例中,可选的,还可以包括以下处理:
76.15)基于对应用表单数据源的多数据文件(如,多个数据表)联合检索优化预聚合视图。
77.其中,在应用发布时,还可以进一步在预聚合引擎通过对应用表单数据源的多表联合检索,并结合应用表单数据源如数据库的ddl(data definition language,数据库模式定义语言)和dml(data manipulation language,数据操纵语言)特征,优化预聚合视图。
78.具体的,参见图2,该优化预聚合视图的过程可进一步实现为:
79.步骤201、确定应用表单的表单属性中具有索引特征且能用于对应用表单的数据源中的多个数据文件进行联合检索的表单属性,得到联合检索表单属性;
80.例如,根据员工所属“组织/部门”这一属性检索查询员工信息时,需要首先根据“组织/部门-员工”数据表查询某部门下有哪些员工(如该组织下各员工的工号),之后再进一步查询员工的基本信息数据表,得到该组织下员工的详细信息,如姓名、年龄、家庭地址、职务等,在该示例中,属性“部门”即可作为联合检索表单属性。
81.步骤202、基于确定出的联合检索表单属性,根据应用表单的数据源的数据定义语言和/或数据操纵语言的特征,对应用表单的数据源的多个数据文件进行联合检索,得到联合检索结果;
82.具体的,可根据应用表单的数据源的ddl和dml特征,创建由组织和员工相关字段组成的用于对组织信息表和员工基本信息表进行联合检索的dml语句,如,根据数据库postgresql的dml特点创建由org和user相关字段组成的用于对组织信息表和员工基本信息表进行联合检索的dml语句:“select a.org_id,a.org_name,u.userid,u.username from org a left join user u where a.org_id=?”,并基于构建的dml语句对应用表单数据库的多个数据表进行联合检索。
83.步骤203、向预聚合视图中增添联合检索目录,并在预聚合视图中为联合检索目录记录对应的联合检索结果。
84.之后,针对联合检索结果,建立对应的联合检索目录,建立的联合检索目录包括:包含该联合检索表单属性的索引信息。例如,针对上述示例,建立org_id字段的索引等,并将建立的联合检索目录与其对应的联合检索结果,关联存放至预聚合缓存区,以实现对预聚合缓存区中预聚合视图的优化,使得预聚合视图中不仅包括在应用发布时,对应用表单数据源中单一数据文件的检索结果及其检索目录,还包括对多数据文件的联合检索结果及
其联合检索目录。
85.基于预聚合缓存区中存放的预聚合视图,参见图3提供的数据的检索处理方法流程图,本技术实施例公开的数据的检索处理方法至少包括如下步骤:
86.步骤301、获取对应用表单的数据检索请求;获取的数据检索请求中包括用于作为检索依据的目标属性。
87.本技术实施例中,根据表单属性实现表单数据的快速检索。
88.在低代码平台应用发布并启动应用实例后,结合参见图1,用户可通过操作应用表单来发起对表单数据的检索/查询请求,发起的数据检索请求中包括用于作为检索依据的目标属性,所包含的目标属性具体可以为待查询应用表单的相关业务数据参数。
89.例如,用户向检索输入框输入目标属性“员工性别”、“员工所属组织/部门”作为检索依据来发起对员工信息的检索等,服务端相应可接收到用户端发起的包含“员工性别”、“员工所属组织/部门”的数据检索请求,并将“员工性别”、“员工所属组织/部门”作为检索依据。
90.步骤302、将数据检索请求中携带的目标属性与预聚合缓存区中检索目录中的表单属性进行匹配,得到匹配结果。
91.其中,预聚合缓存区中缓存有预先构建的预聚合视图,根据上述对预聚合视图的说明,预聚合视图包括预先生成的检索目录集和检索目录集中的各检索目录分别对应的第一检索结果,检索目录集中的每一检索目录包括:包含具有索引特征的表单属性的索引信息。且具体的,预聚合视图中包括在低代码平台应用发布时,通过对表单数据进行单一数据表查询所得的单一数据表检索结果和对多个数据表联合查询所得的联合检索结果,同时包括每种查询结果对应的检索目录。
92.在获得用户端提交的数据检索请求后,本实施例先将数据检索请求中携带的作为检索依据的目标属性(如,员工性别、员工所属的组织部门等)与预聚合缓存区中检索目录中的表单属性进行匹配。
93.进一步,针对预聚合视图中检索目录对应的第一检索结果为在应用表单发布时,对应用表单的表单数据源进行检索所得的与应用表单的具备索引特征的表单属性及其静态要求的表单数据范围匹配的检索结果的情况,则将数据检索请求中携带的目标属性及该目标属性对应要求的当前数据范围分别与预聚合缓存区中检索目录中的表单属性及表单属性对应的数据范围(应用表单发布时静态要求的数据范围)进行匹配。
94.步骤303、基于上述匹配结果,生成数据检索请求的第二检索结果。
95.在执行上述匹配操作的基础上,进一步基于匹配结果,生成数据检索请求的第二检索结果。
96.具体的,如果匹配成功,即预聚合视图的检索目录集中存在与目标属性一致的表单属性,或存在与目标属性一致的表单属性且该表单属性在预聚合缓存区对应的数据范围与目标属性所要求的当前数据范围一致,则直接基于预聚合缓存区中与目标属性匹配的表单属性所属的检索目录对应的第一检索结果,生成数据检索请求的第二检索结果。
97.其中,基于预聚合缓存区中的上述第一检索结果,生成数据检索请求的第二检索结果,进一步包括:将该第一检索结果作为数据检索请求的第二检索结果,或者,依据数据检索请求中的目标属性对预聚合缓存区中的该第一检索结果进行二次检索,并将二次检索
结果作为数据检索请求的第二检索结果。
98.例如,针对预聚合缓存区中将“具备编程技能的员工”的检索结果和“具备编程技能的男员工”的检索结果,合并为一个检索结果(即“具备编程技能的员工”对应的检索结果)的情况,若数据检索请求中的目标属性为“编程技能”,则可直接将合并所得的该检索结果(第一检索结果)作为数据检索请求的第二检索结果,若数据检索请求中的目标属性包括“编程技能”和“性别男”,则利用“编程技能”和“性别男”这些目标属性对预聚合缓存区中合并所得的该检索结果进行二次检索,通过二次检索得到数据检索请求的第二检索结果。
99.在匹配成功的情况下,直接基于预聚合缓存区中的预聚合视图,即可得到数据检索请求的第二检索结果,无需对应用表单的表单数据源如表单数据库进行检索,以此加快应用表单的数据检索过程。
100.反之,如果匹配失败,则依据数据检索请求中携带的目标属性,对应用表单的表单数据源(如表单数据库)进行检索,通过检索表单数据的数据源生成数据检索请求的第二检索结果。
101.由以上方案可知,本实施例的方法,预先构建了预聚合视图,并将其存放于预聚合缓存区中,预聚合视图包括检索目录集和各检索目录分别对应的第一检索结果,检索目录进一步包括:包含具有索引特征的表单属性的索引信息;在此基础上,在获取对应用表单的数据检索请求后,将所获取请求中携带的目标属性与预聚合缓存区中检索目录中的表单属性进行匹配,最终基于匹配结果生成数据检索请求的第二检索结果。本技术方案,通过预先构建预聚合视图,并将预聚合缓存区中存放的该预聚合视图作为检索依据,可在预聚合视图中存在所请求的表单数据的情况下,避免对表单数据的数据源的检索,从而实现了自动根据表单属性进行表单数据的快速检索,有效改善了低代码平台应用在检索大规模数据时的检索性能。
102.在一实施例中,参见图4提供的数据的检索处理方法流程图,本技术实施例公开的数据的检索处理方法,还可以包括以下处理:
103.步骤304、通过预定的数据过期策略删除预聚合缓存区中的过期数据;和/或,通过预定的数据更新策略,从应用表单的表单数据的数据源更新数据至预聚合缓存区。
104.可选的,数据过期策略可以设定为:基于预先设定的时间长度,周期性检测表单数据的数据源中对应于预聚合缓存区所存放数据的表单数据是否发生删除事件,如果发生删除事件(导致预聚合缓存区中存放的相应数据过期),则同步删除预聚合缓存区中对应于被删除数据的过期数据;
105.数据更新策略相应可以设定为:基于预先设定的时间长度,周期性检测表单数据的数据源中对应于预聚合缓存区所存放数据的表单数据是否发生新增事件,如果发生新增事件,则将新增数据同步更新至预聚合缓存区。
106.但不限于此,还可以预先向表单数据的数据源端注册回调函数,并将数据过期策略或数据更新策略设定为,在接收到表单数据的数据源端基于数据删除或新增事件而触发的回调通知时,在预聚合缓存区执行对应的过期数据删除操作或数据新增操作。
107.在此基础上,通过设定的对应策略,删除预聚合缓存区中的过期数据或从应用表单的表单数据源更新数据至预聚合缓存区。例如,因某员工离职,表单数据库中的该员工数据被删除,相应导致预聚合缓存区中缓存的该员工数据过期,针对该情况,可根据数据过期
策略将预聚合缓存区中该员工的信息删除;同时,若因新员工入职,在表单数据库中增添新入职员工的数据,则可根据数据更新策略向预聚合缓存区同步增添该新入职员工的数据信息。
108.本实施例通过根据上述策略对预聚合缓存区的相关过期数据执行删除操作或向预聚合缓存区增添数据,可维持预聚合缓存区与应用表单数据源中数据的一致,确保预聚合缓存区中数据的有效性,从而为加快表单数据的检索过程提供有效支持。
109.对应于上述的方法,本技术实施例还公开一种数据的检索处理装置,该装置的组成结构如图5所示,至少包括:
110.获取模块501,用于获取对应用表单的数据检索请求;所述数据检索请求中包括用于作为检索依据的目标属性;
111.匹配模块502,用于将所述目标属性与预聚合缓存区中检索目录中的表单属性进行匹配;其中,所述预聚合缓存区中存放有预先构建的预聚合视图,所述预聚合视图包括预先生成的检索目录集和检索目录集中的各检索目录分别对应的第一检索结果,所述检索目录包括:包含具有索引特征的表单属性的索引信息;
112.生成模块503,用于基于所述匹配结果,生成所述数据检索请求的第二检索结果。
113.在一实施方式中,生成模块503,具体用于:
114.如果匹配成功,基于所述预聚合缓存区中与所述目标属性匹配的表单属性所属的检索目录对应的第一检索结果,生成所述数据检索请求的第二检索结果;
115.如果匹配失败,依据所述目标属性,对应用表单的表单数据的数据源进行检索,以生成所述数据检索请求的第二检索结果。
116.在一实施方式中,在应用表单发布时,构建并在预聚合缓存区中存放所述预聚合视图;
117.检索目录中的表单属性为:在应用表单发布时,通过识别应用表单的具备索引特征的属性并对具备索引特征的属性进行分类所得的相应类别表单属性;
118.检索目录对应的第一检索结果包括:分别基于同一检索目录中的不同表单属性及不同表单属性在应用表单的表单数据的数据源中对应的不同检索路径,对所述数据源进行检索并对各检索的检索结果进行聚合所得的结果;检索目录中的索引信息包括:同一类别的具有索引特征的各表单属性和所述具有索引特征的各表单属性分别对应的数据检索路径。
119.在一实施方式中,生成模块503,在基于所述预聚合缓存区中与所述目标属性匹配的表单属性所属的检索目录对应的第一检索结果,生成所述数据检索请求的第二检索结果时,具体用于:
120.将所述第一检索结果作为所述第二检索结果,或者,依据所述目标属性对所述第一检索结果进行检索,以生成所述数据检索请求的第二检索结果。
121.在一实施方式中,预聚合视图中包括的与检索目录对应的第一检索结果为:在应用表单的发布时,对应用表单的表单数据的数据源进行检索所得的与应用表单的具备索引特征的表单属性和所述具备索引特征的表单属性对应的目标数据范围匹配的检索结果;
122.其中,所述目标数据范围为应用表单发布时所述具备索引特征的表单属性静态要求的表单数据范围;
123.匹配模块502,具体用于:将所述目标属性及所述目标属性对应的当前数据范围分别与预聚合缓存区中检索目录中的表单属性及表单属性对应的所述目标数据范围进行匹配。
124.在一实施方式中,检索目录对应的第一检索结果包括:对所述数据源中的单一数据文件进行检索所得的结果;
125.在构建所述预聚合视图时还包括:
126.确定所述应用表单的表单属性中具有索引特征且能用于对所述数据源中的多个数据文件进行联合检索的表单属性,得到联合检索表单属性;
127.基于确定出的联合检索表单属性,根据应用表单的数据源的数据定义语言和/或数据操纵语言的特征,对所述数据源的多个数据文件进行联合检索,得到联合检索结果;
128.向所述预聚合视图中增添联合检索目录,并在所述预聚合视图中为所述联合检索目录记录对应的联合检索结果;
129.其中,所述联合检索目录包括:包含所述联合检索表单属性的索引信息。
130.在一实施方式中,上述装置还包括:
131.更新模块,用于:通过预定的数据过期策略删除所述预聚合缓存区中的过期数据;和/或,通过预定的数据更新策略,从应用表单的表单数据的数据源更新数据至预聚合缓存区。
132.在一实施方式中,应用表单的表单属性包括应用表单的各表单元素绑定的业务数据参数;
133.通过将业务数据参数设置为动态数据接口的接口参数,并为表单元素配置对应的动态数据接口,实现表单元素与对应的业务数据参数的绑定。
134.对于本技术实施例公开的数据的检索处理装置而言,由于其与上文各方法实施例公开的数据的检索处理方法相对应,所以描述的比较简单,相关相似之处请参见上文相应方法实施例的说明即可,此处不再详述。
135.本技术实施例还公开一种电子设备,该电子设备可以是但不限于服务端中用来提供表单数据检索服务的服务器,该电子设备的组成结构如图6所示,具体包括:
136.存储器601,用于存放计算机指令集;
137.计算机指令集可以通过计算机程序的形式实现。
138.处理器602,用于通过执行计算机指令集,实现如上文任一方法实施例公开的数据的检索处理方法。
139.处理器602可以为中央处理器(central processing unit,cpu),特定应用集成电路(application-specific integrated circuit,asic),数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件等。
140.除此之外,电子设备还可以包括通信接口、通信总线等组成部分。存储器、处理器和通信接口通过通信总线完成相互间的通信。
141.通信接口用于电子设备与其他设备之间的通信。通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等,该通信总线可以分为地址总线、数据总线、控制总线等。
142.综上所述,本技术实施例公开的数据的检索处理方法、装置和电子设备,相比于传统技术,至少具备以下技术优势:
143.21)在相同数据规模下,用较小的存储空间消耗,自动化地降低查询负担,加快应用表单的数据检索过程、提升其检索效率,可获得较好的用户使用体验;
144.22)通过归类算法(如决策树)实现预聚合的创建,同时将预聚合创建过程和数据库引擎(如clickhouse、hive、spark、postgresql、mysql等)进行紧密结合,充分利用现有数据库的扩展能力。
145.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
146.为了描述的方便,描述以上系统或装置时以功能分为各种模块或单元分别描述。当然,在实施本技术时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
147.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例或者实施例的某些部分所述的方法。
148.最后,还需要说明的是,在本文中,诸如第一、第二、第三和第四等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
149.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献