CN110837585A - 多源异构的数据关联查询方法及系统 - Google Patents

多源异构的数据关联查询方法及系统 Download PDF

Info

Publication number
CN110837585A
CN110837585A CN201911079874.XA CN201911079874A CN110837585A CN 110837585 A CN110837585 A CN 110837585A CN 201911079874 A CN201911079874 A CN 201911079874A CN 110837585 A CN110837585 A CN 110837585A
Authority
CN
China
Prior art keywords
data
information
query
heterogeneous
heterogeneous data
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.)
Granted
Application number
CN201911079874.XA
Other languages
English (en)
Other versions
CN110837585B (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.)
Unihub China Information Technology Co Ltd
Original Assignee
Unihub China Information Technology 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 Unihub China Information Technology Co Ltd filed Critical Unihub China Information Technology Co Ltd
Priority to CN201911079874.XA priority Critical patent/CN110837585B/zh
Publication of CN110837585A publication Critical patent/CN110837585A/zh
Application granted granted Critical
Publication of CN110837585B publication Critical patent/CN110837585B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种多源异构的数据关联查询方法及系统,该系统包括:多个异构数据源、中间索引装置、接口装置;接口装置用于:与多个异构数据源连接;对接收的数据查询请求进行拆分;中间索引装置用于:为多个异构数据源中待关联信息建立索引信息;对拆分后的数据查询请求进行解析,确定数据查询处理方式;中间索引装置和多个异构数据源根据数据查询处理方式完成数据查询操作;数据查询处理方式包括:在多个异构数据源进行数据查询筛选,筛选结果返回至中间索引装置进行关联合并,或,将索引信息写入异构数据源,对索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源。该方案可以提高数据查询效率。

Description

