Nothing Special   »   [go: up one dir, main page]

CN102063449A - 提高数据库中数据对象统计信息可靠性的方法及装置 - Google Patents

提高数据库中数据对象统计信息可靠性的方法及装置 Download PDF

Info

Publication number
CN102063449A
CN102063449A CN2009102378644A CN200910237864A CN102063449A CN 102063449 A CN102063449 A CN 102063449A CN 2009102378644 A CN2009102378644 A CN 2009102378644A CN 200910237864 A CN200910237864 A CN 200910237864A CN 102063449 A CN102063449 A CN 102063449A
Authority
CN
China
Prior art keywords
data object
change amount
data
relative
absolute
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
Application number
CN2009102378644A
Other languages
English (en)
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 Mobile Group Zhejiang Co Ltd
Original Assignee
China Mobile Group Zhejiang 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 China Mobile Group Zhejiang Co Ltd filed Critical China Mobile Group Zhejiang Co Ltd
Priority to CN2009102378644A priority Critical patent/CN102063449A/zh
Publication of CN102063449A publication Critical patent/CN102063449A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种提高数据库中数据对象统计信息可靠性的方法及装置,接收数据对象,根据接收的数据对象信息以及预先存储的数据对象信息,获取数据对象绝对改变量以及数据对象相对改变量,并存储该接收的数据对象以及数据对象名称;判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值,如果是,调用预先设定的分析策略,对数据库中存储的数据对象进行可靠性扫描,获取与存储的数据对象名称相同的数据对象;调用分析程序对获取的数据对象进行处理,获取数据对象统计信息并更新存储数据对象统计信息的系统基表。应用本发明,可以降低数据库维护成本、提高数据库中数据对象统计信息的查询命中率。

Description

