CN114911824A - 基于查询树的数据库中间件跨节点Join查询方法 - Google Patents

基于查询树的数据库中间件跨节点Join查询方法 Download PDF

Info

Publication number
CN114911824A
CN114911824A CN202110177117.7A CN202110177117A CN114911824A CN 114911824 A CN114911824 A CN 114911824A CN 202110177117 A CN202110177117 A CN 202110177117A CN 114911824 A CN114911824 A CN 114911824A
Authority
CN
China
Prior art keywords
sql query
tree
node
database
sql
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
CN202110177117.7A
Other languages
English (en)
Other versions
CN114911824B (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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202110177117.7A priority Critical patent/CN114911824B/zh
Publication of CN114911824A publication Critical patent/CN114911824A/zh
Application granted granted Critical
Publication of CN114911824B publication Critical patent/CN114911824B/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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • 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

Landscapes

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

Abstract

本公开涉及一种基于查询树的数据库中间件跨节点Join查询方法,包含步骤:构建SQL查询计划树,包含:将SQL查询语句转化为关系演算表达式,所述关系演算表达式对应于SQL查询计划树的根节点,对所述关系演算表达式进行元组演算,以确定能够依次下发到SQL查询计划树中下一层的元组和运算;将与SQL查询计划树中的叶子节点对应的元组和运算下发到数据库节点,以执行子SQL查询;构建SQL查询结果树,包含:以所述子SQL查询的查询结果作为SQL查询结果树的叶子节点,根据SQL查询结果树的叶子节点,通过SQL查询计划树中各节点所定义的元组和运算,按照从SQL查询结果树中叶子节点的父节点到根节点的顺序依次得到SQL查询结果树的非叶子节点。

Description

基于查询树的数据库中间件跨节点Join查询方法
技术领域
本公开总体上涉及用于访问分布式数据库的中间件。
背景技术
随着信息化的发展,各领域的IT系统每时每刻都会产生大量的数据。而传统的单数据库架构难以适用数据量的急剧增长,因此分布式数据库系统应运而生,同时也促进了数据库中间件技术的发展。
现有的数据库中间件(例如MyCat)在跨节点Join查询时存在着一些问题:在分库或分表的情况下,数据库中间件MyCat跨节点Join查询主要有三种实现方法,分别是全局表、ER Join和Share Join。这三种方法对跨节点Join查询的处理方式是直接将查询语句简单拆分下发到各个数据库节点,然后将结果进行简单汇总。这样的现有技术在遇到复杂聚合、过滤等操作的情况下,无法进行有效处理,并且查询结果可能不正确。
发明内容
在下文中给出了关于本公开的简要概述,以便提供关于本公开的一些方面的基本理解。但是,应当理解,这个概述并不是关于本公开的穷举性概述。它并不是意图用来确定本公开的关键性部分或重要部分,也不是意图用来限定本公开的范围。其目的仅仅是以简化的形式给出关于本公开的某些概念,以此作为稍后给出的更详细描述的前序。
根据本公开的一个方面,提供一种基于查询树的数据库中间件跨节点Join查询方法,包含步骤:
构建SQL查询计划树,包含:
对SQL查询语句进行词法、语法和语义分析,以将SQL查询语句转化为关系演算表达式,所述关系演算表达式对应于SQL查询计划树的根节点,
对所述关系演算表达式进行元组演算,以确定能够依次下发到SQL查询计划树中下一层的元组和运算,其中能够下发到数据库节点执行的元组和运算对应于SQL查询计划树中的叶子节点,其中不能够下发到数据库节点执行的元组和运算对应于SQL查询计划树中的非叶子节点,
将与SQL查询计划树中的叶子节点对应的元组和运算下发到数据库节点,以执行子SQL查询,
构建SQL查询结果树,包含:
以所述子SQL查询的查询结果作为SQL查询结果树的叶子节点,
根据SQL查询结果树的叶子节点,通过SQL查询计划树中各节点所定义的元组和运算,按照从SQL查询结果树中叶子节点的父节点到根节点的顺序依次得到SQL查询结果树的非叶子节点,其中,SQL查询结果树的根节点对应于SQL查询语句的结果。
根据本发明的另一方面,提供一种基于查询树的数据库中间件跨节点Join查询装置,包括:
存储器,其上存储有指令;以及
处理器,被配置为执行存储在所述存储器上的指令,以执行上述方法。
根据本发明的另一方面,提供一种计算机可读存储介质,包括计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行上述方法。
根据本发明的另一方面,提供一种计算机程序产品,包括计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行上述方法。
以下通过本发明的优选的实施方式的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更清楚地理解本公开,其中:
图1示出了数据库中间件的应用环境的示意图;
图2示出了根据本发明的基于查询树的数据库中间件跨节点Join查询方法的流程图;
图3示出了SQL查询计划树的示例;
图4示出了包含SQL查询结果树的示例;
图5示出了能够实现根据本公开的实施例的计算设备的示例性配置。
具体实施方式
参考附图进行以下详细描述,并且提供以下详细描述以帮助全面理解本公开的各种示例实施例。以下描述包括各种细节以帮助理解,但是这些细节仅被认为是示例,而不是为了限制本公开,本公开是由随附权利要求及其等同内容限定的。在以下描述中使用的词语和短语仅用于能够清楚一致地理解本公开。另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
图1示出了数据库中间件的应用环境的示意图。数据库中间件介于数据库(DB)与应用程序(APP)之间,进行数据处理和交互的中间服务。它主要实现了分库分表、读写分离等功能。有了数据库中间件,应用程序不用再处理分片集群、数据源切换、事务处理、数据聚合等操作。作为优选的典型例子,所述数据库是分布式数据库。分布式数据库通常包括多个物理节点。
作为分布式数据库的具体示例,例如超市有商品表(goods)和销售详单表(sales)。销售详单表数据很多,对销售详单表进行拆表,假如按照日期来拆,按天将详单表拆成N片。商品表也因数据量大被拆分到各分片存储。
这里仅仅例示了两个分片节点DN1和DN2。作为例示,销售详情表在两个分片节点DN1和DN2上分别存储的是日期为“20190211”和“20190212”的数据。商品表按照中间件分片规则将商品数据分散存储到两个分片节点DN1和DN2。下面的表例示了两个分片节点DN1和DN2中数据的具体情况。
Figure BDA0002941020460000041
Figure BDA0002941020460000042
图2示出了根据本发明的基于查询树的数据库中间件跨节点Join查询方法的流程图。
首先,在步骤S201中,构建SQL查询计划树,包含:对SQL查询语句进行词法、语法和语义分析,以将SQL查询语句转化为关系演算表达式,所述关系演算表达式对应于SQL查询计划树的根节点,对所述关系演算表达式进行元组演算,以确定能够依次下发到SQL查询计划树中下一层的元组和运算,其中能够下发到数据库节点执行的元组和运算对应于SQL查询计划树中的叶子节点,其中不能够下发到数据库节点执行的元组和运算对应于SQL查询计划树中的非叶子节点。
在本发明的基于查询树的数据库中间件跨节点Join查询方法中,利用了关系数据模型理论。对于包含Join查询的SQL查询,可以通过对查询Join语句转化后进行元组演算,构建适用于多节点情况下的SQL查询计划树,并且下发子SQL到各个节点执行,得到子SQL查询结果,以及依据查询计划树生成最终结果。即,查询计划树依据的是关系代数和关系演算理论,通过对SQL解析,可以转化为关系演算表达式,然后对该表达式进行元组演算,能够确定可依次下放的元组和运算,从而构造成树形结构的SQL查询计划树。
然后,在步骤S202中,将与SQL查询计划树中的叶子节点对应的元组和运算下发到数据库节点,以执行子SQL查询。所述子SQL查询在对应的数据库节点中被执行。
基于子SQL查询的结果,在步骤S203中,构建SQL查询结果树,包含:以所述子SQL查询的查询结果作为SQL查询结果树的叶子节点,根据SQL查询结果树的叶子节点,通过SQL查询计划树中各节点所定义的元组和运算,按照从SQL查询结果树中叶子节点的父节点到根节点的顺序依次得到SQL查询结果树的非叶子节点,其中,SQL查询结果树的根节点对应于SQL查询语句的结果。
作为可以的步骤,还可以进一步将SQL查询语句的结果返回给上层的应用程序。
以下将更加具体地结合如下SQL查询语句例示地说明本发明。
select g.type,count(distinct s.barcode)as type_cnt from goods g innerjoin sales s on s.barcode=g.barcode; (1)
首先如步骤S201所述构建SQL查询计划树。对SQL查询语句进行词法、语法和语义分析,可以将SQL查询语句转化为如下关系演算表达式。
Figure BDA0002941020460000051
Figure BDA0002941020460000061
上述关系演算表达式(2)对应于SQL查询计划树的根节点。在本示例中,COUNT聚函数运算在数据汇总时执行,作为树的顶级父节点。
然后,对所述关系演算表达式(2)进行元组演算,以确定能够依次下发到SQL查询计划树中下一层的元组和运算。具体而言,通过对所述关系演算表达式(2)进行元组演算,确定了能够下发到SQL查询计划树中下一层的元组g.barcode=s.barcode。元组g.barcode=s.barcode不能下发到数据库节点执行,因为g和s的数据分散存储在各节点,执行对应SQL操作会造成结果错误。在本示例中,元组g.barcode=s.barcode作为树的次级父节点。在本发明中,涉及到分散存储在不同数据库节点的数据的元组和运算不被下发到数据库节点执行。
再然后通过进一步进行元组演算,确定SQL查询计划树中再下一层的元组和运算。具体而言,元组
Figure BDA0002941020460000062
Figure BDA0002941020460000063
被确定为SQL查询计划树中再下一层的元组和运算。由于元组
Figure BDA0002941020460000064
Figure BDA0002941020460000065
可以下发到各数据库节点执行,它们对应的子SQL查询语句为如下语句(3)和(4):
SQL1:select*from goods g; (3)
SQL2:select*from sales s; (4)
在本发明中,能够下发到数据库节点执行的元组和运算(例如,元组
Figure BDA0002941020460000066
Figure BDA0002941020460000067
)对应于SQL查询计划树中的叶子节点,其中不能够下发到数据库节点执行的元组和运算(例如元组g.barcode=s.barcode以及COUNT聚函数运算)对应于SQL查询计划树中的非叶子节点。在本发明中,对应于SQL查询计划树中非叶子节点的元组和运算不被下发到数据库节点执行;对应于SQL查询计划树中叶子节点的元组和运算被下发到数据库节点执行。
在如上具体例示的例子中,所构建的SQL查询计划树如图3所示。
以上例示说明了如步骤S201所述构建SQL查询计划树。
然后,如步骤S202所述,将与SQL查询计划树中的叶子节点对应的元组和运算(例如,元组
Figure BDA0002941020460000071
Figure BDA0002941020460000072
)下发到数据库节点,以执行子SQL查询(例如,上述子SQL查询语句(3)和(4))。
上述子SQL查询的结果被用于构建SQL查询结果树。
具体而言,如步骤S203所述,以所述子SQL查询的查询结果作为SQL查询结果树的叶子节点。
在以上具体例示的分布式数据库的情况下,上述子SQL查询语句(3)和(4)均涉及数据库分片节点DN1和数据库分片节点DN2,因此需要将子SQL查询语句(3)在数据库分片节点DN1的查询结果SQL1和在数据库分片节点DN2的查询结果SQL1进行合并,以得到子SQL查询语句(3)的结果MERGE1;类似地,需要将子SQL查询语句(4)在数据库分片节点DN1的查询结果SQL2和在数据库分片节点DN2的查询结果SQL2进行合并,以得到子SQL查询语句(4)的结果MERGE2。
并且,通过SQL查询计划树中各节点所定义的元组和运算,按照从SQL查询结果树中叶子节点的父节点到根节点的顺序依次得到SQL查询结果树的非叶子节点,其中,SQL查询结果树的根节点对应于SQL查询语句的结果。其中,如果SQL查询结果树的非叶子节点不是根节点,则将处理结果继续作为子树结果和平级的子树结果进行运算处理,以得到它们的父节点,直到最终得到根节点。在以上具体例示的分布式数据库的情况下,由于SQL查询结果树的非叶子节点MERGE1和MERGE2不是根节点,所以将处理结果继续作为子树结果和平级的子树结果进行运算处理,以得到它们的父节点JOIN。在以上具体例示的分布式数据库的情况下,父节点JOIN即为根节点。
在以上具体例示的分布式数据库的情况下,所构建的SQL查询结果树如图4中虚线框中部分所示。图4进一步在虚线框之下示出了数据库分片节点DN1和数据库分片节点DN2。图4还进一步在虚线框之上示出了调用数据库中间件的应用程序(APP)。
就上述具体的例子而言,首先将各个节点查询结果进行合并,然后将结果集按照g.barcode=s.barcode过滤及JOIN操作,最后再将结果集做COUNT聚合运算,就会得到正确结果(tableware:1,stationery:3)。
可见,在本发明中,复杂的Join查询语句被解析构建成SQL查询计划树,到各个节点执行子SQL查询,得到的子树结果依据前面生成的SQL查询计划树进行过滤、聚合等操作,自下往上生成查询结果树,最终根节点的结果即是查询结果。
另外,对于例如不涉及表间连接的简单的SQL查询语句,可以先进行化简处理,然后路由到各个节点进行SQL查询,然后将各个节点的查询结果进行简单汇聚后,就可以返回结果。因此,这种不涉及表间连接的简单的SQL查询语句也可以对应于结构简单的SQL查询计划树和SQL查询结果树。
作为进一步优选的示例,本发明可以将SQL查询语句的结果返回给上层的应用程序。
在本发明提出的基于查询树的数据库中间件跨节点Join查询方法中,通过构建适用于多节点情况下的SQL查询计划树,能够避免当前跨节点Join查询方法中SQL语句被简单解析、执行造成的查询结果错误,从而能够提升跨节点Join查询的正确性和效率。
相对于现有技术,本发明具有如下优点和效果。一方面,根据当前的关系数据模型理论,构建适用于中间件多表或多库情况下的查询计划树,能够避免使用现有中间件跨节点Join查询出现的问题,为上层应用提供分表或分库下Join查询的正确结果。另一方面,查询计划树是在关系代数及关系演算基础上构建的,有坚实的理论基础,可以依据现有的查询深度优化技术不断提升跨节点查询的性能。
图5示出了能够实现根据本公开的实施例的计算设备500的示例性配置。
计算设备500是能够应用本公开的上述方面的硬件设备的实例。计算设备500可以是被配置为执行处理和/或计算的任何机器。计算设备500可以是但不限制于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数据助手(PDA)、智能电话、车载计算机或以上组合。
如图5所示,计算设备500可以包括可以经由一个或多个接口与总线502连接或通信的一个或多个元件。总线502可以包括但不限于,工业标准架构(Industry StandardArchitecture,ISA)总线、微通道架构(Micro Channel Architecture,MCA)总线、增强ISA(EISA)总线、视频电子标准协会(VESA)局部总线、以及外设组件互连(PCI)总线等。计算设备500可以包括例如一个或多个处理器504、一个或多个输入设备506以及一个或多个输出设备508。一个或多个处理器504可以是任何种类的处理器,并且可以包括但不限于一个或多个通用处理器或专用处理器(诸如专用处理芯片)。处理器504例如可以被配置为执行图2所示的方法。输入设备506可以是能够向计算设备输入信息的任何类型的输入设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或远程控制器。输出设备508可以是能够呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。
计算设备500还可以包括或被连接至非暂态存储设备514,该非暂态存储设备514可以是任何非暂态的并且可以实现数据存储的存储设备,并且可以包括但不限于盘驱动器、光存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁性介质、压缩盘或任何其他光学介质、缓存存储器和/或任何其他存储芯片或模块、和/或计算机可以从其中读取数据、指令和/或代码的其他任何介质。计算设备500还可以包括随机存取存储器(RAM)510和只读存储器(ROM)512。ROM 512可以以非易失性方式存储待执行的程序、实用程序或进程。RAM 510可提供易失性数据存储,并存储与计算设备500的操作相关的指令。计算设备500还可包括耦接至数据链路518的网络/总线接口516。网络/总线接口516可以是能够启用与外部装置和/或网络通信的任何种类的设备或系统,并且可以包括但不限于调制解调器、网络卡、红外线通信设备、无线通信设备和/或芯片集(诸如蓝牙TM设备、802.11设备、WiFi设备、WiMax设备、蜂窝通信设施等)。
本公开可以被实现为装置、系统、集成电路和非瞬时性计算机可读介质上的计算机程序的任何组合。可以将一个或多个处理器实现为执行本公开中描述的部分或全部功能的集成电路(IC)、专用集成电路(ASIC)或大规模集成电路(LSI)、系统LSI,超级LSI或超LSI组件。
本公开包括软件、应用程序、计算机程序或算法的使用。可以将软件、应用程序、计算机程序或算法存储在非瞬时性计算机可读介质上,以使诸如一个或多个处理器的计算机执行上述步骤和附图中描述的步骤。例如,一个或多个存储器以可执行指令存储软件或算法,并且一个或多个处理器可以关联执行该软件或算法的一组指令,以根据本公开中描述的实施例提供各种功能。
软件和计算机程序(也可以称为程序、软件应用程序、应用程序、组件或代码)包括用于可编程处理器的机器指令,并且可以以高级过程性语言、面向对象编程语言、功能性编程语言、逻辑编程语言或汇编语言或机器语言来实现。术语“计算机可读介质”是指用于向可编程数据处理器提供机器指令或数据的任何计算机程序产品、装置或设备,例如磁盘、光盘、固态存储设备、存储器和可编程逻辑设备(PLD),包括将机器指令作为计算机可读信号来接收的计算机可读介质。
举例来说,计算机可读介质可以包括动态随机存取存储器(DRAM)、随机存取存储器(RAM)、只读存储器(ROM)、电可擦只读存储器(EEPROM)、紧凑盘只读存储器(CD-ROM)或其他光盘存储设备、磁盘存储设备或其他磁性存储设备,或可以用于以指令或数据结构的形式携带或存储所需的计算机可读程序代码以及能够被通用或专用计算机或通用或专用处理器访问的任何其它介质。如本文中所使用的,磁盘或盘包括紧凑盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘和蓝光盘,其中磁盘通常以磁性方式复制数据,而盘则通过激光以光学方式复制数据。上述的组合也包括在计算机可读介质的范围内。
提供本公开的主题作为用于执行本公开中描述的特征的装置、系统、方法和程序的示例。但是,除了上述特征之外,还可以预期其他特征或变型。可以预期的是,可以用可能代替任何上述实现的技术的任何新出现的技术来完成本公开的部件和功能的实现。
另外,以上描述提供了示例,而不限制权利要求中阐述的范围、适用性或配置。在不脱离本公开的精神和范围的情况下,可以对所讨论的元件的功能和布置进行改变。各种实施例可以适当地省略、替代或添加各种过程或部件。例如,关于某些实施例描述的特征可以在其他实施例中被结合。
类似地,虽然在附图中以特定次序描绘了操作,但是这不应该被理解为要求以所示的特定次序或者以顺序次序执行这样的操作,或者要求执行所有图示的操作以实现所希望的结果。在某些情况下,多任务处理和并行处理可以是有利的。

Claims (11)

1.一种基于查询树的数据库中间件跨节点Join查询方法,包含步骤:
构建SQL查询计划树,包含:
对SQL查询语句进行词法、语法和语义分析,以将SQL查询语句转化为关系演算表达式,所述关系演算表达式对应于SQL查询计划树的根节点,
对所述关系演算表达式进行元组演算,以确定能够依次下发到SQL查询计划树中下一层的元组和运算,其中能够下发到数据库节点执行的元组和运算对应于SQL查询计划树中的叶子节点,其中不能够下发到数据库节点执行的元组和运算对应于SQL查询计划树中的非叶子节点,
将与SQL查询计划树中的叶子节点对应的元组和运算下发到数据库节点,以执行子SQL查询,
构建SQL查询结果树,包含:
以所述子SQL查询的查询结果作为SQL查询结果树的叶子节点,
根据SQL查询结果树的叶子节点,通过SQL查询计划树中各节点所定义的元组和运算,按照从SQL查询结果树中叶子节点的父节点到根节点的顺序依次得到SQL查询结果树的非叶子节点,其中,SQL查询结果树的根节点对应于SQL查询语句的结果。
2.根据权利要求1所述的方法,进一步包括:
将SQL查询语句的结果返回给上层应用程序。
3.根据权利要求1所述的方法,其中:
所述数据库是分布式数据库。
4.根据权利要求1所述的方法,其中:
将SQL查询语句转化为关系演算表达式基于关系代数和关系演算理论。
5.根据权利要求1所述的方法,其中:
所述子SQL查询在对应的数据库节点中被执行。
6.根据权利要求1所述的方法,其中:
涉及到分散存储在不同数据库节点的数据的元组和运算不被下发到数据库节点执行。
7.根据权利要求1所述的方法,其中:
对应于SQL查询计划树中非叶子节点的元组和运算不被下发到数据库节点执行。
8.根据权利要求1所述的方法,其中:
对应于SQL查询计划树中叶子节点的元组和运算被下发到数据库节点执行。
9.一种基于查询树的数据库中间件跨节点Join查询装置,包括:
存储器,其上存储有指令;以及
处理器,被配置为执行存储在所述存储器上的指令,以执行根据权利要求1至8中的任一项所述的方法。
10.一种计算机可读存储介质,包括计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1至8中的任意一项所述的方法。
11.一种计算机程序产品,包括计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1至8中的任意一项所述的方法。
CN202110177117.7A 2021-02-07 2021-02-07 基于查询树的数据库中间件跨节点Join查询方法 Active CN114911824B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110177117.7A CN114911824B (zh) 2021-02-07 2021-02-07 基于查询树的数据库中间件跨节点Join查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110177117.7A CN114911824B (zh) 2021-02-07 2021-02-07 基于查询树的数据库中间件跨节点Join查询方法

Publications (2)

Publication Number Publication Date
CN114911824A true CN114911824A (zh) 2022-08-16
CN114911824B CN114911824B (zh) 2025-01-28

Family

ID=82761558

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110177117.7A Active CN114911824B (zh) 2021-02-07 2021-02-07 基于查询树的数据库中间件跨节点Join查询方法

Country Status (1)

Country Link
CN (1) CN114911824B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221249A (zh) * 2022-09-20 2022-10-21 金蝶软件(中国)有限公司 跨库数据查询方法、装置、计算机设备和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544355A (en) * 1993-06-14 1996-08-06 Hewlett-Packard Company Method and apparatus for query optimization in a relational database system having foreign functions
US20020116357A1 (en) * 1999-12-07 2002-08-22 Paulley Glenn Norman System and methodology for join enumeration in a memory-constrained environment
US20040267720A1 (en) * 2003-06-27 2004-12-30 Peiya Liu Query system for structured multimedia content retrieval
CN105210059A (zh) * 2014-04-04 2015-12-30 华为技术有限公司 一种数据处理方法及系统
CN106547796A (zh) * 2015-09-23 2017-03-29 南京中兴新软件有限责任公司 数据库的执行方法及装置
CN108009270A (zh) * 2017-12-18 2018-05-08 江苏润和软件股份有限公司 一种基于分布式内存计算的文本检索方法
CN111026776A (zh) * 2019-11-06 2020-04-17 中科驭数(北京)科技有限公司 关系型数据库中的查询方法及装置
US20200320069A1 (en) * 2019-04-02 2020-10-08 Sap Se Hybrid compilation framework for arbitrary ad-hoc imperative functions in database queries

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544355A (en) * 1993-06-14 1996-08-06 Hewlett-Packard Company Method and apparatus for query optimization in a relational database system having foreign functions
US20020116357A1 (en) * 1999-12-07 2002-08-22 Paulley Glenn Norman System and methodology for join enumeration in a memory-constrained environment
US20040267720A1 (en) * 2003-06-27 2004-12-30 Peiya Liu Query system for structured multimedia content retrieval
CN105210059A (zh) * 2014-04-04 2015-12-30 华为技术有限公司 一种数据处理方法及系统
CN106547796A (zh) * 2015-09-23 2017-03-29 南京中兴新软件有限责任公司 数据库的执行方法及装置
CN108009270A (zh) * 2017-12-18 2018-05-08 江苏润和软件股份有限公司 一种基于分布式内存计算的文本检索方法
US20200320069A1 (en) * 2019-04-02 2020-10-08 Sap Se Hybrid compilation framework for arbitrary ad-hoc imperative functions in database queries
CN111026776A (zh) * 2019-11-06 2020-04-17 中科驭数(北京)科技有限公司 关系型数据库中的查询方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
杜方;陈跃国;杜小勇;: "RDF数据查询处理技术综述", 软件学报, no. 06, 15 June 2013 (2013-06-15) *
陈洁;: "基于结构和语义相似度的SQL程序评分模型", 计算机系统应用, no. 05, 15 May 2017 (2017-05-15) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221249A (zh) * 2022-09-20 2022-10-21 金蝶软件(中国)有限公司 跨库数据查询方法、装置、计算机设备和存储介质
CN115221249B (zh) * 2022-09-20 2023-02-24 金蝶软件(中国)有限公司 跨库数据查询方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN114911824B (zh) 2025-01-28

Similar Documents

Publication Publication Date Title
US9053210B2 (en) Graph query processing using plurality of engines
CN106934062A (zh) 一种查询elasticsearch的实现方法及系统
US11941034B2 (en) Conversational database analysis
US20160055233A1 (en) Pre-join tags for entity-relationship modeling of databases
Li et al. An integration approach of hybrid databases based on SQL in cloud computing environment
US10977224B2 (en) Dynamic modeling of data in relational databases
Li et al. QODM: A query-oriented data modeling approach for NoSQL databases
CN106095792A (zh) 生成数据库操作代码的方法和装置
CN111708805A (zh) 数据查询方法、装置、电子设备及存储介质
CN107515887A (zh) 一种适用于多种大数据管理系统的交互式查询方法
US9740713B1 (en) Dynamic modeling of data in relational databases
WO2012102707A1 (en) Analytical data processing
US20160070768A1 (en) Extensible surface for consuming information extraction serivices
CN117093599A (zh) 面向异构数据源的统一sql查询方法
JP2015062109A (ja) データをモデリングするためのシステム及び方法
CN104731945A (zh) 一种基于HBase的全文检索方法及装置
CN107992608A (zh) 一种基于关键字上下文的sparql查询语句自动生成方法
CN110162642A (zh) 基于对象代理数据库的专利知识图谱构建方法
CN105302842A (zh) 一种数据处理方法及装置
CN103870532A (zh) 高级业务查询语言
CN107491476A (zh) 一种适用于多种大数据管理系统的数据模型转换及查询分析方法
WO2023231615A1 (zh) 一种基于数据湖的物化列创建方法以及数据查询方法
CN114297224A (zh) 一种基于rdf的异构数据集成与查询系统及方法
CN114443699A (zh) 信息查询方法、装置、计算机设备及计算机可读存储介质
WO2024239782A1 (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