多源异构的数据关联查询方法及系统
技术领域
本发明涉及异构数据关联技术领域,特别涉及一种多源异构的数据关联查询方法及系统。
背景技术
现在数据存储方案的多元化与存储模型的多样化,在不同的业务场景中,通常会选用不同的数据存储结构,如RDB、ES、HBASE、HIVE、REDIS等。而在数据分析、AI应用、数据中台等场合中,则要求将多源异构的数据都汇聚在一起,进行关联计算和分析。而因为异构数据源的存储结构、访问接口、查询逻辑不同,这些数据源的数据之间无法直接关联,甚至自身都不支持数据关联,对计算工作造成了很大难度。
目前常见的技术方案有两种:
一种是通过构建数据仓库、数据集市等方法,将数据从不同的数据源抽出来,清洗并调整存储模型,将多源数据统一成同样的结构重新存储,后续的统计分析直接在数据仓库或集市中进行。但是该技术方案存在以下不足之处:提前进行数据迁移和统一清洗的方式,需要复杂的流程与大量的资源用于整个ETL(Extraction-Transformation-Loading,数据抽取、转换和加载)过程,且数据源变更的时候,数据很难立刻同步到新的数据结构中,关联查询的实时性无法保障;
另一种是数据存储与计算分离,在数据计算的时候,临时将数据从多个数据源中将相关数据全量抽取到计算节点,在计算节点上对数据进行关联与统计分析。但是该技术方案同样存在以下不足之处:使用数据存储与计算分离的方式,在每次查询计算的时候,需要将源数据通过网络传输到计算节点上,查询时对带宽与存储资源的消耗很高,查询效率较低。
发明内容
本发明实施例提供了一种多源异构的数据关联查询方法及系统,解决了现有技术中提前进行数据迁移和统一清洗方式较复杂、使用数据存储与计算分离方式对带宽与存储资源的消耗高,查询效率低的技术问题。
本发明实施例提供的一种多源异构的数据关联查询系统包括:多个异构数据源、中间索引装置、接口装置;
所述接口装置用于:与所述多个异构数据源连接;接收数据查询请求,对数据查询请求进行拆分,将拆分后的数据查询请求发送至所述中间索引装置;
所述中间索引装置用于:为多个异构数据源中待关联信息建立索引信息并存储;对所述拆分后的数据查询请求进行解析,确定数据查询请求中待查询关联信息的逻辑连接方式,根据所述待查询关联信息的逻辑连接方式确定数据查询处理方式;
所述中间索引装置和多个异构数据源用于:根据所述数据查询处理方式完成数据查询操作;
其中,所述数据查询处理方式包括:在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源。
本发明实施例提供的一种多源异构的数据关联查询方法包括:
中间索引装置为多个异构数据源中待关联信息建立索引信息并存储;
接口装置接收数据查询请求,对数据查询请求进行拆分,将拆分后的数据查询请求发送至所述中间索引装置;
中间索引装置对所述拆分后的数据查询请求进行解析,确定数据查询请求中待查询关联信息的逻辑连接方式,根据所述待查询关联信息的逻辑连接方式确定数据查询处理方式;
中间索引装置和多个异构数据源根据所述数据查询处理方式完成数据查询操作;
其中,接口装置与多个异构数据源连接;
所述数据查询处理方式包括:在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述所述方法的计算机程序。
在本发明实施例中,通过在中间索引装置为多个异构数据源中待关联信息建立索引信息并存储,基于索引信息进行信息查询,这样通过提前完成数据关联,无需每次查询重新对全量数据进行关联,减少数据存储的磁盘扫描量,大大优化查询效率;基于索引信息确定数据查询处理方式,数据查询处理方式包括在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源,这样使得数据存储与计算并非完全分离,大大节约数据在网络传输之间的开销。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种多源异构的数据关联查询系统结构框图;
图2是本发明实施例提供的一种多源异构的数据关联查询系统包括的模块框图;
图3是本发明实施例提供的一种查询流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中,基于现有技术中多源异构数据间的关联计算方法存在的不同之处,本发明提供了一种多源异构的数据关联查询系统,如图1所示,包括:多个异构数据源、中间索引装置、接口装置;
所述接口装置用于:与所述多个异构数据源连接;接收数据查询请求,对数据查询请求进行拆分,将拆分后的数据查询请求发送至所述中间索引装置;
所述中间索引装置用于:为多个异构数据源中待关联信息建立索引信息并存储;对所述拆分后的数据查询请求进行解析,确定数据查询请求中待查询关联信息的逻辑连接方式,根据所述待查询关联信息的逻辑连接方式确定数据查询处理方式;
所述中间索引装置和多个异构数据源用于:根据所述数据查询处理方式完成数据查询操作;
其中,所述数据查询处理方式包括:在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源。
本发明提出的多源异构的数据关联查询系统在多种数据存储结构(即多个异构数据源)之上,构造一个数据中间层(即中间索引装置),在数据中间层构建索引,实现数据存储与计算的部分分离,即数据部分关联与筛选逻辑在中间层,其他计算本地化。
在本发明实施例中,如图2所示,从功能模块角度来说明,所述接口装置可以包括:
1、查询解释模块:从数据查询接口获得数据查询请求,对原始查询逻辑(即数据查询请求)进行解析,将查询逻辑拆成数据源、数据存储位置、过滤筛选条件、数据关联逻辑等结构,将数据源信息、数据存储位置信息、过滤筛选条件信息和数据关联逻辑信息发送至所述中间索引装置;
2、多源连接模块:支持同时连接多个异构数据源(即多源异构数据存储),进行数据查询与交互;
3、索引注册模块:对接各种异构数据源,对可能涉及关联的字段在中间层构建索引。
在本发明实施例中,所述中间索引装置具体用于:
按照如下方式存储所述索引信息:
主键/_id/行键Rowkey的数据存储(rdb/es/hbase这几种数据库的主键定义方式);
或,key-value型的数据存储(TiKV、Redis这几种数据库的主键定义方式);
或,使用哈希表缓存的方式存储。
具体的,所待关联信息包括多个异构数据源中的关联的数据表以及数据表中的关联相关字段信息;
当以key-value型的数据存储时,所述索引信息中的key值为关联相关字段取值,所述索引信息中的value值为关联相关字段所在的数据源、所在数据表及在数据表中的存储位置信息。因为同一个取值在各异构数据源会有多份存储,不同的存储位置以集合/数据/散列等形式进行管理。
具体的,所述中间索引装置具体用于:
将所述索引信息中的key值排序后进行存储,并且是集中存储。
在本发明实施例中,各异构数据源可各自触发索引构建流程,且索引构建的实现为幂等(对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,其任意多次执行对资源本身所产生的影响均与一次执行的影响相同)的,可重复触发,即所述多个异构数据源用于:(由触发器)触发所述中间索引装置进行索引信息构建。或者也可以是由中间索引装置定时扫描多个异构数据源,根据所述多个异构数据源的数据增量来确定构建索引信息。
在本发明实施例中,所述中间索引装置具体用于:
对所述数据源信息、数据存储位置信息、过滤筛选条件信息和数据关联逻辑信息进行逻辑分析,确定所述数据查询处理方式。
具体的,如图3所示,所述中间索引装置具体用于:
对所述数据源信息、数据存储位置信息、过滤筛选条件信息和数据关联逻辑信息进行逻辑分析,判断查询是否存在于多个异构数据源之间,若否,则将数据查询请求下发至对应的异构数据源进行单独查询,接收对应的异构数据源返回的查询结果,若是,则判断待查询关联信息的逻辑连接方式是否为全外连接;
若是全外连接,则将数据查询请求分发至对应的异构数据源进行相应的查询,接收多个异构数据源先各自筛选计算然后返回的查询结果,对所述查询结果进行合并处理,若不是全外连接,则判断待查询关联信息的逻辑连接方式是否为其他连接方式,其中,所述其他连接方式包括哈希连接、排序合并连接、半连接、反连接、内连接、外连接;
若为哈希连接,则从所述索引信息中找到关联的双方字段都在记录中有对应数据源存储的索引信息;
若为排序合并连接,则根据所述索引信息中key值的排序信息,筛选出索引列之间的排序关联,构造出新的索引关系;
比如,哈希连接,类似sql中的where a.c1=b.c1;排序合并连接,类似sql中的where a.c1>b.c1。
假设原先A表有7条记录,为别为3、1、5、9、7、13、11(都是奇数),B表也有7条记录,分别为11、7、5、3、13、2、17(都是质数),如果是常规的给两两分别建索引,则索引分别为A:1、3、5、7、9、11、13,B:2、3、5、7、11、13、17。如果是按哈希方式构造,索引为3、5、7、11、13。如果是按排序方式构造,索引为1(A)、2(B)、3(AB)、5(AB)、7(AB)、9(A)、11(AB)、13(AB)、17(B)。
若为半连接或反连接,且在查询逻辑中对内层表有一定的筛选条件,则将相应的索引信息写入内层表所在异构数据源中,接收内层表所在异构数据源对相应的索引信息进行过滤后的索引信息,将过滤后的索引信息写入外层表所在异构数据源,接收外层表所在异构数据源根据过滤后的索引信息进行数据查询后获得的查询结果;
若为内连接或外连接,则根据相应的索引信息将数据查询请求分发至关联的多个异构数据源,接收多个异构数据源查询并过滤后返回的数据,对所述数据进行关联合并。
其中,内连接:组合两个表中的记录,返回关联字段相符的记录,也就是返回两个表的交集(阴影)部分。
外连接包括左外连接和右外连接,左连接(左外连接):left join是left outerjoin的简写,它的全称是左外连接,是外连接中的一种。左(外)连接,左表(a_table)的记录将会全部表示出来,而右表(b_table)只会显示符合搜索条件的记录。
右连接(右外连接):right join是right outer join的简写,它的全称是右外连接,是外连接中的一种。与左(外)连接相反,右(外)连接,左表(a_table)只会显示符合搜索条件的记录,而右表(b_table)的记录将会全部表示出来。
全连接(全外连接):返回左右表中所有的记录和左右表中连接字段相等的记录。
哈希连接(HASH JOIN)是一种两个表在做表连接时主要依靠哈希运算来得到连接结果集的表连接方法。
反连接:两表关联只返回主表的数据,并且只返回主表与子表没关联上的数据,这种连接就叫反连接。
半连接:半连接是与反连接相对的,即:两表关联只返回主表的数据,并且只返回主表与子表关联上的数据。因为只需要找到一条可关联的记录,即可证明能关联上,所以半连接会在查到一条关联记录后即返回,效率非常高。
在本发明实施例中,中间索引装置还用于:
统计索引信息的容量,当所述索引信息的容量小于配置阈值时,将所述索引信息回写至多个异构数据源。可以将所述索引信息以外部表、索引组织表、数据表或数据文件形式回写至多个异构数据源。
在本发明实施例中,如图2所示,从功能模块角度来说明,所述中间索引装置可以包括:
1、连接分析模块:解析查询逻辑,即对拆分后的数据查询请求进行解析,确定数据查询请求中待查询关联信息的逻辑连接方式;
2、查询重写模块:根据确定的逻辑连接方式重写查询逻辑,将原先完整的异构数据连接拆成在中间层执行的数据关联逻辑,和需要在各数据源查询的筛选计算逻辑;
3、数据合并模块:将中间层与各数据源分别查询计算出的结果进行合并;
4、索引缓存模块:在中间层单独存储各异构数据源的索引信息,至少包含主键索引,或者还可以包括经常涉及关联的二级索引;
5、索引管理模块:集中管理索引的存储结构,确保索引登记操作的幂等性;通过手工维护或根据配置信息自动连接并检索各个数据源,登记数据源的连接方式,目标表名、目录表Schema信息,通过手工配置,或根据历史查询逻辑统计出经常参与异构数据关联的表名和关联相关字段信息;
6、视图反写模块:将中间层维护的部分索引信息,以数据视图、外部表、索引组织表等方式,将数据回写至异构的数据源中;即通过服务端连接、文件接口、API接口等方法,将数据回写至各数据源中;
7、索引反查模块:根据索引信息从异构数据源中快速定位和取出对应数据。即可通过客户端连接、API接口等方法,从数据源查询和导出数据。
基于同一发明构思,本发明实施例中还提供了一种多源异构的数据关联查询方法,该方法包括:
S1:中间索引装置为多个异构数据源中待关联信息建立索引信息并存储;
S2:接口装置接收数据查询请求,对数据查询请求进行拆分,将拆分后的数据查询请求发送至所述中间索引装置;
S3:中间索引装置对所述拆分后的数据查询请求进行解析,确定数据查询请求中待查询关联信息的逻辑连接方式,根据所述待查询关联信息的逻辑连接方式确定数据查询处理方式;
S4:中间索引装置和多个异构数据源根据所述数据查询处理方式完成数据查询操作;
其中,接口装置与多个异构数据源连接;
所述数据查询处理方式包括:在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述所述方法的计算机程序。
综上所述,本发明提出的多源异构的数据关联查询方法及系统具有如下优点:
通过在中间索引装置为多个异构数据源中待关联信息建立索引信息并存储,基于索引信息进行信息查询,这样通过提前完成数据关联,无需每次查询重新对全量数据进行关联,减少数据存储的磁盘扫描量,大大优化查询效率;基于索引信息确定数据查询处理方式,数据查询处理方式包括在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源,这样使得数据存储与计算并非完全分离,大大节约数据在网络传输之间的开销。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (13)