提高数据库中数据对象统计信息可靠性的方法及装置
技术领域
本发明涉及数据库技术,特别涉及一种提高数据库中数据对象统计信息可靠性的方法及装置。
背景技术
现在的数据库,无论是用于数据仓库或操作数据存储,都包含丰富的海量数据对象信息,因而,一方面,及时查找和展示用户需要的信息是一个巨大的挑战,另一方面,从海量数据信息中查找得到的信息的可靠性(数据库查询质量)对于用户以及数据库运营商来说也很重要。以下以目前应用广泛的oracle数据库为例,对查询过程作简要介绍。
图1为现有oracle数据库中结构化查询语言(SQL,Structured QueryLanguage)语句的执行流程示意图,参见图1,该流程包括:
步骤101,接收用户输入的SQL语句,进行语法语义检查(syntax check);
本步骤中,检查此SQL语句的拼写是否符合语法,访问对象是否存在及该进行查询的用户是否具备相应的权限等。
SQL语句分为数据定义语言(DDL,Data Define Language)语句和数据操作语言(DML,Data Manipulation Language)语句。其中,DML语句操作针对逻辑量,DDL操作针对物理量,详细描述可参见相关技术文献,在此不再赘述。
步骤102,oracle数据库利用内部预先存储的算法对SQL语句进行解析(prase),生成解析树(parse tree),根据解析树生成执行计划;
本步骤中,生成的执行计划包括表或索引的访问方式等。
实际应用中,步骤102生成的执行计划的好坏(质量高低)直接决定了SQL语句执行效率的高低,而执行计划基本由基于成本的优化器(CBO,Cost-based Optimizer)根据解析得到的解析树中参数查询数据库系统基表中预先存储的数据对象统计信息,选择代价最小的访问路径,根据访问路径找到相应的数据对象,并将该数据对象信息返回给用户;如果根据得到的解析树中参数查询不到数据库系统基表中预先存储的数据对象统计信息,则从数据对象库存储的数据对象中逐个查询,直到获取该参数对应的数据对象并将该数据对象信息返回给用户,其中,系统基表存储的数据对象统计信息用于数据对象库存储的数据对象的索引或访问路径。
根据CBO优化规则,为了能对应用SQL语句进行解析,产生准确高效的执行计划,oracle数据库从系统基表中获取相关数据库底层的数据对象统计信息,该统计信息是由最近一次对数据对象进行分析时记录在系统基表。因而,在该分析后,如果对oracle数据库中数据对象进行了操作并改变了该数据对象统计信息,则在查询时将导致系统基表中存储的该数据对象统计信息不可用。
因此,数据库底层数据对象统计信息可靠性的高低,将直接影响CBO产生执行计划的好坏。当前oracle数据库系统中,一般通过以下两种技术方案来实现数据对象统计信息的可靠性。
技术方案一:
以时间维度为衡量标准,按照一定的时间间隔(每日、每周、每月等),制定oracle数据库的定时分析作业,在时间间隔到时,对数据库中存储的数据对象按照分析策略进行分析,获取相应的数据对象统计信息并对系统基表中存储的数据对象统计信息进行更新以保障查询时数据对象统计信息的相对准确。
该以时间维度为衡量标准的技术方案适用于结构简单的单一型oracle数据库,其应用类型相对简单,数据库规模较小,无数据量激变。该技术方案应用较为广泛,是统计信息时效性的理论基础。
但该技术方案使用定时分析技术,随着oracle数据库复杂度的增加,在不同类型的对象数据变化趋势差异明显的情况下,无法制定对所有对象数据均适用的时间间隔,使得系统基表中存储的数据对象统计信息得不到及时的更新,因而,在技术方案一的基础上,提出了下述技术方案二。
技术方案二:
结合实际应用,根据数据对象业务逻辑的不同,以oracle数据库中具体业务数据的变化趋势及业务数据绝对变化量等为标准,对各个数据对象,有针对性的制定分析策略。例如,以oracle数据库中业务数据每增加100W条记录为标准,对oracle数据库分析一次,获取相应的数据对象统计信息并更新系统基表。
该技术方案在技术方案一的基础上,结合应用业务数据的变化趋势进行分析,适用于应用类型相对复杂但系统规模相对较小(数据对象相对较少)的oracle数据库。通过对不同业务类型的数据对象,设计不同的业务数据绝对变化量,并定制不同的数据对象分析策略分析相应的数据对象,来保证各数据对象统计信息的相对及时更新以及查询时的相对准确。
步骤103,oracle数据库根据执行计划执行SQL语句查询并返回查询结果。
如前所述,oracle数据库首先查询系统基表,判断系统基表中是否存储有SQL语句对应的数据对象统计信息,如果是,获取数据对象访问路径,根据访问路径找到相应的数据对象;否则,从存储的数据对象库中逐个查询,直到获取该SQL语句对应的数据对象。
由上述可见,现有的oracle数据库,在数据对象较少的情况下,通过定期或根据数据对象绝对变化量,对系统基表存储的数据对象统计信息进行更新,可以保障各数据对象统计信息的相对准确以及查询的命中率,从而有效降低了查询所需的时间。但随着信息技术的迅猛发展,oracle数据库系统需要处理的业务数据量、信息量越来越庞大,应用oracle数据库系统的结构设计越来越复杂,oracle数据库规模也随之与日俱增的情况下,基于数据对象业务逻辑的差异制定的业务数据绝对变化量等标准,如果预先设定的业务数据绝对变化量较小,则需要频繁更新,系统资源消耗大,维护成本高;如果预先设定的业务数据绝对变化量较大,当oracle数据库发生变化时,例如,将新的数据对象加入到oracle数据库中,或者对原有oracle数据库中的数据对象进行操作使其对应的数据对象统计信息发生变化,这时,由于无法保证及时对系统基表进行更新,容易造成信息疏漏及索引不正确,oracle数据库根据该未更新的系统基表对用户输入的信息进行查询,查询命中率低,数据对象统计信息可靠性低,增加了查询所需的时间。
发明内容
有鉴于此,本发明的主要目的在于提出一种提高数据库中数据对象统计信息可靠性的方法,降低数据库维护成本、提高数据库中数据对象统计信息的查询命中率。
本发明的另一目的在于提出一种提高数据库中数据对象统计信息可靠性的装置,降低数据库维护成本、提高数据库中数据对象统计信息的查询命中率。
为达到上述目的,本发明提供了一种提高数据库中数据对象统计信息可靠性的方法,该方法包括:
A、接收数据对象,根据接收的数据对象信息以及预先存储的数据对象信息,获取数据对象绝对改变量以及数据对象相对改变量,并存储该接收的数据对象以及数据对象名称;
B、判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值,如果是,执行C,否则,返回执行步骤A;
C、调用预先设定的分析策略,对数据库中存储的数据对象进行可靠性扫描,获取与存储的数据对象名称相同的数据对象;
D、调用分析程序对获取的数据对象进行处理,获取数据对象统计信息并更新存储数据对象统计信息的系统基表。
所述数据对象相对改变量为自数据库上一次更新后发生变化的数据对象绝对改变量与数据库上一次更新时存储的数据对象量的比值。
所述数据对象相对改变量包括:相对物理改变量和相对逻辑改变量;
所述数据对象绝对改变量包括:绝对物理改变量、绝对逻辑改变量和结构改变量。
所述相对逻辑改变量包括:插入相对改变量、更新相对改变量以及删除相对改变量;
所述相对物理改变量包括:数据对象块相对改变量;
所述绝对物理改变量包括:数据对象块绝对改变量;
所述绝对逻辑改变量包括:插入绝对改变量以及删除绝对改变量;
所述结构改变量为对系统基表执行增加/删除/修改字段操作以及添加新的索引信息导致的数据结构改变。
所述插入相对改变量为自上次进行数据对象分析后,对数据对象进行插入操作的记录数与总的记录数的比值;
所述更新相对改变量为自上次进行数据对象分析后,对数据库中原有数据对象进行更新操作的记录数与总的记录数的比值;
所述删除相对改变量为自上次进行数据对象分析后,对数据库中原有数据对象进行删除操作的记录数与总的记录数的比值;
所述数据对象块相对改变量为自上次进行数据对象分析后,数据对象块大小改变量与数据库中数据对象块总大小的比值。
所述数据对象改变量阈值包括:数据对象绝对改变量阀值和数据对象相对改变量阀值;
所述判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值包括:判断累计的数据对象绝对改变量是否超过预先设定的数据对象绝对改变量阈值、且累计的数据对象相对改变量是否超过预先设定的数据对象相对改变量阈值。
所述判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值包括:
判断累计的插入绝对改变量是否超过预先设定的插入绝对改变量阈值、且累计的插入相对改变量是否超过预先设定的插入相对改变量阈值;或,
判断累计的删除绝对改变量是否超过预先设定的删除绝对改变量阈值、且累计的删除相对改变量是否超过预先设定的删除相对改变量阈值;或,
判断累计的更新相对改变量是否超过预先设定的更新相对改变量阈值;或,
判断累计的数据对象块绝对改变量是否超过预先设定的数据对象块绝对改变量阈值、且累计的数据对象块相对改变量是否超过预先设定的数据对象块相对改变量阈值;或,
判断数据对象自上次分析后,是否发生过数据定义语言操作。
一种提高数据库中数据对象统计信息可靠性的装置,该装置包括:数据对象统计信息可靠性检测单元、数据对象统计信息可靠性获取单元以及数据对象统计信息存储单元,其中,
数据对象统计信息可靠性检测单元,用于根据当前操作的数据对象信息与预先存储的数据对象信息获取该数据对象改变量信息并存储该数据对象以及该数据对象名称,如果累计的数据对象改变量超过预先设定的数据对象改变量阈值,将存储的数据对象名称输出至数据对象统计信息可靠性获取单元;
数据对象统计信息可靠性获取单元,用于按照预先设定的分析策略从存储的数据对象中获取与接收的数据对象名称相同的数据对象,获取相应的数据对象统计信息,发送至数据对象统计信息存储单元;
数据对象统计信息存储单元,接收来自数据对象统计信息可靠性获取单元的数据对象统计信息并存储。
所述数据对象统计信息可靠性检测单元包括:数据对象接收模块、数据对象存储模块、数据对象处理模块、数据对象名称存储模块、数据对象发送模块以及数据对象改变量阈值存储模块,其中,
数据对象接收模块,用于接收数据对象,输出至数据对象处理模块;
数据对象处理模块,用于根据接收的数据对象以及数据对象存储模块存储的相应数据对象信息,获取数据对象改变量信息,将该数据对象输出至数据对象存储模块并将该数据对象名称输出至数据对象名称存储模块;判断累计的数据对象改变量是否超过数据对象改变量阈值存储模块存储的数据对象改变量阈值,如果是,从数据对象存储模块中获取与数据对象名称存储模块存储的数据对象名称相同的数据对象,输出至数据对象发送模块;
数据对象存储模块,预先存储有数据对象,用于接收数据对象处理模块输出的数据对象,更新相应数据对象;
数据对象发送模块,用于将接收的数据对象发送至外部的数据对象统计信息可靠性获取单元;
数据对象改变量阈值存储模块,用于存储数据对象改变量阈值。
由上述的技术方案可见,本发明提供的一种提高数据库中数据对象统计信息可靠性的方法及装置,接收数据对象,根据接收的数据对象信息以及预先存储的数据对象信息,获取数据对象绝对改变量以及数据对象相对改变量,并存储该接收的数据对象以及数据对象名称;判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值,如果否,返回执行接收数据对象的步骤,如果是,调用预先设定的分析策略,对数据库中存储的数据对象进行可靠性扫描,获取与存储的数据对象名称相同的数据对象;调用分析程序对获取的数据对象进行处理,获取数据对象统计信息并更新存储数据对象统计信息的系统基表。这样,通过引入数据对象相对改变量,与数据对象绝对改变量结合使用,以数据对象实时变化为依据,及时发现并自动处理变化的数据对象,最大限度的保证了数据对象统计信息与实际状况的偏差在可靠范围内;同时,降低了数据库维护成本、提高了数据库中数据对象统计信息的查询命中率。
附图说明
图1为现有oracle数据库中结构化查询语言语句的执行流程示意图。
图2为本发明实施例的提高数据库中数据对象统计信息可靠性的方法流程示意图。
图3为本发明实施例的提高数据库中数据对象统计信息可靠性的装置结构示意图。
图4为本发明实施例数据对象统计信息可靠性检测单元结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
现有技术中,无论是技术方案一还是技术方案二,都只适用于数据对象变化较少的数据库,并按照一定的时间间隔制定定时分析作业、或以业务数据绝对变化量为标准更新分析策略,因而,在数据对象变化较多时,其维护成本高,且在数据库发生变化时,不能及时更新分析策略,使得数据库系统基表中数据对象统计信息的查询命中率较低,增加了查询数据库数据对象所需时间。
上述时间维度的绝对量以及业务数据变化趋势的绝对量等均是基于某种绝对量的改变。但是,在实际生产中,由于数据库中基准数据对象量的不同,使得相同数据对象绝对量的改变可能对不同的数据库产生截然不同的效果。例如,有A、B两个数据库,A数据库原有1亿个数据对象,B数据库原有300万(W)个数据对象,假设两个数据库在3天时间内,均新增数据对象100W,此时,无论时间绝对量(3天)的改变、或是数据对象绝对量(100W)的改变,对两个数据库的影响都是迥然不同的:A数据库新增100W数据对象后,其数据对象改变率仅为1%(100W/1亿),对数据库系统基表中存储的数据对象统计信息查询命中率基本无影响,不需要为此更新分析策略,因而,无需重新采集数据对象统计信息;而对于B数据库,其数据对象改变率超过30%(100W/300W),因而,如果不对系统基表的分析策略进行更新,将使得数据对象统计信息查询命中率进一步降低,即需要重新采集数据对象统计信息以保障查询命中率。
如前所述,在用户进行查询时,数据库根据用户输入的查询关键词进行分析、处理后,从系统基表中获取相关数据对象统计信息,这些数据对象统计信息是由最近一次对数据对象分析时记录在系统基表中的。因而,如果用户输入的查询关键词是数据库最近一次对数据对象分析后更新的数据对象,则在系统基表中查询的命中率为零,需要从数据库存储的数据对象中逐个查询,由于从数据库数据对象中查询所需的时间要远远大于从系统基表中进行查询所需的时间,增加了查询所需的时间。
对于数据库来说,由于数据对象总是在不断变化(数据对象的新增、更新、删除等)的,因此在对数据对象分析前,记录的数据对象统计信息总是有一定程度的滞后性,下面描述中,将这种记录的数据对象统计信息与实际的数据对象统计信息的比值称之为数据对象相对改变量,即需要更新的数据对象改变量与数据库上一次更新时存储的数据对象量的比值。实际应用中,随着数据库的持续运行以及数据对象的新增、更新、删除等操作,数据对象相对改变量会越来越大,而随着数据对象相对改变量的逐渐增大,系统基库中的数据对象统计信息的可靠性就越来越低,使得CBO可能因此产生不恰当的执行计划,导致数据库整体可靠性降低。
因而,如果设置一个合理的数据对象相对改变量阀值,针对不同的数据对象绝对改变量,设置相应的数据对象相对改变量阀值,在数据对象相对改变量达到数据对象相对改变量阀值时,及时对数据库中需要更新的数据对象进行重新分析,使其在系统基表中相关的数据对象统计信息及时得到更新,这样,就可以保障数据对象统计信息的可靠性,从而提高数据库整体可靠性。
本发明实施例中,基于oracle数据库中数据对象绝对改变量以及数据对象相对改变量,通过准实时采集oracle数据库底层数据对象,获取各种数据对象绝对改变量以及相对改变量,提出评估oracle数据库底层数据对象绝对改变量以及数据对象相对改变量的算法,用来作为更新当前oracle数据库系统基表中数据对象统计信息的可靠性的依据,并建立自动分析队列对需要更新的数据对象进行分析处理,最终实现全oracle数据库所有数据对象统计信息的实时高可靠性保障,提升oracle数据库稳定运行指标。
所应说明的是,本实施例的技术方案不仅仅可以应用于oracle数据库,也可以应用于其它的数据库,其方法与应用于oracle数据库的方法相同,后续不再赘述。
下面先对本发明实施例涉及的数据库不同的数据对象以及相应的数据对象相对改变量进行描述。
数据对象绝对改变量包括数据对象绝对物理改变量(以下简称绝对物理改变量),数据对象绝对逻辑改变量(以下简称绝对逻辑改变量)以及结构改变量等;
数据对象相对改变量包括数据对象相对物理改变量(以下简称相对物理改变量),数据对象相对逻辑改变量(以下简称相对逻辑改变量)等。其中,
逻辑改变量包括:插入(Insert)改变量、更新(Update)改变量以及删除(Delete)改变量。
Insert改变量,用于记录自上次进行数据对象分析、并将数据对象统计信息记录在系统基表中后,对新数据对象进行insert操作的次数。
一般来说,进行一次insert操作,就会增加一条数据对象记录,并且根据数据对象当前的状况,还可能会引起数据对象的物理空间扩展,因此,本实施例中,可以设置该Insert改变量在满足设定的条件时,并在有其它需要分析的数据对象时,优先对该Insert改变量对应的数据对象进行分析。
Update改变量,用于记录自上次进行数据对象分析、并将数据对象的统计信息记录在系统基表中后,对oracle数据库中原有数据对象进行update操作的次数。
一般来说,正常的更新操作,不会对数据对象的物理结构造成较大影响,但也不排除某些情况下,由于update前后数据对象值差异较大使得数据对象发生行迁移而对空间使用产生影响。因此,本实施例中,可以设置该Update改变量在满足设定的条件时,并在有其它需要分析的数据对象时,可以先对其他需要分析的数据对象进行分析。
Delete改变量,用于记录自上次进行数据对象分析、并将数据对象的统计信息记录在系统基表中后,对oracle数据库中原有数据对象进行Delete操作的次数。
由于该Delete操作会减少oracle数据库中数据对象的记录数,但是并不回收数据对象所占用的物理空间,容易造成实际数据对象数据量与数据对象空间占用量不成正比的现象,因此,本实施例中,可以设置该Delete改变量对应的数据对象进行分析的优先级与Insert改变量的优先级相同。
所应说明的是,将上述Insert改变量、Update改变量以及Delete改变量分别与oracle数据库中记录的数据对象总量相比就可以得到相应的相对Insert改变量、相对Update改变量以及相对Delete改变量。
上述Insert改变量、Update改变量以及Delete改变量三个改变量,均是通过oracle数据库中的DML操作产生的,统称为逻辑改变量,其中,insert操作对数据对象的物理空间扩展有较为明显的作用,delete操作会删除oracle数据库中的数据对象,但不会回收该数据对象所占用的物理空间,而update操作,一般情况下,对数据对象的影响不明显。因而,三个改变量对应的数据对象分析优先级中,Insert改变量分析优先级以及Delete改变量分析优先级较高,Update改变量分析优先级较低。
由于逻辑改变量可以直接反映一个数据对象的物理空间改变情况,该物理改变量可以直接作为单独的数据对象统计信息可靠性评估标准。
物理改变量包括:数据对象所占用块(blocks)大小、字节数(bytes)大小等。
本实施例中,物理改变量主要体现在数据对象物理段的改变上。在对数据对象进行统计信息收集时,oracle数据库会将当前数据对象的物理改变量(物理使用状况),例如,该数据对象所占用blocks大小,bytes大小等,记录在oracle数据库中相应的存储模块中。后续中,如果数据对象发生变动,会在另外的存储模块中记录该数据对象实时的物理使用状况,通过两个存储模块核心指标(物理使用状况)的对比,即可得到相应的物理改变量,并可根据一定算法(例如,将总的物理改变量与系统基表中初始记录的总数据对象的物理空间相比),计算出相对物理改变量。当然,实际应用中,前述的逻辑改变量也可能导致物理改变量的变化。
由于物理改变量也可以直接反映一个数据对象的物理空间改变情况,该物理改变量可以直接作为单独的数据对象统计信息可靠性评估标准。
结构改变量,用于记录数据对象的数据结构的改变,如对系统基表执行增加/删除/修改字段操作,添加新的索引信息等,也会导致数据对象统计信息可靠性的降低,在oracle数据库中,该类结构改变量操作统称为DDL操作。
本实施例中,该类结构改变量,属于单一性的结构改变量,与物理改变量一样,可作为单独的数据对象统计信息可靠性评估标准。
上述的物理改变量、逻辑改变量以及结构改变量,基本囊括了一个数据对象可能发生的各种改变。
接着,再对本发明实施例涉及的数据对象相对改变量阈值进行描述。
从上述数据对象可能发生的改变量分析中可以得出,三种类型的改变量(物理改变量、逻辑改变量以及结构改变量),均能单独影响统计信息的可靠性。因此,本实施例中,对三种类型改变量的检测评估采取相对独立的方式,如果任一类型的改变量,达到检测标准的数据对象相对改变量阀值,则认为需要对系统基表中的数据对象统计信息进行更新。
本实施例中,与上述描述相对应,数据对象相对改变量阀值包括:相对逻辑改变量阀值、相对物理改变量阀值以及结构改变量阀值,其中,
相对逻辑改变量阀值,根据不同DML操作对数据对象的影响,为相对Insert改变量阀值、相对Update改变量阀值以及相对Delete改变量阀值分配不同的分析策略标准,也就是说,对于Delete操作和insert操作,既考虑绝对改变量,又考虑相对改变量;对于Update操作,仅考虑相对改变量。
insert操作的分析策略标准具体实现逻辑为:
Insert绝对改变量大于50W次、且insert相对改变量大于3%;或者
insert绝对改变量大于30W次、且insert相对改变量大于5%;或者
insert绝对改变量大于10W次、且insert相对改变量大于7%;或者
insert绝对改变量大于1W次、且insert相对改变量大于10%。
也就说,设置的Insert绝对改变量阈值以及Insert相对改变量阀值分别为:
Insert操作次数大于50W次、且insert操作次数(记录数)超过oracle数据库中数据对象原有记录数的3%以上;或者
insert操作次数大于30W次、且insert操作次数超过oracle数据库中数据对象原有记录数的5%以上;或者
insert操作次数大于10W次、且insert操作次数超过oracle数据库中数据对象原有记录数的7%以上;或者
insert操作次数大于1W次、且insert操作次数超过oracle数据库中数据对象原有记录数的10%以上。
符合上述条件中任意一条的数据对象,可以认为,频繁的insert操作已经大大降低了该数据对象统计信息的可靠性。
当然,实际应用中,也可以根据实际需要设置、调整Insert改变量,并根据insert相对改变量设置相应的逻辑改变量阀值等级。
上述inserts改变量阀值,即Insert绝对改变量阈值以及Insert相对改变量阀值的数学表达式如下:
(inserts>500000&(inserts/num_rows*100>3))||
(inserts>300000&(inserts/num_rows*100>5))||
(inserts>100000&(inserts/num_rows*100>7))||
(inserts>10000&(inserts/num_rows*100>10))
相应的数据库采集过滤代码实现如下:
Figure B2009102378644D0000141
Figure B2009102378644D0000151
其中,table_owner,table_name等变量可根据应用环境给予适当的赋值,并可以根据实际需要,从系统基表中读取其他项的信息执行过滤,以满足不同应用环境的需求。
相应地,Delete操作的分析策略标准具体实现逻辑为:
Delete绝对改变量大于30W次、且Delete相对改变量大于3%;或者
Delete绝对改变量大于20W次、且Delete相对改变量大于4%;或者
Delete绝对改变量大于10W次、且Delete相对改变量大于5%;或者
Delete绝对改变量大于1W次、且Delete相对改变量大于10%。
也就说,
Delete操作次数大于30W次、且delete操作次数超过oracle数据库中数据对象原有记录数3%以上;或者
Delete操作次数大于20W次、且Delete操作次数超过oracle数据库中数据对象原有记录数4%以上;或者
Delete操作次数大于10W次、且Delete操作次数超过oracle数据库中数据对象原有记录数5%以上;或者
Delete操作次数大于1W次、且Delete操作次数超过oracle数据库中数据对象的原有记录数10%以上。
与前述相同,符合上述条件中任意一条的数据对象,可以认为,频繁的Delete操作已经大大降低了该数据对象统计信息的可靠性。
上述Delete改变量阀值的数学表达式如下:
(Deletes>300000&(Deletes/num_rows*100>3))||
(Deletes>200000&(Deletes/num_rows*100>4))||
(Deletes>100000&(Deletes/num_rows*100>5))||
(Deletes>10000&(Deletes/num_rows*100>10))
相应的数据库采集过滤代码实现如下:
Figure B2009102378644D0000161
Figure B2009102378644D0000171
对于Update操作,如前所述,由于其对数据对象统计信息的可靠性影响较小,因此,本实施例中,Update操作次数(记录数)仅考虑相对量的改变,只有当Update操作次数超过oracle数据库中数据对象原有记录数10%以上时,认为该频繁的Update操作已经大大降低了该数据对象统计信息的可靠性。当然,实际应用中,也可以综合考虑Update改变量以及Update相对改变量,并设置多级具体的实现逻辑。
本实施例中,Update改变量阀值的数学表达式如下:
(Updates/num_rows*100>10)
相应的数据库采集过滤代码实现如下:
Figure B2009102378644D0000191
物理改变量阀值,用于表征数据对象当前block数与存储模块中所记录的前次收集统计信息时block数差异的临界值。当数据对象当前block数或byte数与存储模块中所记录的前次收集统计信息时block数或byte数差异大于物理改变量阀值时,可以认为,物理blocks或byte的改变量,已经降低了统计信息的可靠性。
根据经验值,以blocks为例,当数据对象blocks小于1000时,该数据对象可以被视为小对象,对数据库统计信息可靠性影响较小。因此,本实施例中,物理改变量阀值的具体实现逻辑为:
数据对象的物理blocks大于1000、且物理blocks的改变量超过该数据对象原有物理blocks的5%以上。
物理改变量阀值的数学表达式如下:
(abs((blocks_in_stats-blocks_now)/blocks_in_stats)*100>5&blocks_now>1000)||(stats is null & blocks now>1000)
相应地,数据库采集过滤代码实现如下:
Figure B2009102378644D0000201
与逻辑改变量阀值一样,对于table_owner等变量,可根据实际应用需要进行赋值,并可以根据不同应用环境的需求,添加、删除相应的信息。
此外,对于尚未收集过统计信息的新建数据对象,如果该数据对象物理blocks大于1000,也认为该数据对象降低了统计信息的可靠性。
结构改变量阀值,对于该结构类型改变,统称为DDL操作,属于单一性的结构改变量,因此,阀值标准较为简单,其具体实现逻辑为:
判断数据对象自前次分析后,是否发生过DDL操作,如果是,该数据对象统计信息失效。
结构改变量阀值的数学表达式如下:
Last_ddl_date>last_analyzed_date
相应的数据库采集过滤代码实现如下:
Figure B2009102378644D0000211
基于上述的分析,最后,对本发明实施例的提高数据库中数据对象统计信息可靠性的方法、设备及系统分别进行说明。
图2为本发明实施例的提高数据库中数据对象统计信息可靠性的方法流程示意图。参见图2,该流程包括:
步骤201,接收数据对象,根据接收的数据对象信息以及预先存储的数据对象信息,获取数据对象绝对改变量,并存储该接收的数据对象以及数据对象名称;
本步骤中,数据对象绝对改变量包括绝对物理改变量,绝对逻辑改变量以及结构改变量,其中,
绝对逻辑改变量包括:插入(Insert)绝对改变量、更新(Update)绝对改变量以及删除(Delete)绝对改变量。
绝对物理改变量包括:数据对象所占用块(blocks)大小绝对改变量、字节数(bytes)大小绝对改变量。
结构改变量包括:数据对象结构改变(增加/删除/修改字段以及增加/删除/修改索引)。
在获取数据对象绝对改变量信息的同时,存储该数据对象名称。如果对同一数据对象进行过多次操作,则覆盖该存储的数据对象名称。
步骤202,根据获取的数据对象绝对改变量信息以及预先存储的数据对象信息,获取数据对象相对改变量信息;
本步骤中,通过将获取的数据对象绝对改变量与预先存储的数据对象相比,其比值作为数据对象相对改变量。
如前所述,将Insert绝对改变量、Delete绝对改变量、blocks大小绝对改变量分别与数据库上一次更新时存储的数据对象的总数相比,分别得到Insert相对改变量、Delete相对改变量以及blocks大小相对改变量。
步骤203,判断累计的数据对象改变量是否超过预先设定的数据对象改变量阈值,如果是,执行步骤204,否则,返回执行步骤201;
本步骤中,判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值,如果是,表明需要重新进行数据对象分析。
预先设定的数据对象改变量阈值包括:数据对象绝对改变量阈值和数据对象相对改变量阈值。
数据对象绝对改变量阈值包括:绝对逻辑改变量阈值、绝对物理改变量阈值以及结构改变量阈值,其中,绝对逻辑改变量阈值又包括:Insert绝对改变量阈值、Delete绝对改变量阈值以及Update绝对改变量阈值。
数据对象相对改变量阈值包括:相对逻辑改变量阈值、相对物理改变量阈值,其中,相对逻辑改变量阈值又包括:Insert相对改变量阈值、Delete相对改变量阈值以及Update相对改变量阈值。
本实施例中,如果数据对象绝对改变量超过预先设定的数据对象绝对改变量阈值、且数据对象相对改变量超过预先设定的数据对象相对改变量阈值,则认为需要重新分析该数据对象。例如,如果Insert操作次数超过预先设定的Insert操作次数阈值、且insert操作次数超过oracle数据库中数据对象原有记录数的3%,则执行步骤204,如果数据对象改变量中所有参数都没有超过预先设定的数据对象改变量阈值中相应的改变量阈值,则结束流程。
步骤204,调用预先设定的分析策略,对数据库中数据对象进行可靠性扫描,获取与存储的数据对象名称相同的数据对象信息;
本步骤中,可以预先创建一定时作业以及一张队列表,当需要重新分析数据对象后,每隔5分钟(该时间间隔可任意设置),根据预先设定的分析策略对数据库中存储的数据对象进行一次可靠性扫描,将数据库中与存储的数据对象名称相同的数据对象信息(表名及表属主用户信息等)插入到队列表中。
预先设定的分析策略以及对数据库中数据对象进行可靠性扫描或过滤,属于现有技术,具体可参见相关技术文献,在此不再赘述。
步骤205,调用分析程序对获取的数据对象信息进行处理,获取数据对象统计信息并更新存储数据对象统计信息的系统基表。
本步骤中,从获取的数据对象信息中获取数据对象统计信息为现有技术,实际应用中,可以创建一个实时分析作业,实时监控获取的数据对象信息,即队列表信息,当监控程序监控到队列表中有信息时,调用分析程序对队列表中的数据对象信息进行分析,获取相关的该数据对象统计信息,分析完成后,从队列表中清除该已分析的数据对象,并将获取的数据对象统计信息写入系统基表。如果监控到当前队列表为空,则监控进入休眠状态1分钟(该时间间隔可根据需要随意调整),监控程序实现部分如下:
Figure B2009102378644D0000231
至此,提高数据库中数据对象统计信息可靠性的方法流程结束。
由上述可见,本发明实施例,通过数据对象统计信息可靠性检测(步骤201~步骤203)以及数据对象统计信息可靠性实时保障(步骤204~步骤205)两部分操作,实现数据库中数据对象统计信息的高可靠性的实时保障,从而保证CBO持续解析正确高效的执行计划,保障数据库性能稳定。
图3为本发明实施例的提高数据库中数据对象统计信息可靠性的装置结构示意图。参见图3,该装置包括:数据对象统计信息可靠性检测单元、数据对象统计信息可靠性获取单元以及数据对象统计信息存储单元,其中,
数据对象统计信息可靠性检测单元,用于根据当前操作的数据对象信息与预先存储的数据对象信息获取该数据对象改变量信息并存储该数据对象以及该数据对象名称,如果累计的数据对象改变量超过预先设定的数据对象改变量阈值,将存储的数据对象名称输出至数据对象统计信息可靠性获取单元;
数据对象统计信息可靠性获取单元,用于按照预先设定的分析策略从存储的数据对象中获取与接收的数据对象名称相同的数据对象,获取相应的数据对象统计信息,发送至数据对象统计信息存储单元;
数据对象统计信息存储单元,接收来自数据对象统计信息可靠性获取单元的数据对象统计信息并存储。
图4为本发明实施例数据对象统计信息可靠性检测单元结构示意图。参见图4,该数据对象统计信息可靠性检测单元包括:数据对象接收模块、数据对象存储模块、数据对象处理模块、数据对象名称存储模块、数据对象发送模块以及数据对象改变量阈值存储模块,其中,
数据对象接收模块,用于接收数据对象,输出至数据对象处理模块;
数据对象处理模块,用于根据接收的数据对象以及数据对象存储模块存储的相应数据对象信息,获取数据对象改变量信息,将该数据对象输出至数据对象存储模块并将该数据对象名称输出至数据对象名称存储模块;判断累计的数据对象改变量是否超过数据对象改变量阈值存储模块存储的数据对象改变量阈值,如果是,从数据对象存储模块中获取与数据对象名称存储模块存储的数据对象名称相同的数据对象,输出至数据对象发送模块;
本实施例中,存储的数据对象信息包括:Insert操作次数、Delete操作次数、Update操作次数、blocks大小、bytes大小。
数据对象存储模块,预先存储有数据对象,用于接收数据对象处理模块输出的数据对象,更新相应数据对象;
本实施例中,更新相应数据对象包括:如果数据对象存储模块中没有存储有该数据对象,则存储该数据对象;如果数据对象存储模块中存储有该数据对象,则用接收的数据对象覆盖存储的数据对象。
数据对象发送模块,用于将接收的数据对象发送至外部的数据对象统计信息可靠性获取单元;
数据对象改变量阈值存储模块,用于存储数据对象改变量阈值。
由上述可见,通过结合数据对象统计信息可靠性检测与数据对象统计信息可靠性保障,可以保障数据对象统计信息的持续高可靠性,避免了由于数据对象统计信息失效引起的执行计划不稳定的问题;进一步地,通过引入数据对象相对改变量,与数据对象绝对改变量结合使用,避免了现有只考虑数据对象绝对改变量的不足,同时,综合考虑了逻辑改变量、物理改变量、结构改变量等几乎所有可能在数据对象上发生的改变量,适用性高、适用面广,以数据对象实时变化为依据,及时发现并自动处理变化的数据对象,最大限度的保证了数据对象统计信息与实际状况的偏差在可靠范围内。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种提高数据库中数据对象统计信息可靠性的方法,其特征在于,该方法包括:
A、接收数据对象,根据接收的数据对象信息以及预先存储的数据对象信息,获取数据对象绝对改变量以及数据对象相对改变量,并存储该接收的数据对象以及数据对象名称;
B、判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值,如果是,执行C,否则,返回执行步骤A;
C、调用预先设定的分析策略,对数据库中存储的数据对象进行可靠性扫描,获取与存储的数据对象名称相同的数据对象;
D、调用分析程序对获取的数据对象进行处理,获取数据对象统计信息并更新存储数据对象统计信息的系统基表。
2.如权利要求1所述的方法,其特征在于,所述数据对象相对改变量为自数据库上一次更新后发生变化的数据对象绝对改变量与数据库上一次更新时存储的数据对象量的比值。
3.如权利要求2所述的方法,其特征在于,所述数据对象相对改变量包括:相对物理改变量和相对逻辑改变量;
所述数据对象绝对改变量包括:绝对物理改变量、绝对逻辑改变量和结构改变量。
4.如权利要求3所述的方法,其特征在于,
所述相对逻辑改变量包括:插入相对改变量、更新相对改变量以及删除相对改变量;
所述相对物理改变量包括:数据对象块相对改变量;
所述绝对物理改变量包括:数据对象块绝对改变量;
所述绝对逻辑改变量包括:插入绝对改变量以及删除绝对改变量;
所述结构改变量为对系统基表执行增加/删除/修改字段操作以及添加新的索引信息导致的数据结构改变。
5.如权利要求4所述的方法,其特征在于,
所述插入相对改变量为自上次进行数据对象分析后,对数据对象进行插入操作的记录数与总的记录数的比值;
所述更新相对改变量为自上次进行数据对象分析后,对数据库中原有数据对象进行更新操作的记录数与总的记录数的比值;
所述删除相对改变量为自上次进行数据对象分析后,对数据库中原有数据对象进行删除操作的记录数与总的记录数的比值;
所述数据对象块相对改变量为自上次进行数据对象分析后,数据对象块大小改变量与数据库中数据对象块总大小的比值。
6.如权利要求5所述的方法,其特征在于,所述数据对象改变量阈值包括:数据对象绝对改变量阀值和数据对象相对改变量阀值;
所述判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值包括:
判断累计的数据对象绝对改变量是否超过预先设定的数据对象绝对改变量阈值、且累计的数据对象相对改变量是否超过预先设定的数据对象相对改变量阈值。
7.如权利要求6所述的方法,其特征在于,
所述判断累计的数据对象绝对改变量以及数据对象相对改变量是否超过预先设定的数据对象改变量阈值包括:
判断累计的插入绝对改变量是否超过预先设定的插入绝对改变量阈值、且累计的插入相对改变量是否超过预先设定的插入相对改变量阈值;或,
判断累计的删除绝对改变量是否超过预先设定的删除绝对改变量阈值、且累计的删除相对改变量是否超过预先设定的删除相对改变量阈值;或,
判断累计的更新相对改变量是否超过预先设定的更新相对改变量阈值;或,
判断累计的数据对象块绝对改变量是否超过预先设定的数据对象块绝对改变量阈值、且累计的数据对象块相对改变量是否超过预先设定的数据对象块相对改变量阈值;或,
判断数据对象自上次分析后,是否发生过数据定义语言操作。
8.一种提高数据库中数据对象统计信息可靠性的装置,其特征在于,该装置包括:数据对象统计信息可靠性检测单元、数据对象统计信息可靠性获取单元以及数据对象统计信息存储单元,其中,
数据对象统计信息可靠性检测单元,用于根据当前操作的数据对象信息与预先存储的数据对象信息获取该数据对象改变量信息并存储该数据对象以及该数据对象名称,如果累计的数据对象改变量超过预先设定的数据对象改变量阈值,将存储的数据对象名称输出至数据对象统计信息可靠性获取单元;
数据对象统计信息可靠性获取单元,用于按照预先设定的分析策略从存储的数据对象中获取与接收的数据对象名称相同的数据对象,获取相应的数据对象统计信息,发送至数据对象统计信息存储单元;
数据对象统计信息存储单元,接收来自数据对象统计信息可靠性获取单元的数据对象统计信息并存储。
9.如权利要求8所述的装置,其特征在于,所述数据对象统计信息可靠性检测单元包括:数据对象接收模块、数据对象存储模块、数据对象处理模块、数据对象名称存储模块、数据对象发送模块以及数据对象改变量阈值存储模块,其中,
数据对象接收模块,用于接收数据对象,输出至数据对象处理模块;
数据对象处理模块,用于根据接收的数据对象以及数据对象存储模块存储的相应数据对象信息,获取数据对象改变量信息,将该数据对象输出至数据对象存储模块并将该数据对象名称输出至数据对象名称存储模块;判断累计的数据对象改变量是否超过数据对象改变量阈值存储模块存储的数据对象改变量阈值,如果是,从数据对象存储模块中获取与数据对象名称存储模块存储的数据对象名称相同的数据对象,输出至数据对象发送模块;
数据对象存储模块,预先存储有数据对象,用于接收数据对象处理模块输出的数据对象,更新相应数据对象;
数据对象发送模块,用于将接收的数据对象发送至外部的数据对象统计信息可靠性获取单元;
数据对象改变量阈值存储模块,用于存储数据对象改变量阈值。
CN2009102378644A 2009-11-12 2009-11-12 提高数据库中数据对象统计信息可靠性的方法及装置 Pending CN102063449A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009102378644A CN102063449A (zh) 2009-11-12 2009-11-12 提高数据库中数据对象统计信息可靠性的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009102378644A CN102063449A (zh) 2009-11-12 2009-11-12 提高数据库中数据对象统计信息可靠性的方法及装置

