CN110119402A - 数据查询方法、装置、设备及存储介质 - Google Patents

数据查询方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN110119402A
CN110119402A CN201810076709.8A CN201810076709A CN110119402A CN 110119402 A CN110119402 A CN 110119402A CN 201810076709 A CN201810076709 A CN 201810076709A CN 110119402 A CN110119402 A CN 110119402A
Authority
CN
China
Prior art keywords
data
query statement
federal
data query
screening
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
CN201810076709.8A
Other languages
English (en)
Other versions
CN110119402B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201810076709.8A priority Critical patent/CN110119402B/zh
Publication of CN110119402A publication Critical patent/CN110119402A/zh
Application granted granted Critical
Publication of CN110119402B publication Critical patent/CN110119402B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/242Query formulation
    • G06F16/2433Query languages
    • 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/25Integrating or interfacing systems involving database management systems

Landscapes

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

Abstract

本申请提供了一种数据查询方法、装置、设备及存储介质,涉及数据库领域。该数据查询方法,应用于一个进程中,包括:接收混合查询语句,将混合查询语句分解为图形数据查询语句和联邦数据查询语句,图形数据查询语句和联邦数据查询语句包含筛选查询条件;根据混合查询语句分解出的图形数据查询语句和联邦数据查询语句的优先级,确定图形数据查询语句和联邦数据查询语句的执行顺序,执行顺序在先的查询语句的输出为执行顺序在后的查询语句的输入,查询语句包括图形数据查询语句或联邦数据查询语句;按照执行顺序,依次执行图形数据查询语句和联邦数据查询语句,将符合筛选查询条件的数据作为查询结果。利用本申请的技术方案能够提高数据查询效率。

Description