1.一种多源异构的数据关联查询系统,其特征在于,包括:多个异构数据源、中间索引装置、接口装置;
所述接口装置用于:与所述多个异构数据源连接;接收数据查询请求,对数据查询请求进行拆分,将拆分后的数据查询请求发送至所述中间索引装置;
所述中间索引装置用于:为多个异构数据源中待关联信息建立索引信息并存储;对所述拆分后的数据查询请求进行解析,确定数据查询请求中待查询关联信息的逻辑连接方式,根据所述待查询关联信息的逻辑连接方式确定数据查询处理方式;
所述中间索引装置和多个异构数据源用于:根据所述数据查询处理方式完成数据查询操作;
其中,所述数据查询处理方式包括:在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源。
2.如权利要求1所述的多源异构的数据关联查询系统,其特征在于,所述中间索引装置具体用于:
按照如下方式存储所述索引信息:
主键/_id/行键Rowkey的数据存储;
或,key-value型的数据存储;
或,使用哈希表缓存的方式存储。
3.如权利要求2所述的多源异构的数据关联查询系统,其特征在于,所待关联信息包括多个异构数据源中的关联的数据表以及数据表中的关联相关字段信息;
当以key-value型的数据存储时,所述索引信息中的key值为关联相关字段取值,所述索引信息中的value值为关联相关字段所在的数据源、所在数据表及在数据表中的存储位置信息。
4.如权利要求3所述的多源异构的数据关联查询系统,其特征在于,所述中间索引装置具体用于:
将所述索引信息中的key值排序后进行存储。
5.如权利要求1所述的多源异构的数据关联查询系统,其特征在于,所述多个异构数据源用于:触发所述中间索引装置进行索引信息构建。
6.如权利要求1所述的多源异构的数据关联查询系统,其特征在于,所述中间索引装置具体用于:
定时扫描多个异构数据源,根据所述多个异构数据源的数据增量来确定构建索引信息。
7.如权利要求3所述的多源异构的数据关联查询系统,其特征在于,所述接口装置具体用于:
对数据查询请求进行拆分,将所述数据查询请求拆成数据源信息、数据存储位置信息、过滤筛选条件信息和数据关联逻辑信息,将所述数据源信息、数据存储位置信息、过滤筛选条件信息和数据关联逻辑信息发送至所述中间索引装置;
所述中间索引装置具体用于:
对所述数据源信息、数据存储位置信息、过滤筛选条件信息和数据关联逻辑信息进行逻辑分析,确定所述数据查询处理方式。
8.如权利要求7所述的多源异构的数据关联查询系统,其特征在于,所述中间索引装置具体用于:
对所述数据源信息、数据存储位置信息、过滤筛选条件信息和数据关联逻辑信息进行逻辑分析,判断查询是否存在于多个异构数据源之间,若否,则将数据查询请求下发至对应的异构数据源进行单独查询,接收对应的异构数据源返回的查询结果,若是,则判断待查询关联信息的逻辑连接方式是否为全外连接;
若是全外连接,则将数据查询请求分发至对应的异构数据源进行相应的查询,接收多个异构数据源返回的查询结果,对所述查询结果进行合并处理,若不是全外连接,则判断待查询关联信息的逻辑连接方式是否为其他连接方式,其中,所述其他连接方式包括哈希连接、排序合并连接、半连接、反连接、内连接、外连接;
若为哈希连接,则从所述索引信息中找到关联的双方字段都在记录中有对应数据源存储的索引信息;
若为排序合并连接,则根据所述索引信息中key值的排序信息,筛选出索引列之间的排序关联,构造出新的索引关系;
若为半连接或反连接,则将相应的索引信息写入内层表所在异构数据源中,接收内层表所在异构数据源对相应的索引信息进行过滤后的索引信息,将过滤后的索引信息写入外层表所在异构数据源,接收外层表所在异构数据源根据过滤后的索引信息进行数据查询后获得的查询结果;
若为内连接或外连接,则根据相应的索引信息将数据查询请求分发至关联的多个异构数据源,接收多个异构数据源查询并过滤后返回的数据,对所述数据进行关联合并。
9.如权利要求1所述的多源异构的数据关联查询系统,其特征在于,所述中间索引装置还用于:
统计索引信息的容量,当所述索引信息的容量小于配置阈值时,将所述索引信息回写至多个异构数据源。
10.如权利要求9所述的多源异构的数据关联查询系统,其特征在于,所述中间索引装置具体用于:
将所述索引信息以外部表、索引组织表、数据表或数据文件形式回写至多个异构数据源。
11.一种多源异构的数据关联查询方法,其特征在于,包括:
中间索引装置为多个异构数据源中待关联信息建立索引信息并存储;
接口装置接收数据查询请求,对数据查询请求进行拆分,将拆分后的数据查询请求发送至所述中间索引装置;
中间索引装置对所述拆分后的数据查询请求进行解析,确定数据查询请求中待查询关联信息的逻辑连接方式,根据所述待查询关联信息的逻辑连接方式确定数据查询处理方式;
中间索引装置和多个异构数据源根据所述数据查询处理方式完成数据查询操作;
其中,接口装置与多个异构数据源连接;
所述数据查询处理方式包括:在多个异构数据源进行数据查询筛选,筛选结果返回至所述中间索引装置进行关联合并,或,将相应的索引信息写入相应的异构数据源,对相应的索引信息进行筛选,根据筛选后的索引信息进行数据查询,将查询结果返回至多个异构数据源。
12.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求11所述方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求11所述方法的计算机程序。
CN201911079874.XA 2019-11-07 2019-11-07 多源异构的数据关联查询方法及系统 Active CN110837585B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911079874.XA CN110837585B (zh) 2019-11-07 2019-11-07 多源异构的数据关联查询方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911079874.XA CN110837585B (zh) 2019-11-07 2019-11-07 多源异构的数据关联查询方法及系统

