CN105247513A - 用于使用固定表在无共享关系型数据库集群中进行分布式sql连接处理的系统和方法 - Google Patents
用于使用固定表在无共享关系型数据库集群中进行分布式sql连接处理的系统和方法 Download PDFInfo
- Publication number
- CN105247513A CN105247513A CN201480014588.4A CN201480014588A CN105247513A CN 105247513 A CN105247513 A CN 105247513A CN 201480014588 A CN201480014588 A CN 201480014588A CN 105247513 A CN105247513 A CN 105247513A
- Authority
- CN
- China
- Prior art keywords
- back end
- fixed table
- processing node
- subregion
- mpp
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000005192 partition Methods 0.000 claims abstract description 14
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000008520 organization Effects 0.000 claims 1
- 238000004891 communication Methods 0.000 description 4
- 230000005055 memory storage Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
- G06F1/035—Reduction of table size
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了系统和方法实施例以用于通过选择用于处理查询计划的一个或多个固定表来改进在大规模并行处理(MPP)数据库系统中的查询处理的性能。在一个实施例方法中,在协调器进程处接收与所述MPP数据库系统的多个表相关联的连接查询。随后根据所述连接查询中的表分区关键字从所述表中选择固定表。指示所述固定表并且将所述连接查询发送到与所述协调器进程通信的多个数据节点。在所述数据节点中的每一者处,生成用于所述连接查询的执行计划。所述数据节点中的每一者随后执行所述执行计划,以在不共享所述数据节点之间的所述固定表的信息的情况下获得查询结果。
Description
相关申请案交叉申请
本发明要求2013年3月13日递交的发明名称为“用于使用固定表在无共享关系型数据库集群中进行分布式SQL连接处理的系统和方法”的第13/802,084号美国专利申请案的在先申请优先权,该在先申请的内容如同全文复制一样以引入的方式并入本文本中。
技术领域
本发明涉及数据库处理以及计算,并且在特定实施例中,涉及用于使用固定表在无共享关系型数据库集群中进行分布式SQL连接处理的系统和方法。
背景技术
大规模并行处理(MPP)数据库系统允许数据库管理员创建数据库并且将其数据分布到多个处理器,所述处理器被称为分区或数据节点。MPP的概念是通过多个处理器协调处理程序,其中每个处理器作用于所述程序的不同部分。处理器彼此通信来完成任务,其中所述处理器中的每一者使用其自身的操作系统以及存储器资源。通常存在为MPP数据库系统的客户端服务的至少一个进程,所述进程被称为协调器。针对此数据库发出的结构化查询语言(SQL)连接查询通过协调器来处理,所述协调器选择数据表以实现连接查询并且将此信息发送到每个数据节点以用于执行。
发明内容
根据的一个实施例,用于在大规模并行处理(MPP)数据库系统中的查询处理的方法包括在协调器进程处接收与MPP数据库系统的多个表相关联的连接查询、从所述表中选择固定表,以及在与所述协调器进程通信的多个数据节点中的每一者处执行执行计划以在不在数据节点之间传递固定表的信息的情况下获得查询结果。
根据另一实施例,用于在MPP数据库系统中的查询处理的方法包括在协调器进程处接收与MPP数据库系统的多个表相关联的连接查询、根据连接查询中的表分区关键字从所述表中选择固定表,以及指示固定表并且将连接查询发送到与协调器进程通信的多个数据节点。所述方法进一步包括在所述数据节点中的每一者处生成用于连接查询的执行计划,以及在所述数据节点中的每一者处执行所述执行计划以在不在数据节点之间共享固定表的信息的情况下获得查询结果。
根据又另一实施例,用于在MPP数据库系统中的查询处理的设备包括用于在MPP数据库系统的数据表的分区上处理连接查询的多个数据节点、处理器,以及存储用于通过处理器执行的程序代码的计算机可读存储介质。程序代码包括用以进行以下操作的指令:在与数据节点通信的协调器进程处接收与表相关联的连接查询、从所述表中选择固定表、指示固定表并且将连接查询发送到数据节点,以及合并来自数据节点的多个查询结果。
附图说明
为了更完整地理解本发明及其优点,现在参考下文结合附图进行的描述,其中:
图1图示了典型的MPP数据库系统;
图2是典型的MPP数据库系统的查询执行流程;
图3图示了具有一个固定表的MPP数据库系统的一个实施例;
图4图示了具有多个固定表的MPP数据库系统的一个实施例;
图5是具有至少一个固定表的MPP数据库系统的查询执行流程的一个实施例;
图6是可以用于实施各种实施例的处理系统。
具体实施方式
下文将详细论述当前优选实施例的制作和使用。然而,应了解,本发明提供可在各种具体上下文中体现的许多适用的发明性概念。所论述的具体实施例仅仅说明用以实施和使用本发明的具体方式,而不限制本发明的范围。
MPP数据库系统是基于无共享架构的,其中所述表划分成分区并且分布到不同处理节点。以独占方式将每个分区分配给一个处理节点,其中在所述节点处的分区当中不存在数据共享。处理节点在本文中也被称为数据节点。每个节点中的处理实体管理并且处理其数据部分。然而,在执行期间,这些处理实体可以与彼此通信以交换必要信息。对于每个客户端连接,系统创建对用户事务管理以及查询处理负责的代理进程或线程。此代理进程或线程称为协调器,所述协调器可能或可能不驻留在数据节点中的一者上。当查询到达协调器时,协调器调用查询编译程序以生成语义树。随后调用查询计划器以生成用于所述树的优化执行计划。所述执行计划将用于处理查询的任务组织到处理单元(数据节点)上。来自数据节点的结果被返回并在协调器处集合,并且随后被发送给用户。
图1示出了用于处理SQL连接查询的典型的MPP数据库系统100。在MPP数据库系统100中,客户端应用程序通过协调器110连接到数据库上,所述协调器是代理进程或应用程序(例如,程序)。协调器110连接到系统中的多个数据节点120上。每个数据节点120可以独占方式访问数据库中的数据表122的分区。协调器110在数据节点120处使用并行处理来为客户端处理SQL连接查询112,并且将集合的结果从数据节点120返回到客户端。每个数据节点120在数据表122的没有共有分区数据的不同独占分区上处理用于查询112的计划114,所述查询发送自协调器110。然而,数据节点120仍可以在彼此之间交换表数据(例如,行)以完成连接查询处理的其对应的部分。
图2示出了MPP数据库系统100的查询执行流程200。在步骤210处,协调器110从客户端接收查询。例如,协调器110接收SQL查询:“从客户、单项产品、订单中选择*,其中lineitem.l_orderkey=orders.o_orderkeyANDcustomer.c_custkey=orders.o_custkey”。在步骤220处,协调器110编译查询以生成查询执行计划,并且将所述查询计划发送到数据节点120。在步骤230处,每个数据节点120实例化查询计划段、在需要时与其它节点交换数据,以及通过对与查询相关联的多个数据表(例如,单项产品、订单,以及客户)进行操作来计算查询的结果。每个数据节点120随后将结果返回到协调器110。在步骤240处,协调器110聚集来自数据节点120的结果并且合并所述结果。在步骤250处,协调器110将查询结果返回到客户端。
在MPP数据库系统100以及查询执行流程200中,在数据节点120之间转发来自所需用于处理连接查询的所有表(例如,表单项产品、客户,以及订单)的数据(例如,行)。表分区分布在数据节点当中,但在其它分区中所需的其它数据也是通过不同的数据节点可访问的(例如,经由数据传送)而没有限制。这可能导致用于数据传送以及处理的资源的大量过载,所述大量过载可能降低性能(例如,在处理速度上)。
本发明提供了系统和方法实施例以用于改进MPP数据库系统中的查询处理的性能。所述实施例包括选择用于处理查询计划的一个或多个固定表。不同于典型的MPP数据库系统,固定表的分配给对应的数据节点的分区是固定的并且不在不同数据节点之间混洗。数据节点以独占方式访问固定数据表的对应的分区。这意味着在不同数据节点之间不允许对固定表的分区(或固定表中的行)的转发。在需要时,其余的表(非静态表)可以常规方式在数据节点之间(来回)混洗。通过协调器选择一个或多个固定表的集合并且将其指示给数据节点。例如,在没有执行计划的情况下,也将连接查询从协调器推送到数据节点。每个数据节点随后生成具有固定表信息的查询执行计划并且相应地执行查询。此方案允许每个数据节点并行执行连接查询计划并且在较少数据混洗的情况下更快地完成任务。因此,可以改进连接查询处理的总体性能以及因此改进系统吞吐量。
基于查询中的分区关键字,可以(通过协调器)选择一个或多个固定表并且将其指示给数据节点。在多表连接查询中,识别在对应的分区关键字上连接的表的组。识别过程可以在具有单一表的组中结束。接着,获得每个组的组合权重并且随后将具有最高权重的组指定为固定表的组。在查询处理过程(在数据节点处)的其余部分中,固定表的这个组不(在数据节点之间)移动,这可以导致具有更快的计划以及处理的改进的性能。基于最高权重的固定组选择可以大大减少数据节点当中的数据混洗。例如,在数据仓库情形下的典型的连接查询可以具有驻留在固定组中的数据的70%到80%。因此,此方案可以提供在典型的数据仓库情形下的大量的性能增益。
图3示出了具有经选择用于处理SQL连接查询的一个固定表的MPP数据库系统300的一个实施例。在MPP数据库系统300中,客户端应用程序通过协调器310连接到数据库上。协调器310连接到系统中的多个数据节点320上。每个数据节点320可以独占方式访问数据库中的数据表322的分区。协调器310在数据节点320处使用并行处理来为客户端处理SQL连接查询312并且将集合的结果从数据节点320返回到客户端。处理包括选择固定表。例如,表单项产品是最大的表并且基于连接查询中的分区关键字l_orderkey以及o_orderkey被选择为固定表,所述连接查询是:lineitem.l_orderkey=orders.o_orderkey。每个数据节点320在数据表322的没有共有分区数据的不同独占分区上生成并且处理用于查询312的计划314,所述查询从协调器310向下推送。当在数据节点320中的每一者上执行实例化的计划314时,固定表单项产品中没有数据或行(在数据节点320之间)移动。然而,来自其它表的数据或行可以在任何两个数据节点320之间来回移动以完成其在其对应的分区上的连接查询处理。
图4示出了具有经选择用于处理SQL连接查询的多个固定表的MPP数据库系统400的另一实施例。在MPP数据库系统400中,客户端应用程序通过协调器410连接到数据库上。协调器410连接到系统中的多个数据节点420上。每个数据节点420可以独占方式访问数据库中的数据表422的分区。协调器410在数据节点420处使用并行处理来为客户端处理SQL连接查询412并且将集合的结果从数据节点420返回到客户端。处理包括基于连接查询412中的分区关键字选择一个或多个固定表。例如,表单项产品以及订单基于连接查询中的分区关键字l_orderkey以及o_orderkey被选择为固定表,所述连接查询是:lineitem.l_orderkey=orders.o_orderkey。每个数据节点420在数据表422的没有共有分区数据的不同独占分区上生成并且处理用于查询412的计划414,所述查询从协调器410向下推送。当在数据节点420上执行计划414时,固定表单项产品以及订单中没有数据或行(在数据节点420之间)移动,但来自其它表的数据或行可以在任何两个数据节点420之间来回移动以完成其在其对应的分区上的连接查询处理。
图5示出了具有至少一个固定表的MPP数据库系统300或400的查询执行流程500的一个实施例。在步骤510处,协调器从客户端接收查询。例如,协调器接收SQL查询:“从客户、单项产品、订单中选择*,其中lineitem.l_orderkey=orders.o_orderkeyANDcustomer.c_custkey=orders.o_custkey。”在步骤520处,例如,基于查询中的分区关键字,协调器选择一个或多个固定表,如上文所描述。协调器随后发送查询并且将一个或多个固定表指示给数据节点。在步骤530处,每个数据节点编译查询以考虑到一个或多个固定表生成查询执行计划。每个数据节点随后实例化查询计划段、在需要时与其它节点交换除固定表外的数据、计算查询的结果,并且将所述结果返回到协调器。在数据节点中的每一者处在表的不同独占分区上执行相同的执行计划。在步骤540处,协调器聚集并且合并来自数据节点的结果。在步骤550处,协调器将查询结果返回到客户端。
图6是可以用于实施各实施例的处理系统600的框图。特定装置可以利用所有示出的组件或所述组件的仅一个子集,并且装置之间的集成水平可能不同。此外,装置可以包括组件的多个例子,例如,多个处理单元、处理器、存储器、发射器、接收器等。处理系统600可以包括处理单元601,所述处理单元配备有一个或多个输入/输出装置,例如,网络接口、存储接口等。处理单元601可以包括中央处理单元(CPU)610、存储器620、大容量存储装置630,以及连接到总线上的I/O接口660。总线可为任何类型的若干总线架构中的一者或多者,包括存储器总线或存储器控制器、外围总线等。
CPU610可以包括任何类型的电子数据处理器。存储器620可以包括任何类型的系统存储器,例如静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、同步DRAM(SDRAM)、只读存储器(ROM)、其组合等。在一个实施例中,存储器620可以包括在启动时使用的ROM以及用于程序以及数据存储以供在执行程序时使用的DRAM。在实施例中,存储器620是非暂时性的。大容量存储装置630可以包括任何类型的存储装置,所述存储装置用于存储数据、程序,以及其它信息并且使得数据、程序,以及其它信息是经由总线可存取的。大容量存储装置630可以包括,例如,固态驱动器、硬盘驱动器、磁盘驱动器、光盘驱动器等中的一者或多者。
处理单元601还包括一个或多个网络接口650,所述网络接口可以包括例如以太网电缆等的有线链路,和/或用以访问节点或一个或多个网络680的无线链路。网络接口650允许处理单元601经由网络680与远程单元通信。例如,网络接口650可以经由一个或多个发射器/发射天线以及一个或多个接收器/接收天线提供无线通信。在一个实施例中,处理单元601耦合到局域网或广域网上以用于数据处理以及与远程装置通信,所述远程装置例如其它处理单元、因特网、远程存储设施等。
虽然已参考说明性实施例描述了本发明,但此描述并不意图限制本发明。所属领域的一般技术人员在参考该描述后,会显而易见地认识到说明性实施例的各种修改和组合,以及本发明的其他实施例。因此,所附权利要求书意图涵盖任何此类修改或实施例。
Claims (22)
1.一种用于在大规模并行处理(MPP)数据库系统中的查询处理的方法,所述方法包括:
在运行在所述MPP上的协调器进程处接收与所述MPP数据库系统的多个表相关联的连接查询;
从所述多个表中为多个处理节点指定MPP固定表,所述固定表经处理以用于在所述处理节点之间不传递信息的情况下处理所述连接查询;以及
在所述处理节点中的每一者处执行执行计划以在不在所述处理节点之间传递所述固定表的信息的情况下获得查询结果。
2.根据权利要求1所述的方法,其进一步包括在所述处理节点中的每一者处,考虑到所述固定表生成用于所述连接查询的执行计划。
3.根据权利要求1所述的方法,其进一步包括在所述协调器进程处,合并来自所述处理节点的所述查询结果以获得最终结果。
4.根据权利要求1所述的方法,其中根据所述连接查询中的分区关键字选择所述固定表。
5.根据权利要求4所述的方法,其进一步包括:
在所述连接查询中识别在对应的分区关键字上连接的表的组;
计算每个组的组合权重;以及
将在具有最高权重的组中的表指定为固定的。
6.根据权利要求1所述的方法,其中执行所述执行计划以获得查询结果包括在所述处理节点之间传递来自并非固定表的所述表的信息。
7.根据权利要求1所述的方法,其进一步包括在所述协调器进程处集合来自所述处理节点中的每一者的所述查询结果。
8.根据权利要求1所述的方法,其中所述执行计划包括用于处理所述连接查询的组织任务。
9.一种用于在大规模并行处理(MPP)数据库系统中的查询处理的方法,所述方法包括:
在所述MPP的处理节点处从在所述MPP上运行的协调器进程接收与所述MPP数据库系统的多个表相关联的连接查询;
接收固定表的指示,所述固定表是所述协调器进程根据所述连接查询中的表分区关键字从所述多个表中选择的;
为所述连接查询生成执行计划;以及
在所述处理节点处执行所述执行计划,以在不与处理相同连接查询的所述MPP的其它处理节点共享所述固定表的信息的情况下获得查询结果。
10.根据权利要求9所述的方法,其进一步包括:
将所述查询结果从所述处理节点转发到所述协调器进程以在所述协调器进程处合并所述查询结果。
11.根据权利要求10所述的方法,所述表的多个独占分区被分配给所述处理节点以及其它处理节点,其中不同处理节点的所述独占分区不包括共有的数据行,并且其中执行所述执行计划以获得在分配给所述处理节点的所述独占分区上的查询结果。
12.根据权利要求11所述的方法,其中在所述不同处理节点处的所述固定表的不同独占分区处的数据不在所述不同处理节点之间移动。
13.根据权利要求11所述的方法,其中在所述不同处理节点处的并非固定表的所述表的不同独占分区处的数据在所述不同处理节点之间移动以在所述处理节点处执行所述执行计划。
14.根据权利要求13所述的方法,其中当需要所述数据来完成用于所述连接查询的所述执行计划并且在本地不可获得所述数据时,在来自所述处理节点的请求之后,所述数据在所述不同处理节点之间移动。
15.根据权利要求11所述的方法,其中在所述处理节点中的每一者处在所述表的所述不同独占分区上执行相同的执行计划。
16.一种用于在大规模并行处理(MPP)数据库系统中的查询处理的设备,所述设备包括:
多个数据节点,所述数据节点用于在所述MPP数据库系统的数据表的分区上处理连接查询;
处理器;以及
计算机可读存储介质,所述计算机可读存储介质存储用于通过所述处理器执行的程序代码,所述程序代码包括用于进行以下操作的指令:
在与所述数据节点通信的协调器进程处,接收与所述表相关联的连接查询;
从所述表中选择固定表;
指示所述固定表并且将所述连接查询发送到所述数据节点;以及
合并来自所述数据节点的多个查询结果。
17.根据权利要求16所述的设备,其中所述数据节点进一步用于生成用于所述连接查询的执行计划、执行所述执行计划以在不在所述数据节点之间共享所述固定表的信息的情况下获得所述查询结果,以及将所述查询结果转发到所述协调器进程。
18.根据权利要求17所述的设备,其中所述数据节点考虑到所述固定表生成用于所述连接查询的所述执行计划。
19.根据权利要求16所述的设备,其中所述程序代码包括另外的指令以将所述表的多个独占分区分配给所述数据节点,其中不同数据节点的所述独占分区不包括共有的数据行。
20.根据权利要求19所述的设备,其中所述数据节点用于在所述不同独占分区上执行相同的执行计划以获得查询结果。
21.根据权利要求20所述的设备,其中所述数据节点用于不在彼此之间共享所述固定表的所述不同独占分区中的数据。
22.根据权利要求20所述的设备,其中在来自所述数据节点的请求之后,所述数据节点用于在彼此之间共享并非固定表的所述表的所述不同独占分区中的数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/802,084 US9152669B2 (en) | 2013-03-13 | 2013-03-13 | System and method for distributed SQL join processing in shared-nothing relational database clusters using stationary tables |
US13/802,084 | 2013-03-13 | ||
PCT/CN2014/073390 WO2014139450A1 (en) | 2013-03-13 | 2014-03-13 | System and method for distributed sql join processing in shared-nothing relational database clusters using stationary tables |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105247513A true CN105247513A (zh) | 2016-01-13 |
Family
ID=51533060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480014588.4A Pending CN105247513A (zh) | 2013-03-13 | 2014-03-13 | 用于使用固定表在无共享关系型数据库集群中进行分布式sql连接处理的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9152669B2 (zh) |
EP (1) | EP2962226A4 (zh) |
CN (1) | CN105247513A (zh) |
WO (1) | WO2014139450A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112204541A (zh) * | 2018-03-26 | 2021-01-08 | 迈克菲有限责任公司 | 对分区计算机数据库数据进行聚合的方法、装置和系统 |
CN114969110A (zh) * | 2022-07-21 | 2022-08-30 | 阿里巴巴(中国)有限公司 | 查询方法和装置 |
Families Citing this family (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9767149B2 (en) * | 2014-10-10 | 2017-09-19 | International Business Machines Corporation | Joining data across a parallel database and a distributed processing system |
US9953057B2 (en) * | 2015-06-18 | 2018-04-24 | International Business Machines Corporation | Partitioned join with dense inner table representation |
US9875186B2 (en) * | 2015-07-08 | 2018-01-23 | Futurewei Technologies, Inc. | System and method for data caching in processing nodes of a massively parallel processing (MPP) database system |
WO2017052600A1 (en) | 2015-09-25 | 2017-03-30 | Hewlett Packard Enterprise Development Lp | Queries based on ranges of hash values |
US10210200B2 (en) * | 2015-10-01 | 2019-02-19 | Futurewei Technologies, Inc. | Action-based routing of a transaction in an online transaction processing system |
US11321321B2 (en) | 2016-09-26 | 2022-05-03 | Splunk Inc. | Record expansion and reduction based on a processing task in a data intake and query system |
US11593377B2 (en) | 2016-09-26 | 2023-02-28 | Splunk Inc. | Assigning processing tasks in a data intake and query system |
US10984044B1 (en) | 2016-09-26 | 2021-04-20 | Splunk Inc. | Identifying buckets for query execution using a catalog of buckets stored in a remote shared storage system |
US20180089324A1 (en) | 2016-09-26 | 2018-03-29 | Splunk Inc. | Dynamic resource allocation for real-time search |
US11126632B2 (en) | 2016-09-26 | 2021-09-21 | Splunk Inc. | Subquery generation based on search configuration data from an external data system |
US11294941B1 (en) | 2016-09-26 | 2022-04-05 | Splunk Inc. | Message-based data ingestion to a data intake and query system |
US11550847B1 (en) | 2016-09-26 | 2023-01-10 | Splunk Inc. | Hashing bucket identifiers to identify search nodes for efficient query execution |
US11442935B2 (en) | 2016-09-26 | 2022-09-13 | Splunk Inc. | Determining a record generation estimate of a processing task |
US11620336B1 (en) | 2016-09-26 | 2023-04-04 | Splunk Inc. | Managing and storing buckets to a remote shared storage system based on a collective bucket size |
US11314753B2 (en) | 2016-09-26 | 2022-04-26 | Splunk Inc. | Execution of a query received from a data intake and query system |
US11269939B1 (en) | 2016-09-26 | 2022-03-08 | Splunk Inc. | Iterative message-based data processing including streaming analytics |
US11243963B2 (en) | 2016-09-26 | 2022-02-08 | Splunk Inc. | Distributing partial results to worker nodes from an external data system |
US10776355B1 (en) | 2016-09-26 | 2020-09-15 | Splunk Inc. | Managing, storing, and caching query results and partial query results for combination with additional query results |
US11580107B2 (en) | 2016-09-26 | 2023-02-14 | Splunk Inc. | Bucket data distribution for exporting data to worker nodes |
US11874691B1 (en) | 2016-09-26 | 2024-01-16 | Splunk Inc. | Managing efficient query execution including mapping of buckets to search nodes |
US11567993B1 (en) | 2016-09-26 | 2023-01-31 | Splunk Inc. | Copying buckets from a remote shared storage system to memory associated with a search node for query execution |
US11023463B2 (en) | 2016-09-26 | 2021-06-01 | Splunk Inc. | Converting and modifying a subquery for an external data system |
US11250056B1 (en) | 2016-09-26 | 2022-02-15 | Splunk Inc. | Updating a location marker of an ingestion buffer based on storing buckets in a shared storage system |
US11604795B2 (en) | 2016-09-26 | 2023-03-14 | Splunk Inc. | Distributing partial results from an external data system between worker nodes |
US11281706B2 (en) | 2016-09-26 | 2022-03-22 | Splunk Inc. | Multi-layer partition allocation for query execution |
US11163758B2 (en) | 2016-09-26 | 2021-11-02 | Splunk Inc. | External dataset capability compensation |
US11003714B1 (en) | 2016-09-26 | 2021-05-11 | Splunk Inc. | Search node and bucket identification using a search node catalog and a data store catalog |
US11663227B2 (en) | 2016-09-26 | 2023-05-30 | Splunk Inc. | Generating a subquery for a distinct data intake and query system |
US11615104B2 (en) | 2016-09-26 | 2023-03-28 | Splunk Inc. | Subquery generation based on a data ingest estimate of an external data system |
US11562023B1 (en) | 2016-09-26 | 2023-01-24 | Splunk Inc. | Merging buckets in a data intake and query system |
US11232100B2 (en) | 2016-09-26 | 2022-01-25 | Splunk Inc. | Resource allocation for multiple datasets |
US12013895B2 (en) | 2016-09-26 | 2024-06-18 | Splunk Inc. | Processing data using containerized nodes in a containerized scalable environment |
US11586627B2 (en) | 2016-09-26 | 2023-02-21 | Splunk Inc. | Partitioning and reducing records at ingest of a worker node |
US11599541B2 (en) | 2016-09-26 | 2023-03-07 | Splunk Inc. | Determining records generated by a processing task of a query |
US11106734B1 (en) | 2016-09-26 | 2021-08-31 | Splunk Inc. | Query execution using containerized state-free search nodes in a containerized scalable environment |
US11860940B1 (en) | 2016-09-26 | 2024-01-02 | Splunk Inc. | Identifying buckets for query execution using a catalog of buckets |
US11461334B2 (en) | 2016-09-26 | 2022-10-04 | Splunk Inc. | Data conditioning for dataset destination |
US11222066B1 (en) | 2016-09-26 | 2022-01-11 | Splunk Inc. | Processing data using containerized state-free indexing nodes in a containerized scalable environment |
US10977260B2 (en) * | 2016-09-26 | 2021-04-13 | Splunk Inc. | Task distribution in an execution node of a distributed execution environment |
US10956415B2 (en) | 2016-09-26 | 2021-03-23 | Splunk Inc. | Generating a subquery for an external data system using a configuration file |
US10353965B2 (en) | 2016-09-26 | 2019-07-16 | Splunk Inc. | Data fabric service system architecture |
US10649996B2 (en) * | 2016-12-09 | 2020-05-12 | Futurewei Technologies, Inc. | Dynamic computation node grouping with cost based optimization for massively parallel processing |
US11989194B2 (en) | 2017-07-31 | 2024-05-21 | Splunk Inc. | Addressing memory limits for partition tracking among worker nodes |
US11921672B2 (en) | 2017-07-31 | 2024-03-05 | Splunk Inc. | Query execution at a remote heterogeneous data store of a data fabric service |
US10896182B2 (en) | 2017-09-25 | 2021-01-19 | Splunk Inc. | Multi-partitioning determination for combination operations |
US11151137B2 (en) | 2017-09-25 | 2021-10-19 | Splunk Inc. | Multi-partition operation in combination operations |
US11334543B1 (en) | 2018-04-30 | 2022-05-17 | Splunk Inc. | Scalable bucket merging for a data intake and query system |
JP6829427B2 (ja) * | 2018-12-09 | 2021-02-10 | 浩平 海外 | データベース・クエリ効率化のためのシステム、方法、および、プログラム |
WO2020220216A1 (en) | 2019-04-29 | 2020-11-05 | Splunk Inc. | Search time estimate in data intake and query system |
US11715051B1 (en) | 2019-04-30 | 2023-08-01 | Splunk Inc. | Service provider instance recommendations using machine-learned classifications and reconciliation |
US11494380B2 (en) | 2019-10-18 | 2022-11-08 | Splunk Inc. | Management of distributed computing framework components in a data fabric service system |
CN111125151B (zh) * | 2019-12-26 | 2023-05-12 | 上海达梦数据库有限公司 | Mpp架构下聚集函数的执行方法和数据库系统 |
US11922222B1 (en) | 2020-01-30 | 2024-03-05 | Splunk Inc. | Generating a modified component for a data intake and query system using an isolated execution environment image |
US11704313B1 (en) | 2020-10-19 | 2023-07-18 | Splunk Inc. | Parallel branch operation using intermediary nodes |
US20220350802A1 (en) * | 2021-04-29 | 2022-11-03 | International Business Machines Corporation | Query performance |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6609131B1 (en) * | 1999-09-27 | 2003-08-19 | Oracle International Corporation | Parallel partition-wise joins |
CN101714152A (zh) * | 2001-06-28 | 2010-05-26 | 甲骨文国际公司 | 在不同数据库服务器之间划分一个数据库所有权以控制访问数据库 |
CN102201010A (zh) * | 2011-06-23 | 2011-09-28 | 清华大学 | 无共享架构的分布式数据库系统及其实现方法 |
US20120036146A1 (en) * | 2010-10-26 | 2012-02-09 | ParElastic Corporation | Apparatus for elastic database processing with heterogeneous data |
CN102521307A (zh) * | 2011-12-01 | 2012-06-27 | 北京人大金仓信息技术股份有限公司 | 一种云计算环境下的无共享数据库集群并行查询处理方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090198703A1 (en) * | 2008-01-31 | 2009-08-06 | Hewlett-Packard Development Company, L.P. | Intelligent data storage system |
US8375047B2 (en) | 2010-03-31 | 2013-02-12 | Emc Corporation | Apparatus and method for query prioritization in a shared nothing distributed database |
-
2013
- 2013-03-13 US US13/802,084 patent/US9152669B2/en not_active Expired - Fee Related
-
2014
- 2014-03-13 EP EP14764108.8A patent/EP2962226A4/en not_active Withdrawn
- 2014-03-13 CN CN201480014588.4A patent/CN105247513A/zh active Pending
- 2014-03-13 WO PCT/CN2014/073390 patent/WO2014139450A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6609131B1 (en) * | 1999-09-27 | 2003-08-19 | Oracle International Corporation | Parallel partition-wise joins |
CN101714152A (zh) * | 2001-06-28 | 2010-05-26 | 甲骨文国际公司 | 在不同数据库服务器之间划分一个数据库所有权以控制访问数据库 |
US20120036146A1 (en) * | 2010-10-26 | 2012-02-09 | ParElastic Corporation | Apparatus for elastic database processing with heterogeneous data |
CN102201010A (zh) * | 2011-06-23 | 2011-09-28 | 清华大学 | 无共享架构的分布式数据库系统及其实现方法 |
CN102521307A (zh) * | 2011-12-01 | 2012-06-27 | 北京人大金仓信息技术股份有限公司 | 一种云计算环境下的无共享数据库集群并行查询处理方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112204541A (zh) * | 2018-03-26 | 2021-01-08 | 迈克菲有限责任公司 | 对分区计算机数据库数据进行聚合的方法、装置和系统 |
CN114969110A (zh) * | 2022-07-21 | 2022-08-30 | 阿里巴巴(中国)有限公司 | 查询方法和装置 |
CN114969110B (zh) * | 2022-07-21 | 2022-10-21 | 阿里巴巴(中国)有限公司 | 查询方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2962226A4 (en) | 2016-03-09 |
EP2962226A1 (en) | 2016-01-06 |
US9152669B2 (en) | 2015-10-06 |
US20140280021A1 (en) | 2014-09-18 |
WO2014139450A1 (en) | 2014-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105247513A (zh) | 用于使用固定表在无共享关系型数据库集群中进行分布式sql连接处理的系统和方法 | |
US11436224B2 (en) | Parallel processing database system with a shared metadata store | |
US9576026B2 (en) | System and method for distributed SQL join processing in shared-nothing relational database clusters using self directed data streams | |
US6430550B1 (en) | Parallel distinct aggregates | |
US10452632B1 (en) | Multi-input SQL-MR | |
US20180157711A1 (en) | Method and apparatus for processing query based on heterogeneous computing device | |
EP3285178B1 (en) | Data query method in crossing-partition database, and crossing-partition query device | |
US6954776B1 (en) | Enabling intra-partition parallelism for partition-based operations | |
JP6338817B2 (ja) | データベースミドルウェアを用いたデータ管理システム及びその方法 | |
US20070038658A1 (en) | Communication optimization for parallel execution of user-defined table functions | |
US9813490B2 (en) | Scheduled network communication for efficient re-partitioning of data | |
CN105550274B (zh) | 双副本并行数据库的查询方法和装置 | |
EP3688551B1 (en) | Boomerang join: a network efficient, late-materialized, distributed join technique | |
CN110569312B (zh) | 一种基于gpu的大数据快速检索系统及其使用方法 | |
US9984081B2 (en) | Workload aware data placement for join-based query processing in a cluster | |
JP5276639B2 (ja) | 分散データベース管理装置および分散データベース管理プログラム | |
CN108228654A (zh) | 一种大数据分布式存储方法和系统 | |
JP2021508867A (ja) | データベースをクエリするためのシステム、方法および装置 | |
Pan et al. | Executing multiple group-by query in a mapreduce approach | |
CN111831425B (zh) | 一种数据处理方法、装置及设备 | |
CN115718773A (zh) | 一种分布式数据库查询切分方法及装置 | |
Gunarathne et al. | Collective Communication Patterns for Iterative MapReduce | |
JPH02139668A (ja) | 関係データベースシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160113 |
|
RJ01 | Rejection of invention patent application after publication |