数据查询方法、装置、计算机设备、存储介质和程序产品与流程

文档序号:33018596发布日期:2023-01-20 18:07阅读:19来源:国知局
数据查询方法、装置、计算机设备、存储介质和程序产品与流程

1.本技术涉及大数据技术领域,特别是涉及一种数据查询方法、装置、计算机设备、存储介质和程序产品。


背景技术:

2.随着大数据和云计算的发展,数据的高效存储、快速分析和实时查询成为当下的关注焦点。而面对这一焦点,如何对不同数据源的数据进行数据归一化处理,得到归一化的数据,从而实现数据的快速处理,成为当前亟待解决的技术问题。
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.上述数据查询方法、装置、计算机设备、存储介质和计算机程序产品,通过获取多个待查询数据;针对各待查询数据,根据预设查询条件从预设图数据库中获取待查询数据对应的关联数据;接着,根据各待查询数据对应的关联数据的属性信息,对多个待查询数据进行归一化处理,得到多个待查询数据的归一化结果;其中,预设查询条件包括预设查询深度,预设查询深度小于预设深度阈值,待查询数据对应的关联数据为预设图数据库中与待查询数据具有关联关系的数据;也就是说,本技术实施例中,采用图数据库的数据结构对不同数据源的数据进行数据关联,并在进行图数据库查询时,通过对预设查询深度进行限定,
以较短查询路径实现数据查询,接着,基于路径查询结果对待查询数据进行归一化处理,使得具有关联关系的待查询数据之间可以归一拼接得到长路径的数据关联,相比于传统的基于数据之间的关系信息表的查询方式而言,不仅能够提高数据关联的高效性,还能提高数据查询的快捷性,即使面对庞大的图数据库,也能实现数据的快速查询,从而提高数据查询的效率。
附图说明
42.图1为一个实施例中数据查询方法的应用环境图;
43.图2为一个实施例中数据查询方法的流程示意图;
44.图3为另一个实施例中数据查询方法的流程示意图;
45.图4为另一个实施例中数据查询方法的流程示意图;
46.图5为另一个实施例中数据查询方法的流程示意图;
47.图6为另一个实施例中数据查询方法的流程示意图;
48.图7为一个实施例中实时数据入库处理流程示意图;
49.图8为一个实施例中数据归一查询的模型结构示意图;
50.图9为一个实施例中数据查询装置的结构框图;
51.图10为一个实施例中计算机设备的内部结构图。
具体实施方式
52.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
53.随着信息化技术的发展,每个人每天将产生大量的数据信息,但是由于产生数据信息的信息化系统、实现技术、所属行业等各种因素的不同,数据之间无标准规范进行约束,所以产生的数据信息之间的关联性较弱。示例性地,在某些场景下,需要对不同数据信息对应的人进行识别和关联,增强其关联性;例如:有10个手机号,由于存在同一人拥有多个手机号的可能,所以如果对这10个手机号进行归一,得到的人员对象应该是少于等于10个。
54.传统的,在对数据进行归一处理时,在查询归一结果之前需先完成数据的关联,从数据接入到可以查询结果之间,需要算法处理时间,会导致实时性降低;尤其是采用关联信息表的数据关联形式,在对数据进行关联之后再进行数据查询,需要消耗大量的时间;另外,如果存在间接关联数据,容易出现关联关系丢失的问题;如果数据量大幅度增加,达到十亿、百亿级别,则实效性问题会更加严重,所以急需用新的数据归一模型来解决上述技术问题,提高数据查询的效率。
55.本技术实施例提供的数据查询方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端102用于提供交互式的数据查询服务,服务器接收终端发送的数据查询信息,执行数据查询操作,并返回数据查询结果,以便终端显示数据查询结果。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,终端102可以但不限于是各种个
人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
56.在一个实施例中,如图2所示,提供了一种数据查询方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
57.步骤201,获取多个待查询数据。
58.其中,待查询数据的数据类型可以为与预设图数据库所包含的数据类型相关的类型数据,该预设图数据库的数据类型可以与所涉及的数据源的数据类型有关,例如:该预设图数据库可以为金融业务领域的相关数据所构建的数据库,也可以为医疗领域的相关数据所构建的数据库,还可以为教育领域的相关数据所构建的数据库等。
59.可选地,服务器可以接收终端发送的多个待查询数据,也可以接收由其他服务器发送的多个待查询数据等。
60.步骤202,针对各待查询数据,根据预设查询条件从预设图数据库中获取待查询数据对应的关联数据。
61.其中,预设查询条件可以包括预设查询深度,该预设查询深度小于预设深度阈值,该关联数据为预设图数据库中与待查询数据具有关联关系的数据。在图数据库中,该预设查询深度为查询路径的深度,查询路径越深,数据所关联的信息越多,数据查询的效率越慢。因此,在本实施例中,采用短路径拼接查询实现长路径查询的技术方案,提高图数据库的数据查询效率。
62.通过理论分析与实验验证,在查询路径为3度及3度以上的情况下,数据查询的效率明显减慢,在一种情况下,该预设深度阈值可以设置为3度,也就是说,本实施例中的预设查询深度可以为1度或者2度。
63.需要说明的是,该预设查询深度也可以由用户自行设置,服务器在接收到终端发送的由用户输入的预设查询深度的情况下,服务器可以根据用户输入的预设查询深度进行数据查询。
64.具体地,服务器在进行数据查询时,可以先针对每个待查询数据,根据预设查询深度,从预设图数据库中,获取与每个待查询数据具有关联关系的关联数据;也就是以每个待查询数据为中心节点,获取与该待查询数据关联的预设查询深度的所有关联数据,作为待查询数据对应的关联数据。示例性地,在该预设查询深度为1度的情况下,获取与待查询数据关联的1度关系的所有节点数据,作为该待查询数据对应的关联数据。
65.步骤203,根据各待查询数据对应的关联数据的属性信息,对多个待查询数据进行归一化处理,得到多个待查询数据的归一化结果。
66.其中,关联数据的属性信息可以包括关联数据的各个属性参数的属性值。例如:该关联数据为邮箱数据时,该关联数据的属性信息可以包括邮箱账号、邮箱密码、邮箱内容等。
67.可选地,在判断各个待查询数据之间是否存在关联时,可以根据各个待查询数据对应的关联数据的属性信息,来判断各个待查询数据之间是否存在关联、以及其对应的关联关系,在确定多个待查询数据之间存在关联的情况下,对存在关联的待查询数据之间建
立关联关系,并对该存在关联的待查询数据进行归一化处理,从而得到多个待查询数据的归一化结果。
68.可选地,在根据各个待查询数据对应的关联数据的属性信息,判断各个待查询数据之间是否存在关联时,可以针对两两待查询数据,如待查询数据a和待查询数据b,判断待查询数据a的各个关联数据的属性信息和待查询数据b的各个关联数据的属性信息之间是否存在具有相同属性信息的关联数据,如果待查询数据a和待查询数据b之间存在具有相同属性信息的关联数据,那么可以确定待查询数据a和待查询数据b之间存在关联,且待查询数据a和待查询数据b之间通过该具有相同属性信息的关联数据形成关联关系。
69.进一步地,在判断完所有的待查询数据之后,针对具有关联关系的多个待查询数据,根据该多个待查询数据的关联关系,对该多个待查询数据进行归一化处理,得到多个待查询数据的归一化结果。可选地,该归一化结果中可以包括具有关联关系的至少一组待查询数据,每一组待查询数据中的具有关联关系的多个待查询数据之间的关联关系,以及不具有关联关系的各个待查询数据中的至少一个。
70.上述数据查询方法中,服务器通过获取多个待查询数据;针对各待查询数据,根据预设查询条件从预设图数据库中获取待查询数据对应的关联数据;接着,根据各待查询数据对应的关联数据的属性信息,对多个待查询数据进行归一化处理,得到多个待查询数据的归一化结果;其中,预设查询条件包括预设查询深度,预设查询深度小于预设深度阈值,待查询数据对应的关联数据为预设图数据库中与待查询数据具有关联关系的数据;也就是说,本技术实施例中,采用图数据库的数据结构对不同数据源的数据进行数据关联,并在进行图数据库查询时,通过对预设查询深度进行限定,以较短查询路径实现数据查询,接着,基于路径查询结果对待查询数据进行归一化处理,使得具有关联关系的待查询数据之间可以归一拼接得到长路径的数据关联,相比于传统的基于数据之间的关系信息表的查询方式而言,不仅能够提高数据关联的高效性,还能提高数据查询的快捷性,即使面对庞大的图数据库,也能实现数据的快速查询,从而提高数据查询的效率。
71.在本技术的一个可选的实施例中,对于上述预设查询条件,该预设查询条件不仅可以包括预设查询深度,还可以包括预设关系类型,也就是说,该预设查询条件可以包括预设查询深度和预设关系类型,服务器针对各待查询数据,可以根据预设查询深度和预设关系类型,从预设图数据库中获取待查询数据对应的关联数据。需要说明的是,该预设查询条件还可以包括其他维度的查询条件,例如:预设关联程度等,本技术实施例对该预设查询条件的具体内容并不做限定。
72.另外,对于该预设查询条件,用户可以根据实际查询需求适应性设置或修改该预设查询条件中的各项查询条件,用户通过终端输入预设查询条件,终端将获取到的预设查询条件发送至服务器,服务器在获取到终端发送的预设查询条件之后,针对各待查询数据,根据所获取到的预设查询条件从预设图数据库中获取待查询数据对应的关联数据。
73.在一种实现方式中,在预设查询条件包括预设查询深度和预设关系类型的情况下,如图3所示,上述步骤202“根据预设查询条件从预设图数据库中获取待查询数据对应的关联数据”可以包括:
74.步骤301,根据预设查询深度从预设图数据库中获取待查询数据对应的候选关联数据。
75.步骤302,根据预设关系类型,从候选关联数据中筛选出与预设关系类型相同的关联数据,作为待查询数据对应的关联数据。
76.可选地,在本实施例中,在通过预设查询深度获取到与待查询数据关联的所有候选关联数据之后,进一步地,再根据待查询数据与候选关联数据之间的关系类型,从候选关联数据中,筛选出与预设关系类型相同的关联数据,作为待查询数据对应的关联数据。通过增加查询条件,进一步得到与各查询条件匹配的查询结果,能够提高数据查询的灵活性和可选择性,提高数据查询的效率。
77.图4为另一个实施例中数据查询方法的流程示意图。本实施例涉及的是服务器根据各待查询数据对应的关联数据的属性信息,对多个待查询数据进行归一化处理,得到多个待查询数据的归一化结果的一种可选的实现过程,在上述实施例的基础上,如图4所示,上述步骤203包括:
78.步骤401,获取各待查询数据对应的关联数据的属性信息。
79.可选地,针对各待查询数据,服务器在从图数据库中获取到与待查询数据对应的关联数据之后,可以进一步基于该图数据库,获取与待查询数据对应的各个关联数据的属性信息。或者,服务器还可以从其他数据库或者其他存储设备中获取与待查询数据对应的各个关联数据的属性信息,本技术实施例对此不做具体限定。
80.步骤402,判断不同的待查询数据对应的关联数据的属性信息之间的相似度是否大于预设相似度阈值。
81.其中,待查询数据可以对应至少一个关联数据,一个关联数据可以对应至少一个属性信息。
82.可选地,服务器可以依次针对两个不同的待查询数据,判断两者之间是否存在关联,针对两个不同的待查询数据,确定两个待查询数据分别对应的关联数据,以及各个关联数据的属性信息;两个待查询数据分别对应的一个关联数据可以组成一个关联数据对,依次计算每个关联数据对中的两个关联数据的属性信息之间的相似度,并判断该相似度是否大于预设相似度阈值;可选地,在关联数据包括多个属性信息的情况下,可以依次计算关联数据对中的关联数据的每个属性信息之间的相似度,也可以将关联数据的多个属性信息作为一个属性特征向量,计算关联数据对中的两个关联数据的属性特征向量之间的相似度。
83.步骤403,在不同的待查询数据对应的关联数据的属性信息之间的相似度大于预设相似度阈值的情况下,将相似度大于预设相似度阈值的属性信息对应的关联数据作为目标关联数据,将目标关联数据进行归一化处理,得到多个待查询数据的归一化结果。
84.可选地,在确定两个待查询数据对应的关联数据对的属性信息之间的相似度大于预设相似度阈值的情况下,可以确定该关联数据对中的两个关联数据之间存在关联性;进一步地,在确定出两个待查询数据之间存在至少一组关联数据对的属性信息之间的相似度大于预设相似度预设相似度阈值的情况下,即至少一组关联数据对存在关联性的情况下,可以确定两个待查询数据之间存在关联性。
85.在进行数据归一化时,对于存在关联性的多个待查询数据,将多个待查询数据中存在关联性的关联数据作为目标关联数据,该目标关联数据用于关联具有关联性的待查询数据;接着,可以将目标关联数据进行归一化处理,得到多个待查询数据的归一化结果。
86.可选地,服务器在进行数据归一化处理时,可以通过目标关联数据建立目标关联
数据对应的不同待查询数据之间的关联关系,接着,可以基于不同待查询数据之间的关联关系、待查询数据对应的关联数据,得到多个待查询数据的归一化结果。也就是说,在确定多个不同的待查询数据对应的关联数据存在关联性的情况下,该关联数据即作为该多个不同的待查询数据对应的目标关联数据,并基于该目标关联数据建立该多个不同的待查询数据之间的关联关系,即通过该目标关联数据将该多个不同的待查询数据进行数据关联;进而,服务器可以将该多个待查询数据以及该多个待查询数据之间的关联关系作为该多个待查询数据的归一化结果;当然,在该归一化结果中,还可以包括该多个待查询数据分别对应的其他的关联数据,以便输出更多的关联信息。
87.另外,需要说明的是,上述预设相似度阈值还可以为1或者100%,也就是说,在判断两个关联数据的属性信息完全相同的情况下,确定两个关联数据相同且具有关联性。在进行数据归一化时,对于完全相同的两个关联数据,可以将这两个关联数据合并为一个节点数据,即目标关联数据,共同作为两个不同的待查询数据对应的关联数据。
88.本实施例中,服务器通过获取各待查询数据对应的关联数据的属性信息,并判断不同的待查询数据对应的关联数据的属性信息之间的相似度是否大于预设相似度阈值;接着,在不同的待查询数据对应的关联数据的属性信息之间的相似度大于预设相似度阈值的情况下,将相似度大于预设相似度阈值的属性信息对应的关联数据作为目标关联数据,将目标关联数据进行归一化处理,得到多个待查询数据的归一化结果;即在本实施例中,通过相似度来确定数据之间可能存在的关联性,增加数据关联的概率,提高数据查询的范围,另外,将待查询数据的所有关联数据作为归一化结果,以便为用户展示所查询数据的相关数据,为用户提供更多查询信息和查询思路。
89.图5为另一个实施例中数据查询方法的流程示意图。本实施例涉及的是服务器基于不同数据源的数据构建上述预设图数据库的一种可选的实现过程,在上述实施例的基础上,如图5所示,上述方法还包括:
90.步骤501,获取不同数据源的数据文件。
91.其中,数据源为采集数据的客户端或者数据平台,数据文件可以为任一格式的文件,如文本文件、压缩文件等。
92.可选地,服务器可以实时接收不同数据源发送的数据文件,数据源在采集到原始数据之后,可以实时发送至服务器,也可以按照预设频率上传至服务器。
93.步骤502,针对各数据源的数据文件,通过文件解析处理组件,对数据源的数据文件进行解析,获得结构化数据。
94.其中,文件解析处理组件可以是服务器中的一个处理组件,也可以是与该服务器进行通信连接的其他终端或者服务器上的处理组件,本技术对此并不做具体限定。
95.可选地,服务器在获取到不同数据源的数据文件之后,可以将该数据文件发送至文件解析处理组件,以指示文件解析处理组件对不同数据源的数据文件进行解析,从而得到各数据文件对应的结构化数据;其中,该结构化数据可以为具有关联性的数据组,例如:该结构化数据可以为json(javascript object notation,js对象简谱)数据。
96.可选地,服务器也可以调用该文件解析处理组件,对不同数据源的数据文件进行解析处理,得到各数据文件对应的结构化数据。需要说明的是,一个数据文件可以对应至少一个结构化数据。
97.步骤503,通过关联关系解析及入库组件,从结构化数据中提取关联关系,并基于关联关系和结构化数据,构建预设图数据库。
98.其中,关联关系解析及入库组件可以是服务器中的一个处理组件,也可以是与该服务器进行通信连接的其他终端或者服务器上的处理组件,本技术对此并不做具体限定。对于关联关系,其可以包括关系类型、关系属性等。
99.可选地,服务器可以将获取到的各个数据文件对应的结构化数据发送至关联关系解析及入库组件,关联关系解析及入库组件从结构化数据中提取数据的关联关系,并基于该关联关系和该结构化数据,构建预设图数据。当然,服务器也可以调用该关联关系解析及入库组件,对结构化数据进行解析,以从结构化数据中提取关联关系,并基于该关联关系和结构化数据,构建预设图数据库。
100.需要说明的是,服务器可以实时获取不同数据源的数据文件,服务器在获取到新的增量数据之后,仅需对增量数据进行关联解析处理,并将增量数据对应的关联关系添加至已构建的预设图数据库中,实现对预设图数据库的实时更新;在进行数据归一查询时,服务器可以直接采用最新的预设图数据库进行数据查询,无需再对数据库中的数据进行关联处理操作,能够大大提高数据归一查询的效率。
101.本实施例中,服务器通过获取不同数据源的数据文件;针对各数据源的数据文件,通过文件解析处理组件,对数据源的数据文件进行解析,获得结构化数据;接着,通过关联关系解析及入库组件,从结构化数据中提取关联关系,并基于关联关系和结构化数据,构建预设图数据库。采用本实施例的方法构建图数据库,能够提高图数据库的准确性和完整性,图数据库的实时更新,能够提高数据归一查询的速率和准确性,从而提高数据归一查询的效率。
102.图6为另一个实施例中数据查询方法的流程示意图。本实施例涉及的是服务器获取不同数据源的数据文件的一种可选的实现过程,在上述实施例的基础上,如图6所示,上述步骤501包括:
103.步骤601,通过文件传输协议服务器从数据平台上接收不同数据源的数据文件。
104.其中,文件传输协议服务器(file transfer protocol server,简称ftp服务器)是在互联网上提供文件存储和访问服务的计算机,依照ftp协议提供服务。简单地说,支持ftp协议的服务器即为ftp服务器。
105.本实施例中,数据平台可以连接多个不同的数据源,数据源采集到的数据文件发送至数据平台中,ftp服务器可以从数据平台上获取不同数据源的数据文件。
106.步骤602,将不同数据源的数据文件存储在文件传输协议服务器上,生成文件存储路径,通过文件传输协议服务器将文件存储路径发送至消息组件。
107.其中,该消息组件可以为与该服务器进行通信连接的其他服务器或者终端中的处理组件。
108.本实施例中,ftp服务器将获取到的不同数据源的数据文件进行存储,可以得到不同数据源的数据文件对应的文件存储路径,接着,ftp服务器可以将不同数据源的数据文件对应的文件存储路径发送至消息组件。
109.步骤603,通过文件解析处理组件从消息组件中获取文件存储路径,并基于文件存储路径从通过文件传输协议服务器上获取不同数据源的数据文件。
110.可选地,文件解析处理组件可以监听消息组件,并从消息组件中获取数据文件对应的文件存储路径,并根据该文件存储路径,从ftp服务器上获取该文件存储路径对应的数据文件,以得到不同数据源的数据文件。
111.本实施例中,服务器通过文件传输协议服务器从数据平台上接收不同数据源的数据文件;将不同数据源的数据文件存储在文件传输协议服务器上,生成文件存储路径,通过文件传输协议服务器将文件存储路径发送至消息组件;通过文件解析处理组件从消息组件中获取文件存储路径,并基于文件存储路径从通过文件传输协议服务器上获取不同数据源的数据文件。本实施例中提供了一种服务器获取不同数据源的数据文件的具体实现过程,提高了服务器获取数据的可实施性,为服务器进行数据归一提供了基础。
112.在本技术的一个可选的实施例中,提供了一种数据查询方法的完整流程,具体包括以下步骤:
113.(1)服务器实时获取不同数据源的数据文件,并基于不同数据源的数据文件,构建和更新图数据库。
114.参考图7,服务器实时获取数据并入库的处理流程可以包括:数据平台将不同数据源的数据文件(如压缩文件zip)实时推送至ftp服务器,ftp服务器在数据文件上传完成的同时发送一条文件存储路径到消息组件(如kafka),文件解析处理组件(如flink)从消息组件(kafka)中获取文件存储路径,并基于文件存储路径获取数据文件,接着,将数据文件解析成结构化json数据,并推送至消息组件(kafka),关联关系解析及入库组件(如flink)从消息组件(kafka)中获取结构化json数据,提取关联关系后入图数据库。
115.(2)服务器获取多个待查询数据,并针对各个待查询数据,根据预设查询深度和预设关系类型,从图数据库中获取待查询数据对应的关联数据;示例性地,该预设查询深度可以为1度,预设关系类型可以为同一人。
116.(3)获取各待查询数据对应的关联数据的属性信息,并基于关联数据的属性信息,判断不同的待查询数据之间是否存在相同的关联数据。
117.(4)若不同的待查询数据之间存在相同的关联数据,则将相同的关联数据进行归一处理,得到该不同的待查询数据之间的关联关系;示例性地,参考图8所示,其中,节点1和节点2代表两个不同的待查询数据,若节点1的关联数据和节点2的关联数据中存在相同的关联数据,即存在相同的节点3,则可以将相同的节点3进行合并处理,得到合并后的节点3,该合并后的节点3即作为节点1的关联节点,也作为节点2的关联节点。
118.(5)根据各个待查询数据的关联数据,以及待查询数据之间的关联关系,生成得到多个待查询数据的归一化结果。示例性地,参考图8所示,对于节点1和节点2,输入为两个不同的对象,在进行数据查询之后,确定节点1和节点2存在关联节点,那么,可以将节点1和节点2归一为一个对象并输出,输出后的对象包括节点1和节点2的所有关联节点。
119.(6)输出多个待查询数据的归一化结果。
120.本实施例中的方法,可以解决不同数据源的海量数据的快速接入,由简单关联关系组成复杂关联关系,并通过关联关系实现指定节点在指定路径的短路径查询后,实现长路径查询效果的结果集,实现实时查询结果归一的效果,降低了数据处理的复杂度,提高了数据存储量,用短路径查询时间实现长路径查询效果,提高数据处理的效率。
121.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头
的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
122.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的数据查询方法的数据查询装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据查询装置实施例中的具体限定可以参见上文中对于数据查询方法的限定,在此不再赘述。
123.在一个实施例中,如图9所示,提供了一种数据查询装置,包括:第一获取模块901、第二获取模块902和处理模块903,其中:
124.第一获取模块901,用于获取多个待查询数据。
125.第二获取模块902,用于针对各待查询数据,根据预设查询条件从预设图数据库中获取待查询数据对应的关联数据;预设查询条件包括预设查询深度,该预设查询深度小于预设深度阈值,该关联数据为预设图数据库中与待查询数据具有关联关系的数据。
126.处理模块903,用于根据各待查询数据对应的关联数据的属性信息,对多个待查询数据进行归一化处理,得到多个待查询数据的归一化结果。
127.在其中一个实施例中,预设查询条件还包括预设关系类型;上述第二获取模块902包括第一获取单元和第二获取单元;其中,第一获取单元,用于根据预设查询深度从预设图数据库中获取待查询数据对应的候选关联数据;第二获取单元,用于根据预设关系类型,从候选关联数据中筛选出与预设关系类型相同的关联数据,作为待查询数据对应的关联数据。
128.在其中一个实施例中,上述处理模块903包括第三获取单元、判断单元和处理单元;其中,第三获取单元,用于获取各待查询数据对应的关联数据的属性信息;判断单元,用于判断不同的待查询数据对应的关联数据的属性信息之间的相似度是否大于预设相似度阈值;处理单元,用于在不同的待查询数据对应的关联数据的属性信息之间的相似度大于预设相似度阈值的情况下,将相似度大于预设相似度阈值的属性信息对应的关联数据作为目标关联数据,将目标关联数据进行归一化处理,得到多个待查询数据的归一化结果。
129.在其中一个实施例中,上述处理单元,具体用于通过目标关联数据建立目标关联数据对应的不同待查询数据之间的关联关系;基于不同待查询数据之间的关联关系、待查询数据对应的关联数据,得到多个待查询数据的归一化结果。
130.在其中一个实施例中,该装置还包括:第三获取模块、第四获取模块和构建模块;其中,第三获取模块,用于获取不同数据源的数据文件;第四获取模块,用于针对各数据源的数据文件,通过文件解析处理组件,对数据源的数据文件进行解析,获得结构化数据;构建模块,用于通过关联关系解析及入库组件,从结构化数据中提取关联关系,并基于关联关系和结构化数据,构建预设图数据库。
131.在其中一个实施例中,上述第三获取模块包括接收单元、生成单元和第四获取单元;其中,接收单元,用于通过文件传输协议服务器从数据平台上接收不同数据源的数据文
件;生成单元,用于将不同数据源的数据文件存储在文件传输协议服务器上,生成文件存储路径,通过文件传输协议服务器将文件存储路径发送至消息组件;第四获取单元,用于通过文件解析处理组件从消息组件中获取文件存储路径,并基于文件存储路径从通过文件传输协议服务器上获取不同数据源的数据文件。
132.上述数据查询装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
133.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储预设图数据库的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据查询方法。
134.本领域技术人员可以理解,图10中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
135.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述任一实施例中的数据查询方法的步骤。
136.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例中的数据查询方法的步骤。
137.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一实施例中的数据查询方法的步骤。
138.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
139.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,
不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
140.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
141.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1