数据查询方法、装置、设备及存储介质
技术领域
本发明涉及数据库领域,尤其涉及一种数据查询方法、装置、设备及存储介质。
背景技术
数据库是按照数据结构来组织、存储和管理数据的仓库。一个系统中可包括多个数据库,而一个复杂的业务流程往往需要查询多个数据库。为了可在多个数据库中进行数据查询,可采用数据联邦(即Data federation)技术。数据联邦技术,即将多个同构或异构数据库形成单个虚拟数据库,并统一访问入口。也就是说,采用数据联邦技术,可通过一个访问入口,访问多个数据库。除了可将多个数据库形成单个虚拟数据库以外,单个虚拟数据库还可支持文件或网络服务(即WebService)等数据源。
数据库可包括关系数据库、图形数据库以及网络服务等数据库。关系数据库借助于集合代数等概念和方法来处理数据。图形数据库以具有顶点、边和属性的图形结构来表示和存储数据,是一种非关系型数据库。在用户需要查询多种数据库,比如关系数据库与网络服务等形成的数据联邦数据库和图形数据库中的数据的情况下,需要开发人员分别编写联邦查询语句和图形数据查询语句。数据联邦查询引擎在一个进程中执行联邦数据查询语句,图形查询引擎在另一个进程中执行图形数据查询语句。开发人员还需要编写驱动语句,从而利用驱动语句将两个进程中的图形数据查询和联邦数据查询联系起来。整个数据查询过程需要在联邦数据查询的进程和图形数据查询的进程之间进行多次通信,使得数据查询效率较低。
发明内容
本申请提供了一种数据查询方法、装置、设备及存储介质,能够提高数据查询效率。
第一方面,本申请提供了一种数据查询方法,应用于一个进程中,数据查询方法包括:接收混合查询语句,将混合查询语句分解为图形数据查询语句和联邦数据查询语句,图形数据查询语句和联邦数据查询语句均包含筛选查询条件;根据混合查询语句分解出的图形数据查询语句和联邦数据查询语句的优先级,确定图形数据查询语句和联邦数据查询语句的执行顺序,执行顺序在先的查询语句的输出为执行顺序在后的查询语句的输入,查询语句包括图形数据查询语句或联邦数据查询语句;按照执行顺序,依次执行图形数据查询语句和联邦数据查询语句,将符合筛选查询条件的数据作为查询结果。
其中,接收混合查询语句,并能够将混合查询语句分解为图形数据查询语句和联邦数据查询语句,按照执行顺序执行图形数据查询语句和联邦数据查询语句,执行顺序在先的查询语句的输出作为执行顺序在后的查询语句的输入。从而将图形数据查询和联邦数据查询结合在一个进程中进行。不需要分别将图形数据查询和联邦数据查询分为多个进程进行,避免了数据查询过程中多个进程之间进行的多次通信,从而提高了数据查询效率。而且,执行顺序在先的查询语句的输出作为执行顺序在后的查询语句的输入,也可在执行顺序在先的查询语句的过程中,先过滤掉一部分冗余数据,从而降低数据查询过程中合并冗余数据的工作量,进一步提高了数据查询效率。
由于可识别混合查询语句,并能根据混合查询语句自动得到包括图形数据查询和联邦数据查询的数据查询的查询结果,不需要开发人员或操作人员编写大量的不同步骤的语句代码,简化了数据查询的工作量,也提高了数据查询效率。
在第一方面的一些实施例中,执行顺序为图形数据查询语句在联邦数据查询语句之前执行,图形数据查询语句包括图形筛选查询条件,联邦数据查询语句包括联邦筛选查询条件;依次执行图形数据查询语句和联邦数据查询语句,将符合筛选查询条件的数据作为查询结果,包括:执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据;基于混合查询语句的投影要求,将图形输出数据中投影出的数据作为执行联邦数据查询语句的输入数据,执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据;基于图形输出数据和联邦输出数据,得到查询结果
先执行图像数据查询语句,将符合图形筛选查询条件的图形输出数据投影出的数据作为执行联邦数据查询语句的输入,从而过滤掉一部分不符合图形筛选查询条件的冗余数据,降低后面执行联邦数据查询语句的工作量,提高了数据查询效率。
在第一方面的一些实施例中,执行顺序为联邦数据查询语句在图形数据查询语句之前执行,图形数据查询语句包括图形筛选查询条件,联邦数据查询语句包括联邦筛选查询条件;依次执行图形数据查询语句和联邦数据查询语句,将符合筛选查询条件的数据作为查询结果,包括:执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据;基于混合查询语句的投影要求,将联邦输出数据中投影出的数据作为执行图形数据查询语句的输入数据,执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据;基于图形输出数据和联邦输出数据,得到查询结果。
先执行联邦数据查询语句,将符合联邦筛选查询条件的联邦输出数据投影出的数据作为执行图形数据查询语句的输入,从而过滤掉一部分不符合联邦筛选查询条件的冗余数据,降低后面执行图形数据查询语句的工作量,提高了数据查询效率。
在第一方面的一些实施例中,执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据,包括:根据图形数据库中各顶点之间的连通关系,基于图形筛选查询条件,筛选得到符合图形筛选查询条件的链表;从符合图形筛选查询条件的链表中抽取顶点的属性信息,并利用属性信息,生成第一游标,将第一游标作为图形输出数据。
根据符合图形筛选查询条件的链表中顶点的属性信息,生成第一游标。将第一游标作为图形输出数据,同时也可作为执行联邦数据查询语句的输入,使得图形数据查询和联邦数据查询之间可共享游标,以便完成不同数据源的数据查询。
在第一方面的一些实施例中,第一游标包括顶点属性二维表。
在第一方面的一些实施例中,将图形输出数据中投影出的数据作为执行联邦数据查询语句的输入数据,包括:控制第一游标输出投影出的一条数据,将输出的投影出的一条数据作为执行联邦数据查询语句的输入以驱动联邦数据查询语句的执行;接收执行联邦数据查询语句生成的反馈信息,控制第一游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行联邦数据查询语句的输入以驱动联邦数据查询语句的执行,直至控制第一游标中投影出的数据全部输出。
不需要开发人员或操作人员编写驱动语句,第一游标输出投影出的数据可直接驱动联邦数据查询语句的执行。简化了开发人员或操作人员需要编写的语句代码,简化了数据查询的工作量,也提高了数据查询效率。而且,也避免被驱动的联邦数据语句的执行取回不满足联邦筛选查询条件的数据,提高了数据查询的效率。
在第一方面的一些实施例中,执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据,包括:在非图形数据库中获取初始数据;依据初始数据中符合联邦筛选查询条件的数据,生成第二游标,并将第二游标作为联邦输出数据。
根据符合联邦筛选查询条件的数据,生成第二游标。将第二游标作为联邦输出数据,同时也可作为执行图形数据查询语句的输入,使得图形数据查询和联邦数据查询之间可共享游标,以便完成不同数据源的数据查询。
在第一方面的一些实施例中,将联邦输出数据中投影出的数据作为执行图形数据查询语句的输入数据,包括:控制第二游标输出投影出的一条数据,将输出的投影出的一条数据作为执行图形数据查询语句的输入以驱动图形数据查询语句的执行;接收执行图形数据查询语句生成的反馈信息,控制第二游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行图形数据查询语句的输入以驱动图形数据查询语句的执行,直至控制第二游标中投影出的数据全部输出。
不需要开发人员或操作人员编写驱动语句,第二游标输出投影出的数据可直接驱动联邦数据查询语句的执行。简化了开发人员或操作人员需要编写的语句代码,简化了数据查询的工作量,也提高了数据查询效率。而且,也避免被驱动的图形数据语句的执行取回不满足图形筛选查询条件的数据,提高了数据查询的效率。
在第一方面的一些实施例中,基于图形输出数据和联邦输出数据,得到查询结果,包括:合并图形输出数据和联邦数据,得到合并数据,将合并数据作为查询结果。
数据合并可去除冗余重复数据,还可将联邦输出数据和图形输出数据中投影出的数据对应但并不重复的数据进行合并,从而减少冗余数据。
在第一方面的一些实施例中,将混合查询语句分解为图形数据查询语句和联邦数据查询语句,包括:识别混合查询语句中的特定功能词,根据特定功能词划分图形筛选查询条件和联邦筛选查询条件;依据图形筛选查询条件和联邦筛选查询条件分别生成图形数据查询语句和联邦数据查询语句。
可将混合查询语句自动分解为图形数据查询语句和联邦数据查询语句,不需要开发人员或操作人员分别编写在不同进程中的图形数据查询语句和联邦数据查询语句,从而提高数据查询的效率。
第二方面,本申请提供了一种数据查询装置,用于在一个进程中进行混合查询;数据查询装置包括:分解模块,用于接收混合查询语句,将混合查询语句分解为图形数据查询语句和联邦数据查询语句,图形数据查询语句和联邦数据查询语句均包含筛选查询条件;顺序确定模块,用于根据混合查询语句分解出的图形数据查询语句和联邦数据查询语句的优先级,确定图形数据查询语句和联邦数据查询语句的执行顺序,执行顺序在先的查询语句的输出为执行顺序在后的查询语句的输入,查询语句包括图形数据查询语句或联邦数据查询语句;查询执行模块,用于按照执行顺序,依次执行图形数据查询语句和联邦数据查询语句,将符合筛选查询条件的数据作为查询结果。
在第二方面的一些实施例中,执行顺序为图形数据查询语句在联邦数据查询语句之前执行,图形数据查询语句包括图形筛选查询条件,联邦数据查询语句包括联邦筛选查询条件;查询执行模块具体用于:执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据;基于混合查询语句的投影要求,将图形输出数据中投影出的数据作为执行联邦数据查询语句的输入数据,执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据;基于图形输出数据和联邦输出数据,得到查询结果。
在第二方面的一些实施例中,执行顺序为联邦数据查询语句在图形数据查询语句之前执行,图形数据查询语句包括图形筛选查询条件,联邦数据查询语句包括联邦筛选查询条件;查询执行模块具体用于:执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据;基于混合查询语句的投影要求,将联邦输出数据中投影出的数据作为执行图形数据查询语句的输入数据,执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据;基于图形输出数据和联邦输出数据,得到查询结果。
在第二方面的一些实施例中,查询执行模块具体用于:根据图形数据库中各顶点之间的连通关系,基于图形筛选查询条件,筛选得到符合图形筛选查询条件的链表;从符合图形筛选查询条件的链表中抽取顶点的属性信息,并利用属性信息,生成第一游标,将第一游标作为图形输出数据。
在第二方面的一些实施例中,第一游标包括顶点属性二维表。
在第二方面的一些实施例中,查询执行模块具体用于:控制第一游标输出投影出的一条数据,将输出的投影出的一条数据作为执行联邦数据查询语句的输入以驱动联邦数据查询语句的执行;接收执行联邦数据查询语句生成的反馈信息,控制第一游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行联邦数据查询语句的输入以驱动联邦数据查询语句的执行,直至控制第一游标中投影出的数据全部输出。
在第二方面的一些实施例中,查询执行模块具体用于:在非图形数据库中获取初始数据;依据初始数据中符合联邦筛选查询条件的数据,生成第二游标,并将第二游标作为联邦输出数据。
在第二方面的一些实施例中,查询执行模块具体用于:控制第二游标输出投影出的一条数据,将输出的投影出的一条数据作为执行图形数据查询语句的输入以驱动图形数据查询语句的执行;接收执行图形数据查询语句生成的反馈信息,控制第二游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行图形数据查询语句的输入以驱动图形数据查询语句的执行,直至控制第二游标中投影出的数据全部输出。
在第二方面的一些实施例中,查询执行模块具体用于:合并图形输出数据和联邦数据,得到合并数据,将合并数据作为查询结果。
在第二方面的一些实施例中,分解模块具体用于:识别混合查询语句中的特定功能词,根据特定功能词划分图形筛选查询条件和联邦筛选查询条件;依据图形筛选查询条件和联邦筛选查询条件分别生成图形数据查询语句和联邦数据查询语句。
第二方面以及第二方面的一些实施例中的数据查询装置也可达到与上述技术方案中的数据查询方法相同的技术效果。
第三方面,本申请提供了一种数据查询设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现如上述技术方案中的数据查询方法,可达到与上述技术方案中的数据查询方法相同的技术效果。
第四方面,本申请提供了一种存储介质,其上存储有程序,程序被处理器执行时实现如上述技术方案中的数据查询方法,可达到与上述技术方案中的数据查询方法相同的技术效果。
附图说明
图1为本申请实施例中一种数据查询系统的示意图;
图2为本申请实施例中一种数据查询方法的流程图;
图3为本申请实施例中符合图形筛选查询条件的链表的示例示意图;
图4为本申请一实施例中一种数据查询装置的结构示意图;
图5为本申请一实施例中的一种数据查询设备的硬件结构示意图。
具体实施方式
本申请实施例提供了一种数据查询方法、装置、设备及存储介质,应用于图形数据库和非图形数据库的混合查询,非图形数据库可为关系型数据库、网络服务、文件等数据源,也可为利用数据联邦技术将多个同构或异构的关系型数据库、非关系型数据库(简称为NoSQL)、网络服务、文件等数据源联合等同于一个数据库。这里的混合查询指对图形数据和非图形数据的查询。在本申请实施例中,以非图形数据库为利用数据联邦技术将多个同构或异构的数据库合成的一个数据库为例进行说明,则混合查询指对图形数据和联邦数据的查询。查询利用数据联邦技术合成的数据库即为联邦数据查询。
图1为本申请实施例中一种数据查询系统的示意图。如图1所示,数据查询系统包括混合查询引擎10、关系型数据库11、网络服务12和图形数据库13。关系型数据库11和网络服务12可通过数据联邦技术联合。其中,混合查询引擎10包括联邦查询子引擎101和图形查询子引擎102。混合查询引擎10可接收混合查询语句。联邦查询子引擎101可进行联邦数据查询。图形查询子引擎102可进行图形数据查询。
图2为本申请实施例中一种数据查询方法的流程图。本申请实施例中数据查询方法应用在一个进程中。也就是说,本申请实施例中数据查询方法中的所有步骤均在一个进程中进行。如图2所示,数据查询方法可包括步骤S201至步骤S203。
在步骤S201中,接收混合查询语句,将混合查询语句分解为图形数据查询语句和联邦数据查询语句。
混合查询语句的查询包括图形数据的查询和联邦数据的查询。混合查询语句可以是用户自定义的语句格式,混合查询语句中可包括图形筛选查询条件和联邦筛选查询条件。比如,混合查询语句为:
在上述混合查询语句中包括了图形数据的查询和联邦数据的查询。其中,图形筛选查询条件为“V(Tenant).out(VPN2atomService).out(Service2Resource)”,也就是说,图形筛选查询条件包括租户、虚拟专用网络(Virtual Private Network,VPN)依赖的原子服务和原子服务依赖的资源(即通信设备)。联邦筛选查询条件为“bandwidth>10M”和“available=1”,也就是说,联邦筛选查询条件包括通信设备的带宽大于10M,网络服务器控制的通信设备的状态为可用状态。
具体的,可对混合查询语句进行词法分析和语法分析,识别出混合查询语句中的图形筛选查询条件和联邦查询条件,从而将混合查询语句分解为图形数据查询语句和联邦数据查询语句。分解得到的图形数据查询语句可视为图形数据查询任务,分解得到的联邦数据查询语句可视为联邦数据查询任务。图形数据查询语句和联邦数据查询语句均包含筛选查询条件,即图形数据查询语句包含图形筛选查询条件,联邦数据查询语句包含联邦筛选查询条件。图形数据查询语句用于进行图形数据库的查询,联邦数据查询语句用于进行利用数据联邦联合的数据库的查询。
在一个示例中,可识别混合查询语句中的特定功能词,根据特定功能词划分图形筛选查询条件和联邦筛选查询条件。依据图形筛选查询条件和联邦筛选查询条件分别生成图形数据查询语句和联邦数据查询语句。比如,混合查询语句中的“out”以及“filter”可作为划分图形筛选查询条件的特定功能词,可根据“out”后的内容以及“filter”后的内容提取图形筛选查询条件。混合查询语句中的“where”可作为划分联邦筛选查询条件的特定功能词,可根据“where”后的内容提取联邦筛选查询条件。根据图形筛选查询条件生成图形数据查询语句,根据联邦筛选查询条件生成联邦数据查询语句。
在步骤S202中,根据混合查询语句分解出的图形数据查询语句和联邦数据查询语句的优先级,确定图形数据查询语句和联邦数据查询语句的执行顺序。
图形数据查询语句和联邦数据查询语句的优先级,可根据混合查询语句分析图形数据查询语句和联邦数据查询语句的执行顺序对整个数据查询过程的影响而设定。比如,预先分析图形数据查询语句和联邦数据查询语句的不同执行顺序各自对应的整个数据查询过程占用资源的多少。或者,预先分析图形数据查询语句和联邦数据查询语句的不同执行顺序各自对应的整个数据查询过程花费时长的长短。可选取整个数据查询过程占用资源更少对应的图形数据查询语句和联邦数据查询语句的执行顺序,也可选取整个数据查询过程花费时长更短对应的图形数据查询语句和联邦数据查询语句的执行顺序。
在一个示例中,可以先执行优先级高的数据查询语句,后执行优先级低的数据查询语句。比如,图形数据查询语句的优先级高于联邦数据查询语句,则先执行图形数据查询语句,后执行联邦数据查询语句。或者,联邦数据查询语句的优先级高于图形数据查询语句,则先执行联邦数据查询语句,后执行图形数据查询语句。
在另一个示例中,可以先执行优先级低的数据查询语句,后执行优先级高的数据查询语句。比如,图形数据查询语句的优先级高于联邦数据查询语句,则先执行联邦数据查询语句,后执行图形数据查询语句。或者,联邦数据查询语句的优先级高于图形数据查询语句,则先执行图形数据查询语句,后执行联邦数据查询语句。
在本申请实施例中,执行顺序在先的查询语句的输出为执行顺序在后的查询语句的输入。查询语句包括图形数据查询语句或联邦数据查询语句。也就是说经过执行顺序在先查询语句的过滤筛选,已经排除了一部分不符合筛选查询条件的数据,避免了对无关数据进行的部分查询遍历,从而节省了数据查询所花费的资源,加快了数据查询的时间,提高了数据查询的效率。
在步骤S203中,按照执行顺序,依次执行图形数据查询语句和联邦数据查询语句,将符合筛选查询条件的数据作为查询结果。
按照在步骤S202中得到的图形数据查询语句和联邦数据查询语句的执行顺序,执行图形数据查询语句和联邦数据查询语句。查询结果为符合图形筛选查询条件和联邦筛选查询条件的数据。
在一个示例中,查询语句的执行顺序为图形数据查询语句在联邦数据查询语句之前执行。具体的,可执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据。基于混合查询语句的投影要求,将图形输出数据中投影出的数据作为执行联邦数据查询语句的输入数据,执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据。基于图形输出数据和联邦输出数据,得到查询结果。
在另一个实施例中,查询语句的执行顺序为联邦数据查询语句在图形数据查询语句之前执行。具体的,可执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据。基于混合查询语句的投影要求,将联邦输出数据中投影出的数据作为执行图形数据查询语句的输入数据,执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据。基于图形输出数据和联邦输出数据,得到查询结果。
其中,图形数据查询语句用于在图形数据库中进行数据查询。图形数据库中包括多个顶点和边,顶点通过边来连接。顶点中存储有数据项即属性信息。属性信息为存储的数据,属性信息可包括身份标识以及特定场景下的特定信息等。比如,若图形数据库中存储的是广域网中的各个网元的信息,则属性信息可包括网元身份标识、网元占用带宽以及网元工作状态等。若图形数据库中存储的是公司工作人员信息,则属性信息可包括工作人员姓名、工作人员职位以及工作人员电话号码等。边表示连接的两个节点的关系。相连的顶点即存在连通关系。在本申请实施例中,可根据图形数据库中各顶点之间的连通关系,基于图形筛选查询条件,筛选得到符合图形筛选查询条件的链表。链表包括符合图形筛选查询条件的顶点以及表示顶点之间关系的边。可从符合图形筛选查询条件的链表中抽取顶点的属性信息,利用属性信息,生成第一游标。游标为一段私有的数据库工作区,也可视为一段内存区域,游标可用于存储受到数据库操作语句影响的数据。在本申请实施例中,第一游标可存放受到图形数据查询语句影响且符合图形筛选查询条件的数据。可将第一游标作为执行图形数据查询语句的输出,也可作为执行联邦数据查询语句的输入。
在图形数据库中图形数据查询可采用图遍历的方式进行。具体的,可在图形数据库中获取初始顶点。在图形数据查询语句先于联邦数据查询语句执行的情况下,可在图形数据库中的顶点中选取一个或多个顶点作为初始顶点。初始顶点的选取可随机选取,也可有目的性的选取,具体选取方式在此并不限定。在联邦数据查询语句先于图形数据查询语句执行的情况下,执行联邦数据查询语句输出的数据作为初始顶点。
获取与初始顶点具有连通关系的顶点,并筛选得到第一目标顶点。第一目标顶点为与初始顶点具有连通关系的顶点中符合图形筛选查询条件的顶点。获取与第一目标顶点具有连通关系的顶点,并筛选得到第二目标顶点。第二目标顶点为与第一目标顶点具有连通关系的顶点中符合图形筛选查询条件的顶点。以此类推,直至获取与第N目标顶点具有连通关系的顶点,并筛选得到第N目标顶点。第N目标顶点为与N-1目标顶点具有连通关系的顶点中符合图形筛选查询条件的顶点。第N目标顶点无具有连通关系的顶点,或者,第N目标顶点具有连通关系的顶点中无符合图形筛选查询条件的顶点。N为大于等于2的整数。利用第一目标顶点对应的属性信息至第N目标顶点对应的属性信息,生成第一游标。
也就是说,将图形数据库中的图形数据查询分解为多度查询。第一度查询为筛选得到第一目标顶点的查询过程。第二度查询为筛选得到第二目标顶点的查询过程。以此类推,第N度查询为筛选得到第N目标顶点的查询过程。将多度查询的结果封装为第一游标。
在一个示例中,第一游标包括顶点属性二维表。顶点数据二维表中记录有符合图形筛选查询条件的链表中抽取出的顶点的属性信息。比如,图3为本申请实施例中符合图形筛选查询条件的链表的示例示意图。如图3所示,符合图形筛选查询条件的链表表示从深圳到北京的虚拟专用网络,该链表包括7个顶点,分别为位于深圳的交换机switch(sz)、路由器route1、光通信设备fiber1、光通信设备fiber2、光通信设备fiber3、路由器route2和位于北京的交换机switch(bj)。将顶点的属性信息抽取,可生成如下的表一所示的顶点属性二维表。第一游标可包括如下的顶点属性二维表。其中,null表示空,即无信息。RRPP为快速环网保护协议(Rapid Ring Protection Protocol)。RIP为路由信息协议(RoutingInformation Protocol)。
表一
执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据,可具体实现为在非图形数据库中获取初始数据。在先执行图形数据查询语句,后执行联邦数据查询语句的场景中,初始数据为执行图形数据查询语句的输出数据。依据初始数据中符合联邦筛选查询条件的数据,生成第二游标,并将第二游标作为联邦输出数据。第二游标包括二维表。通过第一游标和第二游标的共享,实现不同的数据源之间的查询操作,减少了开发人员或操作人员需要编写的代码,避免了复杂的编码过程,简化了需要在不同数据源中进行数据查询的语句代码。
基于投影要求投影出的数据为操作人员期望关注的数据。比如,图形输出数据包括用户标识、网元名称、占用带宽、工作状态、用户联系方式,操作人员期望关注图形输出数据中的用户标识、网元名称和工作状态,则基于混合查询语句的投影要求从图形输出数据中投影出的数据为用户标识、网元名称和工作状态。若图形数据查询语句先于联邦数据查询语句执行,将图形输出数据中投影出的数据作为后面执行联邦数据查询语句的输入数据。
将图形输出数据中投影出的数据作为执行联邦数据查询语句的输入数据,可具体实现为控制第一游标每次输出投影出的一条数据,将输出的投影出的一条数据作为执行联邦数据查询语句的输入,从而驱动联邦数据查询语句的执行。也就是说,不需要开发人员或操作人员编写驱动语句,第一游标输出投影出的数据可直接驱动联邦数据查询语句的执行。接收执行联邦数据查询语句生成的反馈信息,控制第一游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行联邦数据查询语句的输入驱动联邦数据查询语句的执行,以此类推,直至控制第一游标中投影出的数据全部输出。
执行联邦数据查询的引擎根据接收到的第一游标输出投影出的一条数据,驱动联邦数据查询语句的执行。若联邦数据查询语句执行后发现第一游标输出投影出的这一条数据不符合联邦筛选查询条件,则返回的反馈信息可为空集。执行图形数据查询的引擎接收到空集的反馈信息,立即输出投影出的下一条数据,再次驱动联邦数据语句的执行。若联邦数据查询语句执行后发现第一游标输出投影出的这一条数据符合联邦筛选查询条件,则返回的反馈信息包括满足条件标识。执行图形数据查询的引擎接收到包括满足条件标识的反馈信息,立即输出投影出的下一条数据,再次驱动联邦数据语句的执行。从而避免被驱动的联邦数据语句的执行取回不满足联邦筛选查询条件的数据,提高了数据查询的效率。
又比如,联邦输出数据包括学生姓名、学生学号、数学成绩、语文成绩和英语成绩,操作人员期望关注联邦输出数据中的学生姓名和学生学号,则基于混合查询语句的投影要求从联邦输出数据中投影出的数据为学生姓名和学生学号。若联邦数据查询语句先于图形数据查询语句执行,将联邦输出数据中投影出的数据作为后面执行图形数据查询语句的输入数据。
将联邦输出数据中投影出的数据作为执行图形数据查询语句的输入数据,可具体实现为控制第二游标每次输出投影出的一条数据,将输出的投影出的一条数据作为执行图形数据查询语句的输入,从而驱动图形数据查询语句的执行。也就是说,不需要开发人员或操作人员编写驱动语句,第二游标输出投影出的数据可直接驱动图形数据查询语句的执行。接收执行图形数据查询语句生成的反馈信息,控制第二游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行图形数据查询语句的输入以驱动联邦数据查询语句的执行,以此类推,直至控制第二游标中投影出的数据全部输出。
执行图形数据查询的引擎根据接收到的第二游标输出投影出的一条数据,驱动图形数据查询语句的执行。若图形数据查询语句执行后发现第二游标输出投影出的这一条数据不符合图形筛选查询条件,则返回的反馈信息可为空集。执行联邦数据查询的引擎接收到空集的反馈信息,立即输出投影出的下一条数据,再次驱动图形数据语句的执行。若图形数据查询语句执行后发现第二游标输出投影出的这一条数据符合图形筛选查询条件,则返回的反馈信息包括满足条件标识。执行联邦数据查询的引擎接收到包括满足条件标识的反馈信息,立即输出投影出的下一条数据,再次驱动图形数据语句的执行。从而避免被驱动的图形数据语句的执行取回不满足图形筛选查询条件的数据,提高了数据查询的效率。
在得到图形输出数据和联邦输出数据后,可对图形输出数据和联邦输出数据合并。这里的合并一方面有去除冗余重复数据的作用,另一方面可将联邦输出数据和图形输出数据中投影出的数据对应但并不重复的数据进行合并。比如,图形输出数据包括两组数据,每组数据均包括网元标识和网元的工作状态。第一组数据中网元标识为A1,网元的工作状态为可用状态。第二组数据中网元标识为A2,网元的工作状态为不可用状态。图形输出数据作为执行联邦数据查询语句的输入数据进行联邦数据查询。联邦输出数据包括一组数据,这一组数据包括网元标识和网元工作的占用带宽,这一组数据中网元标识为A1,网元工作的占用带宽为10M。则经过图形输出数据和联邦输出数据的合并,得到的查询结果包括网元标识A1、网元的工作状态可用状态和网元工作的占用带宽10M。
需要说明的是,在对图形输出数据和联邦输出数据合并的过程中,还可根据具体的工作需求对图形输出数据和联邦输出数据进行计算和加工。比如,进行统计计数等操作。最终可将查询结果打包为协议要求的格式发送给查询方。
本申请实施例提供的数据查询方法,接收混合查询语句,并能够将混合查询语句分解为图形数据查询语句和联邦数据查询语句,按照执行顺序执行图形数据查询语句和联邦数据查询语句,执行顺序在先的查询语句的输出作为执行顺序在后的查询语句的输入。从而将图形数据查询和联邦数据查询结合在一个进程中进行。不需要分别将图形数据查询和联邦数据查询分为多个进程进行,避免了数据查询过程中多个进程之间进行的多次通信,从而提高了数据查询效率。而且,执行顺序在先的查询语句的输出作为执行顺序在后的查询语句的输入,也可在执行顺序在先的查询语句的过程中,先过滤掉一部分冗余数据,从而降低数据查询过程中合并冗余数据的工作量,进一步提高了数据查询效率。
由于可识别混合查询语句,并能根据混合查询语句自动得到包括图形数据查询和联邦数据查询的数据查询的查询结果,不需要开发人员或操作人员编写大量的不同步骤的语句代码,简化了数据查询的工作量,也提高了数据查询效率。
在一个示例中,若采用现有技术进行包括图形数据的查询和联邦数据的查询的混合查询,需要开发人员或操作人员编写的语句代码的量非常庞大。而利用本申请实施例中的数据查询方法进行包括图形数据的查询和联邦数据的查询的混合查询,开发人员或操作人员只需要编写少量的语句代码即可。比如,在查询条件相同的情况下,现有技术需要开发人员或操作人员编写的语句代码如下:
由此可以得到,本申请实施例中的数据查询方法极大程度的简化了开发人员和操作人员需要编写的查询语句的量,简化了数据查询的过程,大幅度地提高了数据查询效率。
图4为本申请一实施例中一种数据查询装置300的结构示意图。该数据查询装置300用于在一个进程中进行混合查询。如图4所示,数据查询装置300包括分解模块301、顺序确定模块302和查询执行模块303。
分解模块301,用于接收混合查询语句,将混合查询语句分解为图形数据查询语句和联邦数据查询语句。
其中,图形数据查询语句和联邦数据查询语句均包含筛选查询条件。
顺序确定模块302,用于根据混合查询语句分解出的图形数据查询语句和联邦数据查询语句的优先级,确定图形数据查询语句和联邦数据查询语句的执行顺序。
其中,执行顺序在先的查询语句的输出为执行顺序在后的查询语句的输入,查询语句包括图形数据查询语句或联邦数据查询语句。
查询执行模块303,用于按照执行顺序,依次执行图形数据查询语句和联邦数据查询语句,将符合筛选查询条件的数据作为查询结果。
在一个示例中,执行顺序为图形数据查询语句在联邦数据查询语句之前执行。查询执行模块303可具体用于:执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据;基于混合查询语句的投影要求,将图形输出数据中投影出的数据作为执行联邦数据查询语句的输入数据,执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据;基于图形输出数据和联邦输出数据,得到查询结果。其中,图形数据查询语句包括图形筛选查询条件,联邦数据查询语句包括联邦筛选查询条件。
在另一个示例中,执行顺序为联邦数据查询语句在图形数据查询语句之前执行。查询执行模块303可具体用于:执行联邦数据查询语句,得到符合联邦筛选查询条件的联邦输出数据;基于混合查询语句的投影要求,将联邦输出数据中投影出的数据作为执行图形数据查询语句的输入数据,执行图形数据查询语句,得到符合图形筛选查询条件的图形输出数据;基于图形输出数据和联邦输出数据,得到查询结果。其中,图形数据查询语句包括图形筛选查询条件,联邦数据查询语句包括联邦筛选查询条件。
上述查询执行模块还可具体用于:根据图形数据库中各顶点之间的连通关系,基于图形筛选查询条件,筛选得到符合图形筛选查询条件的链表;从符合图形筛选查询条件的链表中抽取顶点的属性信息,并利用属性信息,生成第一游标,将第一游标作为图形输出数据。
上述的第一游标可包括顶点属性二维表。
上述查询执行模块303可具体用于:控制第一游标输出投影出的一条数据,将输出的投影出的一条数据作为执行联邦数据查询语句的输入以驱动联邦数据查询语句的执行;接收执行联邦数据查询语句生成的反馈信息,控制第一游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行联邦数据查询语句的输入以驱动联邦数据查询语句的执行,直至控制第一游标中投影出的数据全部输出。
上述查询执行模块303可具体用于:在非图形数据库中获取初始数据;依据初始数据中符合联邦筛选查询条件的数据,生成第二游标,并将第二游标作为联邦输出数据。
上述查询执行模块303可具体用于:控制第二游标输出投影出的一条数据,将输出的投影出的一条数据作为执行图形数据查询语句的输入以驱动图形数据查询语句的执行;接收执行图形数据查询语句生成的反馈信息,控制第二游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行图形数据查询语句的输入以驱动图形数据查询语句的执行,直至控制第二游标中投影出的数据全部输出。
查询执行模块303具体用于:合并图形输出数据和联邦数据,得到合并数据,将合并数据作为查询结果。
在一个示例中,上述分解模块301可具体用于:识别混合查询语句中的特定功能词,根据特定功能词划分图形筛选查询条件和联邦筛选查询条件;依据图形筛选查询条件和联邦筛选查询条件分别生成图形数据查询语句和联邦数据查询语句。
关于上述数据查询装置中各个模块的功能可参见上述实施例中步骤S201至步骤S203的相关说明内容,在此不再赘述。
本申请实施例提供的数据查询方法,接收混合查询语句,并能够将混合查询语句分解为图形数据查询语句和联邦数据查询语句,按照执行顺序执行图形数据查询语句和联邦数据查询语句,执行顺序在先的查询语句的输出作为执行顺序在后的查询语句的输入。从而将图形数据查询和联邦数据查询结合在一个进程中进行。不需要分别将图形数据查询和联邦数据查询分为多个进程进行,避免了数据查询过程中多个进程之间进行的多次通信,从而提高了数据查询效率。而且,执行顺序在先的查询语句的输出作为执行顺序在后的查询语句的输入,也可在执行顺序在先的查询语句的过程中,先过滤掉一部分冗余数据,从而降低数据查询过程中合并冗余数据的工作量,进一步提高了数据查询效率。
由于可识别混合查询语句,并能根据混合查询语句自动得到包括图形数据查询和联邦数据查询的数据查询的查询结果,不需要开发人员或操作人员编写大量的不同步骤的语句代码,简化了数据查询的工作量,也提高了数据查询效率。
结合图1至图4描述的根据本申请实施例的数据查询设备方法和装置可以由数据查询设备400来实现。图5为本申请一实施例中的一种数据查询设备400的硬件结构示意图。
数据查询设备400包括存储器401、处理器402及存储在存储器401上并可在处理器402上运行的计算机程序。
在一个示例中,上述处理器402可以包括中央处理器(CPU),或者特定集成电路(ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
存储器401可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器401可包括HDD、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器401可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器401可在数据查询设备400的内部或外部。在特定实施例中,存储器401是非易失性固态存储器。在特定实施例中,存储器401包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
处理器402通过读取存储器401中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行上述各个实施例中的数据查询方法。
在一个示例中,数据查询设备400还可包括通信接口403和总线404。其中,如图5所示,存储器401、处理器402、通信接口403通过总线404连接并完成相互间的通信。
通信接口403,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。也可通信接口403接入输入设备和/或输出设备。
总线404包括硬件、软件或两者,将数据查询设备400的部件彼此耦接在一起。举例来说而非限制,总线404可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线404可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
本申请一实施例还提供一种存储介质,该存储介质上存储有程序,该程序被处理器执行时可实现上述各个实施例中的数据查询方法。
本说明书的各个部分均采用递进的方式进行描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点介绍的都是与其他实施例不同之处。尤其,对于装置实施例、设备实施例和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例部分的说明即可。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (22)

1.一种数据查询方法,其特征在于,应用于一个进程中,所述数据查询方法包括:
接收混合查询语句,将所述混合查询语句分解为图形数据查询语句和联邦数据查询语句,所述图形数据查询语句和所述联邦数据查询语句均包含筛选查询条件;
根据所述混合查询语句分解出的所述图形数据查询语句和所述联邦数据查询语句的优先级,确定图形数据查询语句和联邦数据查询语句的执行顺序,执行顺序在先的查询语句的输出为执行顺序在后的查询语句的输入,所述查询语句包括图形数据查询语句或联邦数据查询语句;
按照所述执行顺序,依次执行图形数据查询语句和联邦数据查询语句,将符合所述筛选查询条件的数据作为查询结果。
2.根据权利要求1所述的方法,其特征在于,所述执行顺序为图形数据查询语句在所述联邦数据查询语句之前执行,所述图形数据查询语句包括图形筛选查询条件,所述联邦数据查询语句包括联邦筛选查询条件;
所述依次执行图形数据查询语句和联邦数据查询语句,将符合所述筛选查询条件的数据作为查询结果,包括:
执行所述图形数据查询语句,得到符合所述图形筛选查询条件的图形输出数据;
基于所述混合查询语句的投影要求,将所述图形输出数据中投影出的数据作为执行所述联邦数据查询语句的输入数据,执行所述联邦数据查询语句,得到符合所述联邦筛选查询条件的联邦输出数据;
基于所述图形输出数据和所述联邦输出数据,得到查询结果。
3.根据权利要求1所述的方法,其特征在于,所述执行顺序为联邦数据查询语句在所述图形数据查询语句之前执行,所述图形数据查询语句包括图形筛选查询条件,所述联邦数据查询语句包括联邦筛选查询条件;
所述依次执行图形数据查询语句和联邦数据查询语句,将符合所述筛选查询条件的数据作为查询结果,包括:
执行所述联邦数据查询语句,得到符合所述联邦筛选查询条件的联邦输出数据;
基于所述混合查询语句的投影要求,将所述联邦输出数据中投影出的数据作为执行所述图形数据查询语句的输入数据,执行所述图形数据查询语句,得到符合所述图形筛选查询条件的图形输出数据;
基于所述图形输出数据和所述联邦输出数据,得到查询结果。
4.根据权利要求2或3所述的方法,其特征在于,所述执行所述图形数据查询语句,得到符合所述图形筛选查询条件的图形输出数据,包括:
根据图形数据库中各顶点之间的连通关系,基于所述图形筛选查询条件,筛选得到符合所述图形筛选查询条件的链表;
从符合所述图形筛选查询条件的链表中抽取顶点的属性信息,并利用所述属性信息,生成第一游标,将所述第一游标作为所述图形输出数据。
5.根据权利要求4所述的方法,其特征在于,所述第一游标包括顶点属性二维表。
6.根据权利要求4所述的方法,其特征在于,所述将所述图形输出数据中投影出的数据作为执行所述联邦数据查询语句的输入数据,包括:
控制所述第一游标输出投影出的一条数据,将输出的投影出的一条数据作为执行所述联邦数据查询语句的输入以驱动所述联邦数据查询语句的执行;
接收执行所述联邦数据查询语句生成的反馈信息,控制所述第一游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行所述联邦数据查询语句的输入以驱动所述联邦数据查询语句的执行,直至控制所述第一游标中投影出的数据全部输出。
7.根据权利要求2或3所述的方法,其特征在于,所述执行所述联邦数据查询语句,得到符合所述联邦筛选查询条件的联邦输出数据,包括:
在非图形数据库中获取初始数据;
依据所述初始数据中符合所述联邦筛选查询条件的数据,生成第二游标,并将所述第二游标作为所述联邦输出数据。
8.根据权利要求7所述的方法,其特征在于,所述将所述联邦输出数据中投影出的数据作为执行所述图形数据查询语句的输入数据,包括:
控制所述第二游标输出投影出的一条数据,将输出的投影出的一条数据作为执行所述图形数据查询语句的输入以驱动所述图形数据查询语句的执行;
接收执行所述图形数据查询语句生成的反馈信息,控制所述第二游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行所述图形数据查询语句的输入以驱动所述图形数据查询语句的执行,直至控制所述第二游标中投影出的数据全部输出。
9.根据权利要求2至8中任意一项所述的方法,其特征在于,所述基于所述图形输出数据和所述联邦输出数据,得到查询结果,包括:
合并所述图形输出数据和所述联邦数据,得到合并数据,将所述合并数据作为所述查询结果。
10.根据权利要求1至9中任意一项所述的方法,其特征在于,将所述混合查询语句分解为图形数据查询语句和联邦数据查询语句,包括:
识别所述混合查询语句中的特定功能词,根据所述特定功能词划分图形筛选查询条件和联邦筛选查询条件;
依据所述图形筛选查询条件和所述联邦筛选查询条件分别生成图形数据查询语句和联邦数据查询语句。
11.一种数据查询装置,其特征在于,用于在一个进程中进行混合查询;所述数据查询装置包括:
分解模块,用于接收混合查询语句,将所述混合查询语句分解为图形数据查询语句和联邦数据查询语句,所述图形数据查询语句和所述联邦数据查询语句均包含筛选查询条件;
顺序确定模块,用于根据所述混合查询语句分解出的所述图形数据查询语句和所述联邦数据查询语句的优先级,确定图形数据查询语句和联邦数据查询语句的执行顺序,执行顺序在先的查询语句的输出为执行顺序在后的查询语句的输入,所述查询语句包括图形数据查询语句或联邦数据查询语句;
查询执行模块,用于按照所述执行顺序,依次执行图形数据查询语句和联邦数据查询语句,将符合所述筛选查询条件的数据作为查询结果。
12.根据权利要求11所述的装置,其特征在于,所述执行顺序为图形数据查询语句在所述联邦数据查询语句之前执行,所述图形数据查询语句包括图形筛选查询条件,所述联邦数据查询语句包括联邦筛选查询条件;
所述查询执行模块具体用于:
执行所述图形数据查询语句,得到符合所述图形筛选查询条件的图形输出数据;
基于所述混合查询语句的投影要求,将所述图形输出数据中投影出的数据作为执行所述联邦数据查询语句的输入数据,执行所述联邦数据查询语句,得到符合所述联邦筛选查询条件的联邦输出数据;
基于所述图形输出数据和所述联邦输出数据,得到查询结果。
13.根据权利要求11所述的装置,其特征在于,所述执行顺序为联邦数据查询语句在所述图形数据查询语句之前执行,所述图形数据查询语句包括图形筛选查询条件,所述联邦数据查询语句包括联邦筛选查询条件;
所述查询执行模块具体用于:
执行所述联邦数据查询语句,得到符合所述联邦筛选查询条件的联邦输出数据;
基于所述混合查询语句的投影要求,将所述联邦输出数据中投影出的数据作为执行所述图形数据查询语句的输入数据,执行所述图形数据查询语句,得到符合所述图形筛选查询条件的图形输出数据;
基于所述图形输出数据和所述联邦输出数据,得到查询结果。
14.根据权利要求12或13所述的装置,其特征在于,所述查询执行模块具体用于:
根据图形数据库中各顶点之间的连通关系,基于所述图形筛选查询条件,筛选得到符合所述图形筛选查询条件的链表;
从符合所述图形筛选查询条件的链表中抽取顶点的属性信息,并利用所述属性信息,生成第一游标,将所述第一游标作为所述图形输出数据。
15.根据权利要求14所述的装置,其特征在于,所述第一游标包括顶点属性二维表。
16.根据权利要求14所述的装置,其特征在于,所述查询执行模块具体用于:
控制所述第一游标输出投影出的一条数据,将输出的投影出的一条数据作为执行所述联邦数据查询语句的输入以驱动所述联邦数据查询语句的执行;
接收执行所述联邦数据查询语句生成的反馈信息,控制所述第一游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行所述联邦数据查询语句的输入以驱动所述联邦数据查询语句的执行,直至控制所述第一游标中投影出的数据全部输出。
17.根据权利要求12或13所述的装置,其特征在于,所述查询执行模块具体用于:
在非图形数据库中获取初始数据;
依据所述初始数据中符合所述联邦筛选查询条件的数据,生成第二游标,并将所述第二游标作为所述联邦输出数据。
18.根据权利要求17所述的装置,其特征在于,所述查询执行模块具体用于:
控制所述第二游标输出投影出的一条数据,将输出的投影出的一条数据作为执行所述图形数据查询语句的输入以驱动所述图形数据查询语句的执行;
接收执行所述图形数据查询语句生成的反馈信息,控制所述第二游标输出投影出的下一条数据,将输出的投影出的下一条数据作为执行所述图形数据查询语句的输入以驱动所述图形数据查询语句的执行,直至控制所述第二游标中投影出的数据全部输出。
19.根据权利要求12至18中任意一项所述的装置,其特征在于,所述查询执行模块具体用于:
合并所述图形输出数据和所述联邦数据,得到合并数据,将所述合并数据作为所述查询结果。
20.根据权利要求11至19中任意一项所述的装置,其特征在于,所述分解模块具体用于:
识别所述混合查询语句中的特定功能词,根据所述特定功能词划分图形筛选查询条件和联邦筛选查询条件;
依据所述图形筛选查询条件和所述联邦筛选查询条件分别生成图形数据查询语句和联邦数据查询语句。
21.一种数据查询设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如权利要求1至10中任意一项所述的数据查询方法。
22.一种存储介质,其特征在于,其上存储有程序,所述程序被处理器执行时实现如权利要求1至10中任意一项所述的数据查询方法。
CN201810076709.8A 2018-01-26 2018-01-26 数据查询方法、装置、设备及存储介质 Active CN110119402B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810076709.8A CN110119402B (zh) 2018-01-26 2018-01-26 数据查询方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810076709.8A CN110119402B (zh) 2018-01-26 2018-01-26 数据查询方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110119402A true CN110119402A (zh) 2019-08-13
CN110119402B CN110119402B (zh) 2021-09-07

Family

ID=67519129

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810076709.8A Active CN110119402B (zh) 2018-01-26 2018-01-26 数据查询方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110119402B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113821501A (zh) * 2021-08-12 2021-12-21 马上消费金融股份有限公司 一种数据归档方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102163195A (zh) * 2010-02-22 2011-08-24 北京东方通科技股份有限公司 一种基于分布式、异构数据库统一视图的查询优化方法
CN103210386A (zh) * 2011-05-11 2013-07-17 华为技术有限公司 混合联合搜索的方法、系统和设备
CN105224613A (zh) * 2015-09-17 2016-01-06 西安未来国际信息股份有限公司 基于数据联邦技术的异构数据源整合系统及其整合方法
US9348880B1 (en) * 2015-04-01 2016-05-24 Palantir Technologies, Inc. Federated search of multiple sources with conflict resolution
CN106294499A (zh) * 2015-06-09 2017-01-04 阿里巴巴集团控股有限公司 一种数据库数据查询方法和设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102163195A (zh) * 2010-02-22 2011-08-24 北京东方通科技股份有限公司 一种基于分布式、异构数据库统一视图的查询优化方法
CN103210386A (zh) * 2011-05-11 2013-07-17 华为技术有限公司 混合联合搜索的方法、系统和设备
US9348880B1 (en) * 2015-04-01 2016-05-24 Palantir Technologies, Inc. Federated search of multiple sources with conflict resolution
CN106294499A (zh) * 2015-06-09 2017-01-04 阿里巴巴集团控股有限公司 一种数据库数据查询方法和设备
CN105224613A (zh) * 2015-09-17 2016-01-06 西安未来国际信息股份有限公司 基于数据联邦技术的异构数据源整合系统及其整合方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113821501A (zh) * 2021-08-12 2021-12-21 马上消费金融股份有限公司 一种数据归档方法及装置
CN113821501B (zh) * 2021-08-12 2023-05-16 马上消费金融股份有限公司 一种数据归档方法及装置

Also Published As

Publication number Publication date
CN110119402B (zh) 2021-09-07

Similar Documents

Publication Publication Date Title
Rabaey et al. Fast prototyping of datapath-intensive architectures
US6966050B2 (en) Software building support system
EP0560619B1 (en) Method and apparatus for designing computer programs for business
US10782935B2 (en) Method and system to provide a generalized framework for dynamic creation of module analytic applications
CN113127150B (zh) 云原生系统的快速部署方法、装置、电子设备和存储介质
CN108984160A (zh) 基于组件化的信息化快速开发框架及方法
US7107559B2 (en) Method of partitioning an integrated circuit design for physical design verification
CN113159618A (zh) 一种技术视角分离的规则引擎设计方法和装置
Kiourtis et al. An Autoscaling Platform Supporting Graph Data Modelling Big Data Analytics.
CN106815317A (zh) 一种基于不同数据库的数据复制方法及系统
CN109408103A (zh) 配置文件的设置方法、装置、设备及介质
Thuijsman et al. Computational effort of BDD-based supervisor synthesis of extended finite automata
CN110119402A (zh) 数据查询方法、装置、设备及存储介质
CN109542398B (zh) 一种业务系统生成方法、装置及计算机可读存储介质
EP2052325B1 (en) Reduction of message flow between bus-connected consumers and producers
CN116431668A (zh) 基于元数据采集的数据血缘分析方法、装置及电子设备
CN113485686B (zh) 信息系统程序的生成方法、装置、电子设备及存储介质
JPH0194431A (ja) ソフトウェア部品合成装置
KR20100062787A (ko) 차량 오픈 시스템 아키텍처에서의 응용 소프트웨어 구조 생성 방법 및 장치
US6636988B1 (en) Application of automation and procedures to enable high-speed recovery and relocation of computer workloads
CN112015535B (zh) 任务处理方法、装置、电子设备、存储介质
CN111526034B (zh) 路由集中管理方法、装置、电子装置及存储介质
CN114936269A (zh) 文档搜索平台、搜索方法、装置、电子设备及存储介质
CN110020765B (zh) 一种业务流程的切换方法和装置
KR102386822B1 (ko) 산업용 확장현실 컨텐츠 플랫폼에서 다중 사용자를 위한 업무 할당 및 컨텐츠 저작 방법 및 장치

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