Publications (2)

Publication Number Publication Date
CN110837585A true CN110837585A (zh) 2020-02-25
CN110837585B CN110837585B (zh) 2022-12-20

Family

ID=69576205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911079874.XA Active CN110837585B (zh) 2019-11-07 2019-11-07 多源异构的数据关联查询方法及系统

Country Status (1)

Country Link
CN (1) CN110837585B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111443970A (zh) * 2020-03-24 2020-07-24 山东浪潮通软信息科技有限公司 一种组装多来源数据的方法、装置、设备及可读介质
CN111552720A (zh) * 2020-04-26 2020-08-18 北京师范大学珠海分校 分布式多源异构数据场景下的基础统计指标获取方法
CN111767328A (zh) * 2020-06-04 2020-10-13 北京思特奇信息技术股份有限公司 一种通过接口查询数据的方法
CN111897875A (zh) * 2020-07-31 2020-11-06 平安科技(深圳)有限公司 城市多源异构数据的融合处理方法、装置和计算机设备
CN112685444A (zh) * 2020-12-24 2021-04-20 江苏苏宁云计算有限公司 数据查询方法、装置、计算机设备和存储介质
CN112732758A (zh) * 2020-12-31 2021-04-30 北京明朝万达科技股份有限公司 异构数据处理方法、装置、电子设备和可读存储介质
CN113903421A (zh) * 2021-10-11 2022-01-07 上海柯林布瑞信息技术有限公司 一种医疗科研表单数据的快速处理方法和装置
CN113918238A (zh) * 2021-09-27 2022-01-11 中盈优创资讯科技有限公司 一种基于Flink的异构数据源同步方法及装置
WO2023029275A1 (zh) * 2021-09-02 2023-03-09 广州广电运通金融电子股份有限公司 数据关联分析方法、装置、计算机设备和存储介质
CN117056316A (zh) * 2023-10-10 2023-11-14 之江实验室 一种多源异构数据关联查询加速方法、装置及设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101685449A (zh) * 2008-09-26 2010-03-31 国际商业机器公司 一种用于连接多个异构分布式数据库中的表的方法和系统
US20140032593A1 (en) * 2012-07-25 2014-01-30 Ebay Inc. Systems and methods to process a query with a unified storage interface
CN103838824A (zh) * 2014-01-23 2014-06-04 北京东方泰坦科技股份有限公司 一种用于空间信息分析的云计算中间件技术
US20150120747A1 (en) * 2013-10-30 2015-04-30 Netapp, Inc. Techniques for searching data associated with devices in a heterogeneous data center
CN108009236A (zh) * 2017-11-29 2018-05-08 北京锐安科技有限公司 一种大数据查询方法、系统、计算机及存储介质
CN108090154A (zh) * 2017-12-08 2018-05-29 广州市申迪计算机系统有限公司 一种异构多源数据融合查询方法及装置
CN108920552A (zh) * 2018-06-19 2018-11-30 浙江工业大学 一种面向多源大数据流的分布式索引方法
CN109144994A (zh) * 2017-06-19 2019-01-04 华为技术有限公司 索引更新方法、系统及相关装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101685449A (zh) * 2008-09-26 2010-03-31 国际商业机器公司 一种用于连接多个异构分布式数据库中的表的方法和系统
US20140032593A1 (en) * 2012-07-25 2014-01-30 Ebay Inc. Systems and methods to process a query with a unified storage interface
US20150120747A1 (en) * 2013-10-30 2015-04-30 Netapp, Inc. Techniques for searching data associated with devices in a heterogeneous data center
CN103838824A (zh) * 2014-01-23 2014-06-04 北京东方泰坦科技股份有限公司 一种用于空间信息分析的云计算中间件技术
CN109144994A (zh) * 2017-06-19 2019-01-04 华为技术有限公司 索引更新方法、系统及相关装置
CN108009236A (zh) * 2017-11-29 2018-05-08 北京锐安科技有限公司 一种大数据查询方法、系统、计算机及存储介质
CN108090154A (zh) * 2017-12-08 2018-05-29 广州市申迪计算机系统有限公司 一种异构多源数据融合查询方法及装置
CN108920552A (zh) * 2018-06-19 2018-11-30 浙江工业大学 一种面向多源大数据流的分布式索引方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
YUN XIONG等: "Top-k Similarity Join in Heterogeneous Information Networks", 《IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING 》 *
薛皓: "基于分布式数据库中间件的混合类型数据管理研究", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》 *
郭勇等: "地理空间信息服务构件技术研究", 《地理空间信息》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111443970A (zh) * 2020-03-24 2020-07-24 山东浪潮通软信息科技有限公司 一种组装多来源数据的方法、装置、设备及可读介质
CN111443970B (zh) * 2020-03-24 2023-11-03 浪潮通用软件有限公司 一种组装多来源数据的方法、装置、设备及可读介质
CN111552720B (zh) * 2020-04-26 2023-05-02 北京师范大学珠海分校 分布式多源异构数据场景下的基础统计指标获取方法
CN111552720A (zh) * 2020-04-26 2020-08-18 北京师范大学珠海分校 分布式多源异构数据场景下的基础统计指标获取方法
CN111767328A (zh) * 2020-06-04 2020-10-13 北京思特奇信息技术股份有限公司 一种通过接口查询数据的方法
CN111897875A (zh) * 2020-07-31 2020-11-06 平安科技(深圳)有限公司 城市多源异构数据的融合处理方法、装置和计算机设备
WO2021135323A1 (zh) * 2020-07-31 2021-07-08 平安科技(深圳)有限公司 城市多源异构数据的融合处理方法、装置和计算机设备
CN112685444A (zh) * 2020-12-24 2021-04-20 江苏苏宁云计算有限公司 数据查询方法、装置、计算机设备和存储介质
CN112732758A (zh) * 2020-12-31 2021-04-30 北京明朝万达科技股份有限公司 异构数据处理方法、装置、电子设备和可读存储介质
CN112732758B (zh) * 2020-12-31 2024-06-14 北京明朝万达科技股份有限公司 异构数据处理方法、装置、电子设备和可读存储介质
WO2023029275A1 (zh) * 2021-09-02 2023-03-09 广州广电运通金融电子股份有限公司 数据关联分析方法、装置、计算机设备和存储介质
CN113918238A (zh) * 2021-09-27 2022-01-11 中盈优创资讯科技有限公司 一种基于Flink的异构数据源同步方法及装置
CN113903421B (zh) * 2021-10-11 2022-04-12 上海柯林布瑞信息技术有限公司 一种医疗科研表单数据的快速处理方法和装置
CN113903421A (zh) * 2021-10-11 2022-01-07 上海柯林布瑞信息技术有限公司 一种医疗科研表单数据的快速处理方法和装置
CN117056316A (zh) * 2023-10-10 2023-11-14 之江实验室 一种多源异构数据关联查询加速方法、装置及设备
CN117056316B (zh) * 2023-10-10 2024-01-26 之江实验室 一种多源异构数据关联查询加速方法、装置及设备

