CN104769583A - 更新分布式数据库中的统计量 - Google Patents
更新分布式数据库中的统计量 Download PDFInfo
- Publication number
- CN104769583A CN104769583A CN201280077069.3A CN201280077069A CN104769583A CN 104769583 A CN104769583 A CN 104769583A CN 201280077069 A CN201280077069 A CN 201280077069A CN 104769583 A CN104769583 A CN 104769583A
- Authority
- CN
- China
- Prior art keywords
- data
- sensitive data
- distributed
- global statistics
- upgrade
- 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
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
- G06F16/24534—Query rewriting; Transformation
- G06F16/24542—Plan optimisation
-
- 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/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Operations Research (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
更新分布式数据库中的统计量包括:存储关于跨多个数据库节点而分布的至少一个分布式表列的全局统计量,其中全局统计量具有针对查询计划优化过程的敏感数据以及针对查询计划优化过程的不敏感数据,并且比不敏??感数据更频繁地更新全局统计量的敏感数据。
Description
背景技术
在一些数据库中,响应于用于在数据库中检索信息的查询,数据库管理系统生成关于如何执行查询的多个查询计划。查询计划是用于检索数据库的信息的任务的有序集合。查询优化器评估计划并选择它基于成本模型认为是最优的计划。
附图说明
附图图示了本文所述原理的各种示例,并且是说明书的一部分。图示的示例仅仅是示例,并且不限制权利要求的范围。
图1是根据本文所述原理的分布式数据库的示例的图解。
图2是根据本文所述原理的数据库节点的示例的图解。
图3是根据本文所述原理的用于更新分布式数据库中的统计量的方法的示例的图解。
图4是根据本文所述原理的用于更新分布式数据库中的统计量的系统的示例的图解。
图5是根据本文所述原理的更新系统的示例的图解。
图6是根据本文所述原理的用于更新分布式数据库中的统计量的过程的流程图的示例的图解。
图7是根据本文所述原理的用于更新分布式数据库中的统计量的过程的流程图的示例的图解。
具体实施方式
基于关于数据库的表(table)的统计量,数据库管理系统创建查询计划。然而,由于在数据库内不断地改变数据,统计量迅速地变得过时。不幸地,频繁地更新统计量是耗时且成本高的,经常使用大量的带宽和处理资源。因此,频繁地更新所有的统计量干扰同时运行的任务,诸如其它查询的执行。而且,对一些统计量的小改变误导查询计划优化过程选择非最优的查询计划。由于小改变而显著地影响查询计划优化的统计量被认为是敏感数据,而在小改变发生时最小地影响查询计划优化过程的统计量被认为是不敏感数据。
本文所述原理包括一种用于更新分布式数据库中的统计量的方法。这样的方法包括:存储关于跨多个数据库节点而分布的至少一个分布式表列(table column)的全局统计量,其中全局统计量具有针对查询计划优化过程的敏感数据以及针对查询计划优化过程的不敏感数据,并且例如自动地比不敏??感数据更频繁地更新全局统计量的敏感数据。
在以下描述中,为了解释的目的,阐述许多具体的细节,以便提供本系统和方法的彻底理解。然而,将对本领域技术人员显而易见的是:可以在没有这些具体细节的情况下实践本装置、系统和方法。说明书中对“示例”或类似语言的提及意味着所述的特定特征、结构或特性被包括在至少那一个示例中,但不一定在其它示例中。
图1是根据本文所述原理的分布式数据库(100)的示例的图解。在本示例中,分布式数据库(100)具有彼此通信的多个节点(102、104、106)。每个节点(102、104、106)具有处理器、用于存储信息的存储器资源(108),以及全局敏感数据更新器(110),其将在下面更详细讨论。存储器资源可以包括主存储器、缓存存储器、盘存储器、可移除存储器、硬驱动装置、光学存储器介质、磁性存储器介质、忆阻器存储器介质、其它形式的存储器或其组合。数据库节点(102、104、106)可以是物理节点、虚拟节点或其组合。
当将数据初始添加或更新到分布式数据库(100)时,新数据被存储在公共存储器位置中。如所指示的或者根据移动策略,新数据被指派给节点之一以用于更长期存储。
在分布式表列(112、114、116、118)中格式化在节点(102、104、106)的存储器资源(108)中共同存储的信息。为了说明的目的,在图1中全局地描绘分布式表列(112、114、116、118)。然而,行(R1-R8)中的每一个可以被存储在数据库节点(102、104、106)的任何一个或多个中。例如,行R1、R2和R3可以被存储在第一节点(102)中,行R4和R8可以被存储在第二节点中,并且行R4、R5、R6和R7可以被存储在第n节点中。在可替代示例中,行R1和R4可以被存储在第一节点(102)和第二节点(104)中。
在本示例中,分布式表(119)的列(112、114、116、118)包括行ID列(112)、服务ID列(114)、日期列(116)和价格列(118)。列(112、114、116、118)中的每一个具有八行(R1-R8)。销售者ID列(112)表示每个列中的行的标识号码。服务ID列(114)存储售出的特定服务的标识号码。日期列(116)存储进行销售的日期,并且价格列(118)包含服务售出的价格。
当提交查询以从数据库检索信息时,数据库在数据库节点(102、104、106)的每一个中搜索信息。当表列包括显著数量的行并且位于显著数量的数据库节点上时,从搜索查询检索信息可能是耗时的。为了优化响应于查询而检索信息的时间并且为了减少其相关联的成本,查询计划生成器创建多个查询执行计划,以确定执行任务的序列来执行查询。查询计划可以包括搜索数据库节点和表列的次序。查询计划优化器选择它认为用最低成本花费最短检索时间的查询计划。
为了创建查询计划,查询计划生成器使用关于表列中每一个的全局统计量。通过使用全局统计量,代替于只描述局部存储到每个节点的信息的局部统计量,查询计划生成器可以估计对关于要搜索的表列的所有信息进行搜索的时间和成本。节点(102、104、106)中的每一个存储局部统计量和全局统计量二者,局部统计量描述被局部包含到节点的信息,全局统计量描述属于分布式表列的所有信息。
查询计划生成器对于对全局统计量中的一些的改变比对其它全局统计量的改变更敏感。例如,对全局统计量的最小值、最大值和行计数统计量的小改变可能使得显著地关掉查询执行计划。同时,对直方图和不同值的数量的小改变可能不显著地影响查询执行计划。在小改变的情况下显著地影响查询执行计划的全局统计量是敏感数据,而不显著地影响查询执行计划的全局统计量被认为是不敏感数据。为了保持全局统计量中的敏感数据最新,全局敏感数据更新器(110)使得相对频繁地更新全局敏感数据。这样的全局敏感数据更新可能比对全局不敏感数据的更新更频繁地、独立于对全局不敏感数据的更新或其组合而发生。
虽然参考具体数量的数据库节点描述图1的示例,但可以使用任何适当数量的数据库节点。此外,虽然已经参考包含其自己的全局敏感数据更新器的每个节点来描述本示例,但分布式数据库可以具有任何适当数量的全局敏感数据更新器。例如,节点中只有一个可以具有全局敏感数据更新器,节点中的一些可以包含全局敏感数据更新器,或者所有节点可以包括全局敏感数据更新器。在其它示例中,全局敏感数据更新器与数据库节点分离。在这样的示例中,全局敏感数据更新器作为与节点分离的数据库组件来操作。
在一些示例中,分布式数据库作为对等式网络而操作,其中多个节点可以作为服务器操作,并向其它节点发送命令。在适当时,可以跨多个节点共享或从一个节点向另一个节点切换编配(orchestrate)诸如查询计划生成、查询计划选择、查询计划执行、全局敏感数据更新之类的各种过程、其它过程或其组合的节点。
图2是根据本文所述原理的数据库节点(200)的示例的图解。在本示例中,数据库节点(200)具有数据容器(202)、全局统计量容器(204)和局部统计量容器(206),数据容器(202)包含分布式表(119,图1)的行R1、R2和R3,全局统计量容器(204)包含关于全局地分布的表(119,图1)的统计量,局部统计量容器(206)包含关于在数据容器(202)中局部存储的行(R1-R3)的统计量。为了说明性的目的,全局统计量容器(204)和局部统计量容器(206)描绘仅仅一列数据。然而,全局统计量容器(204)和局部统计量容器(206)将包括关于在分布式数据库和/或局部数据容器(202)中的每个表列的统计量。虽然用仅仅四个表列描绘图2的示例,但分布式数据库和/或局部数据容器(202)可以包括任何适当数量的表列。此外,虽然下面参考具体的统计量数目和统计量类型来描述全局统计量容器(204)和局部统计量容器(206),但可以根据本文所述的原理而使用任何适当数量的统计量或类型的统计量。
全局统计量容器(204)包括以下行的统计量:列名称(208)、行计数(210)、最小值(212)、最大值(214)、不同值的数量(216)以及直方图(218)。列名称(208)指示全局统计量正在描述哪一列。在该情况下,指示的列是价格列(118,图1)。行计数(210)具有值八,其表示价格列(118,图1)中的行数。最小值(212)具有来自价格列(118,图1)的R4的值$3,125,因为$3,125是价格列(118,图1)中列出的所有价格??的最低价格。类似地,最大值(214)具有值$9,500,因为$9,500是价格列(118,图1)中列出的所有价格??的最高值。不同值的数量(216)包括值四,因为价格列(118,图1)列出四个不同值。直方图(218)为价格列(118,图1)中列出的价格??值图形地制图。
另一方面,局部统计量容器(206)包含只描述在局部节点(200)中存储的数据的统计量。因此,列名称(208)指示统计量描述在数据容器(202)中局部存储的价格列(220)。然而,局部统计量容器中的行计数(210)只具有值三,因为局部价格列(220)只包含三行。而且,最小值(212)包含值$4225,因为那是局部价格列(220)中的最低值。同样地,最大值(214)包含$9,500,因为那是局部价格列(220)中的最高值。
查询计划生成器咨询全局统计量容器(204)中的统计量,以生成查询计划。通过咨询全局统计量,查询计划生成器通过从单个位置获得关于分布式表列的信息而节省时间和资源。全局统计量中的至少一些影响由查询计划生成器做出的查询计划。然而,在一些示例中,在不同值的数量和直方图中的小改变对查询计划生成具有最小影响。另一方面,在最小值、最大值和行计数中的小改变对查询计划生成可能具有显著影响。结果,基于不准确的假设,这些小改变可能以其它方式误使查询计划优化器选择非优化的查询计划。
敏感数据更新器(222)更新全局敏感容器(204)中的全局敏感数据(例如最小值、最大值和行计数),使得查询计划生成器可以生成高效的查询执行计划。在改变数据容器(202)时,更新局部统计量容器(206),但是因为全局统计量容器(204)中的信息描述跨多个节点分布的信息,全局统计量不被如容易地那样更新。
敏感数据更新器(222)可以在周期性的基础上更新敏感数据。在一些示例中,周期性的基础具有小于五分钟的更新时间间隔。在一些情况下,更新时间间隔是一分钟或更少。通过读取与所有分布式数据库节点通信的局部容器节(verse)中的信息,只更新敏感数据、所有全局统计量的子集,在这样的频繁的基础上花费短的时间量并使用最小的资源。分布式数据库中的节点之一充当服务器,并从局部统计量容器(206)中的每一个请求只针对敏感数据的局部信息。在这样的示例中,响应于对其请求的答复,服务器节点更新全局统计量。响应于更新全局统计量,更新被发送到其它节点的其它全局统计量容器(204)。诸如本示例的那些之类的简单请求花费短时间来执行,并且不太可能影响并发的数据库任务。
在其它示例中,敏感数据更新器(222)在每次事务之后收集关于敏感数据的统计数据,所述每次事务包含插入命令、删除命令、更新命令、合并命令、加载命令、拷贝命令、或影响行数或行中的值的其它命令、或对任何数据库节点的数据容器的其组合。在这样的示例中,敏感数据更新器(222)可以基于这些预定命令(例如删除、插入、更新、合并、拷贝、加载命令等等)来确定改变。例如,如果事务包括将三行插入到数据容器的表列中的命令,并且列已经包括七行,则敏感数据更新器(222)可以确定新的行计数是十。同样地,如果命令包括更新行以包含新值,则敏感数据更新器(222)可以确定新值是低于当前最小值还是高于当前最大值,并且如果适当则更新统计量。以该方式,敏感数据总是最新的。在其它示例中,响应于预订命令情况下的事务,咨询局部统计量容器,并且如果适当则做出更新。
图3是根据本文所述原理的用于更新分布式数据库中的统计量的方法(300)的示例的图解。在本示例中,方法包括:存储(302)关于跨多个数据库节点而分布的至少一个分布式表列的全局统计量,其中全局统计量包括针对查询计划优化过程的敏感数据以及针对查询计划优化过程的不敏感数据;和例如自动地比不敏感数据更频繁地更新(304)敏感数据。
在一些示例中,在周期性的基础上更新全局敏感数据。这样的周期性的基础可以包括五分钟或更少的更新时间间隔。在一些情况下,更新时间间隔是一分钟或更少。在其它示例中,响应于在表列中删除行的删除命令、在表列中插入行的插入命令、在表列中更新行中的值的更新命令、其它命令或其组合,更新全局敏感数据。通过分析数据库事务中的命令或通过与局部统计量容器协商,更新全局敏感数据可以被更新。
敏感数据可以包括最小值、最大值、行计数、其它敏感数据或其组合。不敏感数据可以包括关于不同值的数量、直方图和其它适当的不敏感数据的统计量。
图4是根据本文所述原理的用于更新分布式数据库中的统计量的系统(400)的示例的图解。在本示例中,系统(400)包括数据库表的引擎(402)、统计量存储引擎(404)、更新引擎(406)和查询计划优化引擎(408)。引擎(402、404、406、408)指的是执行所指定功能的硬件和程序指令的组合。引擎(402、404、406、408)中的每一个可以包括处理器和存储器。程序指令被存储在存储器中,并且使得处理器执行引擎的所指定功能。
数据库表的引擎(402)在数据库中的表列中维护和存储数据。每一列的各行可以被存储在相同的局部数据库节点中或者可以跨多个数据库节点而分布。统计量存储引擎(404)存储关于数据库中的表列的统计量。统计量可以是局部统计量、全局统计量或其组合。全局统计量被局部地存储在每个数据库节点中。数据库用户被允许与数据库中任何适当的节点交互,并且因此,全局统计量在每个节点处是可用的。如果数据库节点之一在其全局统计量拷贝中有错误,则将从分布式数据库中移除并重新启动节点。当重新启动节点时,系统将从可用节点向重新启动的节点拷贝正确的全局统计量。然而,在其它示例中,全局统计量被存储在单个位置中。更新引擎(406)在周期性或预定类型的事务的基础上更新敏感数据。查询计划优化引擎(408)响应于针对存储在数据库中的信息的查询而生成查询计划,并基于成本模型而选择它认为是要执行的最佳选项的查询计划。
图5是根据本文所述原理的更新系统(500)的示例的图解。在本示例中,更新系统(500)包括与存储器资源(504)通信的处理资源(502)。处理资源(502)包括至少一个处理器和用于处理编程的指令的其它资源。存储器资源(504)一般表示能够存储数据的任何适当的存储器,所述数据诸如由更新系统(500)使用的编程的指令或数据结构。示出的在存储器资源(504)中存储的编程的指令包括删除命令识别器(510)、插入命令识别器(512)、更新命令识别器(514)、统计量更新器(516)、查询识别器(518)、查询计划生成器(520)和查询计划选择器(522)。示出的在存储器资源(504)中存储的数据结构包括数据库表(506)和数据库统计量容器(508)。
存储器资源(504)包括计算机可读存储介质,所述介质包含计算机可读程序代码以使得任务由处理资源(502)执行。计算机可读存储介质可以是有形的和/或非暂时性的存储介质。计算机可读存储介质类型的非穷举列表包括非易失性存储器、易失性存储器、随机存取存储器、基于忆阻器的存储器、只写存储器、闪速存储器、电可擦除编程只读存储器、或多种类型的存储器、或其组合。
数据库表(506)是能够存储数据的数据结构,所述数据属于跨多个数据库节点的相同表。数据库统计量容器(508)包含统计量,所述统计量在局部和全局水平二者上描述数据库表中的数据。统计量更新器(516)表示编程的指令,所述编程的指令在被执行时使得处理资源(502)更新描述分布式数据库表的全局统计量。响应于更新策略而触发统计量更新器的指令。在本示例中,响应于事务命令而触发更新。然而,在其它示例中,用以规律的、周期性的时间间隔发送的更新信号来触发更新。
删除命令识别器(510)表示编程的指令,所述编程的指令在被执行时使得处理资源(502)识别删除命令以在分布式表列中删除行。插入命令识别器(512)表示编程的指令,所述编程的指令在被执行时使得处理资源(502)识别插入命令以在分布式表列中插入行。更新命令识别器(514)表示编程的指令,所述编程的指令在被执行时使得处理资源(502)识别更新命令以在分布式表列中更新行。
查询识别器(518)表示编程的指令,所述编程的指令在被执行时使得处理资源(502)识别何时接收对数据库中信息的查询。查询计划生成器(520)表示编程的指令,所述编程的指令在被执行时使得处理资源(502)响应于识别了已经请求了查询而创建多个查询执行计划。查询计划生成器依赖于经更新的全局敏感数据来生成准确的执行计划。查询计划选择器(522)表示编程的指令,所述编程的指令在被执行时使得处理资源(502)选择用查询计划生成器生成的、它基于完成时间和估计的成本而察觉是最优的查询执行计划之一。
此外,存储器资源(504)可以是安装包的部分。响应于安装了安装包,可以从诸如便携式介质、服务器、远程网络位置、另一位置或其组合之类的安装包的源下载存储器资源(504)的编程的指令。与本文所述原理兼容的便携式存储器介质包括DVD、CD、闪速存储器、便携式盘、磁盘、光盘、其它形式的便携式存储器或其组合。在其它示例中,已经安装程序指令。这里,存储器资源可以包括集成的存储器,诸如硬驱动装置、固态硬驱动装置等等。
在一些示例中,处理资源(502)和存储器资源(504)位于相同的物理组件内,诸如服务器或网络组件。存储器资源(504)可以是物理组件的主存储器、缓存、寄存器、非易失性存储器的部分,或在物理组件的存储器层次中的别处。可替代地,存储器资源(504)可以通过网络而与处理资源(502)通信。此外,可以通过网络连接而从远程位置访问诸如库和之类的数据结构,而编程的指令位于本地。因此,可以在用户设备上、服务器上、服务器的集合或其组合上实现更新系统(500)。
图5的更新系统(500)可以是通用计算机的部分。然而,在可替代示例中,更新系统(500)是专用集成电路的部分。
图6是根据本文所述原理的用于更新分布式数据库中的统计量的过程的流程图(600)的示例的图解。在本示例中,过程包括:维护(602)在跨多个数据库节点的分布式表列中的数据,并维护(604)关于数据库表列中的数据的全局统计量。
过程还包括:确定(606)是否已经接收行删除命令以删除任何节点中的表列之一的至少一行。如果已经有这样的命令,则更新(608)敏感数据,使得将来的查询计划优化过程是准确的。如果没有任何删除命令被接收,过程则确定(610)是否已经接收行更新命令以更新任何节点中的表列之一的至少一行中的值。如果已经有这样的命令,则更新(608)敏感数据,使得将来的查询计划优化过程是准确的。
过程还包括:确定(612)是否已经接收行插入命令以插入任何节点中的表列之一的至少一行。如果已经有这样的命令,则更新(608)敏感数据,使得将来的查询计划优化过程是准确的。如果没有任何插入命令被接收,过程则确定(614)是否已经接收行合并命令以在任何节点中的表列之一中将多行合并在一起。如果已经有这样的命令,则更新(608)敏感数据,使得将来的查询计划优化过程是准确的。
过程还包括:确定(616)是否已经接收拷贝行的集合的命令。如果已经接收这样的命令,则更新(608)敏感数据,使得将来的查询计划优化过程是准确的。如果这些命令中没有一个被接收,则过程继续维护(604)全局统计量。
图7是根据本文所述原理的用于更新分布式数据库中的统计量的过程的流程图(700)的示例的图解。在本示例中,过程包括:维护(702)跨多个数据库节点的分布式表列中的数据,并维护(704)关于在每个节点中存储的数据的局部统计量。过程还包括:确定(706)是否已经接收周期性的更新命令。如果没有,则过程继续以维护(704)关于在每个节点中存储的数据的局部统计量。然而,如果已经接收更新命令,则过程包括:从关于敏感数据的每个节点获得(708)局部统计量,并基于获得的局部统计量而更新(710)敏感信息。
虽然已经参考具体的数据库架构描述以上示例,但可以根据本文所述原理而使用任何适当的数据库架构。此外,虽然已经用对具体类型的全局统计量敏感的查询计划生成器描述以上示例,但是可以根据本文所述原理而使用对其它类型的全局统计量敏感的任何适当的查询计划生成器。虽然已经参考具体数量和类型的容器描述以上示例,但是可以使用与本文所述原理兼容的任何适当类型或数量的容器。
已经呈现了前面的描述,仅仅是为了说明和描述所述原理的示例。本描述并不旨在是穷举的或将这些原理限制到公开的任何精确形式。鉴于以上教导,许多修改和变型是可能的。
Claims (15)
1.一种用于更新分布式数据库中的统计量的方法,包括:
存储关于跨多个数据库节点而分布的至少一个分布式表列的全局统计量,所述全局统计量包括针对查询计划优化过程的敏感数据以及针对所述查询计划优化过程的不敏感数据;以及
比所述不敏??感数据更频繁地更新所述全局统计量的所述敏感数据。
2.根据权利要求1所述的方法,其中比所述不敏??感数据更频繁地更新所述全局统计量的所述敏感数据包括:在周期性的基础上更新所述敏感数据。
3.根据权利要求2所述的方法,其中所述周期性的基础包括小于五分钟的间隔。
4.根据权利要求2所述的方法,其中在周期性的基础上更新所述敏感数据包括:从来自每个数据库节点的局部统计量获得敏感数据,所述每个数据库节点至少包含所述分布式表列的一部分。
5.根据权利要求1所述的方法,其中比所述不敏??感数据更频繁地更新所述全局统计量的所述敏感数据包括:响应于在所述分布式表列中删除行的删除命令,更新所述敏感数据。
6.根据权利要求1所述的方法,其中比所述不敏??感数据更频繁地更新所述全局统计量的所述敏感数据包括:响应于在所述分布式表列中插入行的插入命令,更新所述敏感数据。
7.根据权利要求1所述的方法,其中比所述不敏??感数据更频繁地更新所述全局统计量的所述敏感数据包括:响应于在所述分布式表列中更新行中的值的更新命令,更新所述敏感数据。
8.根据权利要求1所述的方法,其中所述敏感数据包括最小值、最大值、行计数或其组合。
9.根据权利要求1所述的方法,其中所述不敏感数据包括关于不同值的数量和直方图的统计量。
10.一种用于更新分布式数据库中的统计量的系统,包括:
全局统计量存储引擎,用以存储关于在分布式数据库中的分布式表列的统计量,所述全局统计量包括针对优化查询计划的敏感数据和针对优化查询计划的不敏感数据;
更新引擎,用以独立于所述不敏感数据地更新所述全局统计量的所述敏感数据;以及
查询计划优化引擎,用以使用所述敏感数据和所述不敏感数据二者。
11.根据权利要求10所述的系统,其中在周期性的基础上,所述更新引擎从每个数据库节点的局部统计量获得敏感数据,所述每个数据库节点至少包含所述分布式表列的一部分。
12.根据权利要求10所述的系统,其中响应于行删除命令、行插入命令、行更新命令、行合并命令、拷贝命令、加载行命令或其组合,所述更新引擎更新所述敏感数据。
13.根据权利要求10所述的系统,其中所述敏感数据包括最小值、最大值、行计数或其组合。
14.一种用于更新分布式数据库中的统计量的计算机程序产品,包括:
有形的计算机可读存储介质,所述有形的计算机可读存储介质包括以其体现的计算机可读程序代码,所述计算机可读程序代码包括程序指令,所述程序指令在被执行时使得处理器:
存储关于分布式数据库中的分布式表列的全局统计量,所述全局统计量包括针对优化查询计划的敏感数据以及针对优化所述查询计划的不敏感数据,所述敏感数据包括最小值、最大值、行计数或其组合;
独立于也被包括在所述全局统计量中的所述不敏感数据地,更新所述全局统计量的所述敏感数据;以及
在查询计划优化过程期间使用所述敏感数据和所述不敏感数据二者。
15.根据权利要求14所述的计算机程序产品,还包括计算机可读程序代码以在被执行时使得所述处理器:响应于预定的事务命令而更新所述全局统计量的所述敏感数据,或者从至少包含所述分布式表列的一部分的所述分布式数据库中的每个节点的局部统计量获得关于所述敏感数据的更新。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2012/065063 WO2014077807A1 (en) | 2012-11-14 | 2012-11-14 | Updating statistics in distributed databases |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104769583A true CN104769583A (zh) | 2015-07-08 |
Family
ID=50731560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280077069.3A Pending CN104769583A (zh) | 2012-11-14 | 2012-11-14 | 更新分布式数据库中的统计量 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20150317359A1 (zh) |
EP (1) | EP2920711A4 (zh) |
CN (1) | CN104769583A (zh) |
WO (1) | WO2014077807A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109726581A (zh) * | 2017-10-31 | 2019-05-07 | 阿里巴巴集团控股有限公司 | 一种数据统计方法和装置 |
CN112784291A (zh) * | 2019-11-05 | 2021-05-11 | 中国电信股份有限公司 | 大数据脱敏方法和系统 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8903801B2 (en) * | 2007-09-14 | 2014-12-02 | Oracle International Corporation | Fully automated SQL tuning |
US9372889B1 (en) * | 2013-04-04 | 2016-06-21 | Amazon Technologies, Inc. | Incremental statistics update |
US10169395B2 (en) | 2015-02-12 | 2019-01-01 | International Business Machines Corporation | Database identifier generation in transaction processing systems |
US9892160B2 (en) | 2015-04-07 | 2018-02-13 | International Business Machines Corporation | Database statistics based on transaction state |
WO2016183544A1 (en) | 2015-05-14 | 2016-11-17 | Walleye Software, LLC | System performance logging |
US10146854B2 (en) | 2016-02-29 | 2018-12-04 | International Business Machines Corporation | Continuous automatic update statistics evaluation using change data capture techniques |
US10241965B1 (en) | 2017-08-24 | 2019-03-26 | Deephaven Data Labs Llc | Computer data distribution architecture connecting an update propagation graph through multiple remote query processors |
US11341133B2 (en) * | 2018-10-26 | 2022-05-24 | International Business Machines Corporation | Method and system for collaborative and dynamic query optimization in a DBMS network |
US11138213B2 (en) * | 2019-04-10 | 2021-10-05 | Snowflake Inc. | Internal resource provisioning in database systems |
US10860609B1 (en) | 2020-03-25 | 2020-12-08 | Snowflake Inc. | Distributed stop operator for query processing |
CN111563115B (zh) * | 2020-05-09 | 2023-06-02 | 北京奇艺世纪科技有限公司 | 一种分布式数据库中数据分布信息的统计方法及装置 |
US11360982B1 (en) * | 2020-12-22 | 2022-06-14 | International Business Machines Corporation | Database endpoint devices put in groups for responding to queries |
US11893015B2 (en) * | 2021-11-18 | 2024-02-06 | International Business Machines Corporation | Optimizing query performance in virtual database |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366901B1 (en) * | 1998-12-16 | 2002-04-02 | Microsoft Corporation | Automatic database statistics maintenance and plan regeneration |
US20050149505A1 (en) * | 2004-01-07 | 2005-07-07 | International Business Machines Corporation | Method, system, and program for statistics management |
US20080256025A1 (en) * | 2007-04-13 | 2008-10-16 | Robert Joseph Bestgen | Database Query Optimization Utilizing Remote Statistics Collection |
US20090063398A1 (en) * | 2007-08-31 | 2009-03-05 | International Business Machines Corporation | Statistics collection for database tables |
US20100106708A1 (en) * | 2008-10-27 | 2010-04-29 | Teradata Us, Inc., | Eliminating unnecessary statistics collections for query optimization |
CN102143158A (zh) * | 2011-01-13 | 2011-08-03 | 北京邮电大学 | 基于tpm的数据防泄漏方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7080062B1 (en) * | 1999-05-18 | 2006-07-18 | International Business Machines Corporation | Optimizing database queries using query execution plans derived from automatic summary table determining cost based queries |
US20050154690A1 (en) * | 2002-02-04 | 2005-07-14 | Celestar Lexico-Sciences, Inc | Document knowledge management apparatus and method |
US8076101B2 (en) * | 2003-05-21 | 2011-12-13 | Riordan John R | Method of detecting the cystic fibrosis transmembrane conductance regulator (CFTR) at cell exterior |
US7814072B2 (en) * | 2004-12-30 | 2010-10-12 | International Business Machines Corporation | Management of database statistics |
US7917507B2 (en) * | 2007-02-12 | 2011-03-29 | Microsoft Corporation | Web data usage platform |
US8060495B2 (en) * | 2008-10-21 | 2011-11-15 | International Business Machines Corporation | Query execution plan efficiency in a database management system |
CN102955824A (zh) * | 2011-08-31 | 2013-03-06 | 国际商业机器公司 | 用于保密搜索的方法、保密搜索设备、计算机设备 |
US10255089B2 (en) * | 2012-07-31 | 2019-04-09 | Ca, Inc. | Self-deleting virtual machines |
-
2012
- 2012-11-14 US US14/441,943 patent/US20150317359A1/en not_active Abandoned
- 2012-11-14 WO PCT/US2012/065063 patent/WO2014077807A1/en active Application Filing
- 2012-11-14 CN CN201280077069.3A patent/CN104769583A/zh active Pending
- 2012-11-14 EP EP12888283.4A patent/EP2920711A4/en not_active Ceased
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366901B1 (en) * | 1998-12-16 | 2002-04-02 | Microsoft Corporation | Automatic database statistics maintenance and plan regeneration |
US20050149505A1 (en) * | 2004-01-07 | 2005-07-07 | International Business Machines Corporation | Method, system, and program for statistics management |
US20080256025A1 (en) * | 2007-04-13 | 2008-10-16 | Robert Joseph Bestgen | Database Query Optimization Utilizing Remote Statistics Collection |
US20090063398A1 (en) * | 2007-08-31 | 2009-03-05 | International Business Machines Corporation | Statistics collection for database tables |
US20100106708A1 (en) * | 2008-10-27 | 2010-04-29 | Teradata Us, Inc., | Eliminating unnecessary statistics collections for query optimization |
CN102143158A (zh) * | 2011-01-13 | 2011-08-03 | 北京邮电大学 | 基于tpm的数据防泄漏方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109726581A (zh) * | 2017-10-31 | 2019-05-07 | 阿里巴巴集团控股有限公司 | 一种数据统计方法和装置 |
CN109726581B (zh) * | 2017-10-31 | 2020-04-14 | 阿里巴巴集团控股有限公司 | 一种数据统计方法和装置 |
CN112784291A (zh) * | 2019-11-05 | 2021-05-11 | 中国电信股份有限公司 | 大数据脱敏方法和系统 |
CN112784291B (zh) * | 2019-11-05 | 2023-08-08 | 天翼云科技有限公司 | 大数据脱敏方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US20150317359A1 (en) | 2015-11-05 |
EP2920711A1 (en) | 2015-09-23 |
EP2920711A4 (en) | 2016-06-29 |
WO2014077807A1 (en) | 2014-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104769583A (zh) | 更新分布式数据库中的统计量 | |
US20160267420A1 (en) | Process model catalog | |
US9454324B1 (en) | Methods and apparatus for data lifecycle analysis | |
US10580095B2 (en) | Method and system for water production and distribution control | |
CN102651008B (zh) | 在关系数据库中组织数据记录的方法和设备 | |
CN103733194A (zh) | 动态组织云计算资源以便于发现 | |
US9165011B2 (en) | Concurrent calculation of resource qualification and availability using text search | |
CN104781812A (zh) | 策略驱动的数据放置和信息生命周期管理 | |
CN101268439A (zh) | 数据库片段克隆和管理 | |
JP5654655B2 (ja) | 部屋在庫管理システム | |
CN110196847A (zh) | 数据处理方法和装置、存储介质及电子装置 | |
CN107800757B (zh) | 用户行为记录方法及装置 | |
CN1975772B (zh) | 整合多个系统中的信息的方法和装置 | |
US10382566B2 (en) | Business service discovery | |
US11681691B2 (en) | Presenting updated data using persisting views | |
US10095737B2 (en) | Information storage system | |
US11609897B2 (en) | Methods and systems for improved search for data loss prevention | |
CN106874343B (zh) | 一种时序数据库的数据删除方法及系统 | |
CN114238085A (zh) | 接口测试方法、装置、计算机设备、存储介质 | |
CN106897224B (zh) | 一种软件测试范围的确定方法及装置 | |
KR20120082176A (ko) | 데이터베이스 관리 시스템의 데이터 처리 방법 및 시스템 | |
CN106648550B (zh) | 用于并发执行任务的方法与设备 | |
US20230010652A1 (en) | Systems and methods for automatic index creation in database deployment | |
US8423532B1 (en) | Managing data indexed by a search engine | |
CN114880322B (zh) | 一种金融数据列式存储方法、系统、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170105 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Applicant before: Hewlett-Packard Development Company, L.P. |
|
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150708 |