Publications (1)

Publication Number Publication Date
CN102063449A true CN102063449A (zh) 2011-05-18

Family

ID=43998728

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009102378644A Pending CN102063449A (zh) 2009-11-12 2009-11-12 提高数据库中数据对象统计信息可靠性的方法及装置

Country Status (1)

Country Link
CN (1) CN102063449A (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102930003A (zh) * 2012-10-24 2013-02-13 浙江图讯科技有限公司 一种用于优化数据库查询计划的系统及其方法
CN103150308A (zh) * 2011-12-06 2013-06-12 中国移动通信集团北京有限公司 一种对数据库无响应状态的处理方法及装置
CN103298080A (zh) * 2012-02-24 2013-09-11 英特尔移动通信有限责任公司 通信设备中的增强的功率管理
CN104182540A (zh) * 2014-09-03 2014-12-03 北京国双科技有限公司 数据仓库中的索引统计信息处理方法及装置
CN105117435A (zh) * 2015-08-07 2015-12-02 北京思特奇信息技术股份有限公司 一种动态数据一致性比对方法及系统
CN106445949A (zh) * 2015-08-07 2017-02-22 北京国双科技有限公司 检测数据表中数据变化的方法和装置
CN107040532A (zh) * 2017-04-05 2017-08-11 成都爱途享科技有限公司 一种使用在校验码验证的数据评估装置
CN107066625A (zh) * 2017-05-12 2017-08-18 郑州云海信息技术有限公司 一种Oracle数据库表统计信息收集方法及系统
CN107169095A (zh) * 2017-05-12 2017-09-15 郑州云海信息技术有限公司 一种db2数据库表统计信息收集方法及系统
CN107798036A (zh) * 2017-04-10 2018-03-13 平安科技(深圳)有限公司 一种计数方法及计数器
WO2019062022A1 (zh) * 2017-09-30 2019-04-04 平安科技(深圳)有限公司 数据库修改方法及应用服务器
CN111984628A (zh) * 2020-08-28 2020-11-24 北京人大金仓信息技术股份有限公司 数据库统计信息采集方法、装置、介质和电子设备

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150308A (zh) * 2011-12-06 2013-06-12 中国移动通信集团北京有限公司 一种对数据库无响应状态的处理方法及装置
CN103150308B (zh) * 2011-12-06 2016-04-27 中国移动通信集团北京有限公司 一种对数据库无响应状态的处理方法及装置
CN103298080A (zh) * 2012-02-24 2013-09-11 英特尔移动通信有限责任公司 通信设备中的增强的功率管理
US9294996B2 (en) 2012-02-24 2016-03-22 Intel Deutschland Gmbh Enhanced power management in communication device
CN102930003A (zh) * 2012-10-24 2013-02-13 浙江图讯科技有限公司 一种用于优化数据库查询计划的系统及其方法
CN104182540B (zh) * 2014-09-03 2017-10-27 北京国双科技有限公司 数据仓库中的索引统计信息处理方法及装置
CN104182540A (zh) * 2014-09-03 2014-12-03 北京国双科技有限公司 数据仓库中的索引统计信息处理方法及装置
CN105117435A (zh) * 2015-08-07 2015-12-02 北京思特奇信息技术股份有限公司 一种动态数据一致性比对方法及系统
CN106445949A (zh) * 2015-08-07 2017-02-22 北京国双科技有限公司 检测数据表中数据变化的方法和装置
CN107040532A (zh) * 2017-04-05 2017-08-11 成都爱途享科技有限公司 一种使用在校验码验证的数据评估装置
CN107040532B (zh) * 2017-04-05 2020-11-03 成都爱途享科技有限公司 一种使用验证码校验的数据评估装置
CN107798036A (zh) * 2017-04-10 2018-03-13 平安科技(深圳)有限公司 一种计数方法及计数器
CN107169095A (zh) * 2017-05-12 2017-09-15 郑州云海信息技术有限公司 一种db2数据库表统计信息收集方法及系统
CN107066625A (zh) * 2017-05-12 2017-08-18 郑州云海信息技术有限公司 一种Oracle数据库表统计信息收集方法及系统
WO2019062022A1 (zh) * 2017-09-30 2019-04-04 平安科技(深圳)有限公司 数据库修改方法及应用服务器
CN111984628A (zh) * 2020-08-28 2020-11-24 北京人大金仓信息技术股份有限公司 数据库统计信息采集方法、装置、介质和电子设备

Similar Documents

Publication Publication Date Title
CN102063449A (zh) 提高数据库中数据对象统计信息可靠性的方法及装置
US8239369B2 (en) Method and apparatus for enhancing performance of database and environment thereof
CN103390066B (zh) 一种数据库全局性自动化优化预警装置及其处理方法
US10452625B2 (en) Data lineage analysis
CN103176974B (zh) 优化数据库中访问路径的方法和装置
US20070250517A1 (en) Method and Apparatus for Autonomically Maintaining Latent Auxiliary Database Structures for Use in Executing Database Queries
CN111061758B (zh) 数据存储方法、装置及存储介质
CN111459698A (zh) 一种数据库集群故障自愈方法及装置
WO2018153210A1 (zh) 一种自动创建索引的方法、装置及数据库系统
US20230067182A1 (en) Data Processing Device and Method, and Computer Readable Storage Medium
CN111241059B (zh) 一种基于数据库的数据库优化方法及装置
JP2020057416A (ja) 分散データベースにおけるデータブロックを処理する方法およびデバイス
WO2023093607A1 (zh) 一种离线数据模糊搜索方法、装置、设备和介质
US20070143246A1 (en) Method and apparatus for analyzing the effect of different execution parameters on the performance of a database query
CN102332004A (zh) 用于海量数据管理的数据处理方法和系统
CN112783900A (zh) 数据库管理方法、装置、设备及存储介质
van Renen et al. Why TPC is not enough: An analysis of the Amazon Redshift fleet
CN106776704B (zh) 统计信息收集方法和装置
US12026162B2 (en) Data query method and apparatus, computing device, and storage medium
CN110704472A (zh) 数据查询统计方法及装置
KR101331350B1 (ko) 데이터 큐브를 이용한 대용량 시계열 데이터 관리 방법
CN108920664B (zh) 一种基于索引价值的数据库智能索引实现方法
CN107766452B (zh) 一种适合电力调度数据高速存取的索引系统及其索引方法
CN117555969A (zh) 基于Hive的血缘信息管理方法、装置及计算机设备
CN109739883A (zh) 提升数据查询性能的方法、装置和电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20110518