Also Published As

Publication number Publication date
CN110837585B (zh) 2022-12-20

Similar Documents

Publication Publication Date Title
CN110837585B (zh) 多源异构的数据关联查询方法及系统
US20200301941A1 (en) Large scale unstructured database systems
US20220405284A1 (en) Geo-scale analytics with bandwidth and regulatory constraints
US10216793B2 (en) Optimization of continuous queries in hybrid database and stream processing systems
US10073885B2 (en) Optimizer statistics and cost model for in-memory tables
US9158812B2 (en) Enhancing parallelism in evaluation ranking/cumulative window functions
Simitsis et al. Optimizing ETL processes in data warehouses
US9576028B2 (en) Managing data queries
US20170116271A1 (en) Static data caching for queries with a clause that requires multiple iterations to execute
US9830372B2 (en) Scalable coordination aware static partitioning for database replication
JP6207619B2 (ja) ソース追跡によるデータのプロファイリング
US6112198A (en) Optimization of data repartitioning during parallel query optimization
US9244838B2 (en) System, method, and computer-readable medium for grouping database level object access counts per processing module in a parallel processing system
US11003649B2 (en) Index establishment method and device
US10565201B2 (en) Query processing management in a database management system
US9390129B2 (en) Scalable and adaptive evaluation of reporting window functions
EP2686764A1 (en) Data source analytics
US20110022581A1 (en) Derived statistics for query optimization
US9594804B2 (en) Dynamic reordering of operations in a query plan
CN104731969A (zh) 分布式环境下海量数据连接聚集查询方法、装置和系统
Phan et al. Toward intersection filter-based optimization for joins in mapreduce
Wang et al. Efficient query processing framework for big data warehouse: an almost join-free approach
KR101955376B1 (ko) 비공유 아키텍처 기반의 분산 스트림 처리 엔진에서 관계형 질의를 처리하는 방법, 이를 수행하기 위한 기록 매체 및 장치
CN105589969A (zh) 一种数据处理方法及装置
CN114969110A (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
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: Room 702-2, No. 4811, Cao'an Highway, Jiading District, Shanghai

Patentee after: CHINA UNITECHS

Address before: 100872 5th floor, Renmin culture building, 59 Zhongguancun Street, Haidian District, Beijing

Patentee before: CHINA UNITECHS