CN102117305A - 查询数据的系统、方法和数据管理系统 - Google Patents

查询数据的系统、方法和数据管理系统 Download PDF

Info

Publication number
CN102117305A
CN102117305A CN2010100001631A CN201010000163A CN102117305A CN 102117305 A CN102117305 A CN 102117305A CN 2010100001631 A CN2010100001631 A CN 2010100001631A CN 201010000163 A CN201010000163 A CN 201010000163A CN 102117305 A CN102117305 A CN 102117305A
Authority
CN
China
Prior art keywords
data
index
secondary index
binding
base table
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
CN2010100001631A
Other languages
English (en)
Other versions
CN102117305B (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 Mobile Communications Group Co Ltd
China Mobile Communications Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group 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 Communications Group Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN 201010000163 priority Critical patent/CN102117305B/zh
Publication of CN102117305A publication Critical patent/CN102117305A/zh
Application granted granted Critical
Publication of CN102117305B publication Critical patent/CN102117305B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

本发明公开了查询数据的系统、方法和数据管理系统。所述查询数据的系统包括:存储媒介,存储有多个数据、以及为所述多个数据创建并与之绑定的次索引;索引元数据管理模块,用于管理从存储于数据库的基表数据中获取索引元数据,其中,所述索引元数据用于根据预定规则创建所述多个数据;以及索引数据管理模块,用于根据从用户端接收的操作指令,通过绑定的所述次索引在所述存储媒介中查询到要操作的数据。

Description

查询数据的系统、方法和数据管理系统
技术领域
本申请公开的内容涉及查询数据的系统、方法和数据管理系统。本申请公开的内容还涉及一种为数据库创建数据索引的方法。
背景技术
在数据库系统中,索引对于改善数据查询速度有着举足轻重的作用,充分使用索引可以改善数据库应用程序的性能。从索引的物理形式上看,数据库的索引分为集群索引(Cluster Index)和非集群索引(Noncluster Index)两种,区别在于数据按照集群索引有序存放,而非集群索引一般不与数据存储在一起,数据也不会按照非集群索引排序。一般地,集群索引被称为数据库主索引(Primary Index),被索引属性称为主键(Primary Key),非集群索引被称作次索引(Secondary Index)。
当对数据库中的数据进行查询或者按非主键的列排序或统计时,需要先扫描次索引以找到与次索引关联的数据,然后在找到的数据中根据主索引确定要操作的数据。这样,会不停地读取磁盘不同位置的文件,磁头需要多次移动来完成对数据排序、统计等操作,所需要处理时间长。
目前解决此类问题的方式是使用物化视图将用户的查询指令生成新表,表中包括查询指令和数据,对用户常用的查询指令,用户直接调用该物化视图即可。然而,上述物化视图的方式更新成本高、查询性能低。
发明内容
本申请的公开了一种数据索引系统,其可包括:
存储媒介,存储有多个数据、以及为所述多个数据创建并与之绑定的次索引;
索引元数据管理模块,用于管理从存储于数据库的基表数据中获取索引元数据,其中,所述索引元数据用于根据预定规则创建所述多个数据;以及
索引数据管理模块,用于根据从用户端接收的操作指令,通过绑定的所述次索引在所述存储媒介中查询到要操作的数据。
本申请还公开了一种数据管理系统,其可包括:
第一数据查询子系统;以及
第二数据查询子系统,所述第二数据查询子系统包括上述的数据索引系统;
其中,所述数据索引系统中的判定模块从用户端接收操作指令,并判定是否要在所述数据索引系统中通过绑定的所述次索引执行所述操作指令,当判定的结果为是时,所述数据索引系统中的索引数据管理模块通过绑定的所述次索引查询所述操作指令要执行操作的数据,否则
所述判定模块触发所述第一数据查询子系统以通过所述基表数据具有的次索引找到与该次索引关联的基表数据,然后在找到的基表数据中根据所述基表数据具有的主索引确定要操作的数据。
本申请还公开了一种查询数据的方法,所述方法可包括:
从用户端接收数据操作指令;
确定是否要通过绑定的次索引执行所述数据操作指令,其中,所述绑定的次索引与多个数据相互绑定,所述多个数据根据预定规则从数据库的基表数据中创建;以及
如果确定的结果为是,则通过所述绑定的次索引在绑定的多个数据中查询所述数据操作指令要执行操作的数据。
此外,本申请还公开了一种为数据库创建数据索引的方法。该方法可包括:
根据预定规则从所述数据库中的基表数据中创建要绑定的多个数据;
为所述多个数据创建次索引;
将所述多个数据和所述次索引绑定;以及
将所述绑定的多个数据和次索引在物理上独立于所述数据库中的基表数据相邻存储。
附图说明
图1显示了根据本申请一个实施方式的查询数据的方法的流程图;
图2显示了根据本申请一个实施方式的用于建立扩展的次索引结构的具体处理流程图;
图3显示了根据本申请一个实施方式的更新扩展的次索引结构的具体处理流程图;
图4显示了根据本申请一个实施方式的数据索引系统的方框图;以及
图5显示了根据本申请一个实施方式的数据管理系统的方框图。
具体实施方式
下面将参照附图描述本申请的具体实施方式。
图1显示了根据本申请一个实施方式的查询数据的方法100。如图1所示,在步骤S101中从用户端接收数据操作指令,数据操作指令可例如是查询数据、创建数据、或更新数据等的指令。
接着,在步骤S102中确定是否要通过扩展的次索引结构执行数据操作指令。扩展的次索引结构包括与数据库中的元数据关联的多个数据以及与所述多个数据绑定的次索引。为了便于理解,在具体描述步骤S102之前,首先参照图2描述根据本申请的用于建立扩展的次索引结构的具体处理。
如图2所示,在步骤S201中,根据应用的需要和预定规则从数据库中的基表数据中创建要被绑定的多个数据。根据本发明的一个实施方式,要被绑定的数据例如是通过对用户经常进行的操作(如对于数据库的特定表中的特定列的查询、统计等)而形成的数据。具体地,要被绑定的数据例如包括:
·直方图(Histogram),即次索引所在的列(以下简称为“索引列”)在数据库中的出现次数;
·不同于索引列的其它数据列,例如,在WAP访问日志表中,IP地址是次索引,则其它数据列通常可以是要与该IP地址绑定的用户号码和机型;
·不同于索引列的其它数据列的函数值,例如,与次索引绑定的用户号码的前5位数;
·其它数据列和次索引列的函数值。例如,当单价为次索引列时,与该索引绑定的成本与单价的比值。
其中,数据库中用于创建要被绑定的数据的基表数据被称为“索引元数据”并被单独保存。关于索引元数据的作用将在后面进行描述。
接着,在步骤S202中为要绑定的多个数据创建次索引。关于次索引的定义可参见本申请背景技术部分的描述。可以使用与结构化查询语言(SQL)规范相近的语句创建次索引。例如可以采用指令CREATE INDEX Idx_NameON TABEL(table name[预处理方法1As被绑定数据1数据类型,预处理方法2As被绑定数据2数据类型,...,预处理方法N As被绑定数据N数据类型])来创建次索引。
根据本申请的一个实施方式,还可使用与SQL规范相近的语句对创建的次索引进行删除或更新。具体地,删除扩展的次级索引中的次索引的指令为:Drop Index Idx_Name,更新扩展的次级索引中次索引的指令可例如为:
◆Alter Index Idx_Name Add[预处理方法1As被绑定数据1数据类型,...]
◆Alter Index Idx_Name drop[被绑定数据1,...]
◆Alter Index Idx_Name modify[预处理方法1As被绑定数据1数据类型,...]。
接着,在步骤S203中将创建的数据和次索引绑定以形成扩展的次索引结构。扩展的次索引结构中可以将每个记录表示为元组(Tuple):(索引列,被绑定数据1,被绑定数据2...)。在由扩展的次索引结构确定的一个数据表中可以根据应用包括多个次索引。
扩展的次索引结构可例如表1所示。
Figure G2010100001631D00041
表1
如表1所示,扩展的次索引结构中例如记录如下信息:
1.索引名称:例如可以命名上表1中次索引“IndexedCol”名称为“DBI-1”;
2.索引列:例如在表1中名称为“IndexedCol”标志的列“A、B、C...”;
3.被绑定的数据,即在步骤S201中创建的数据。
此外,还可使用索引元数据列表保存上述扩展的次索引的描述信息。扩展的次索引的描述信息可以抽象的表述如下:
DBI-1:索引列,(绑定数据1,绑定数据2...),(公式1,公式2...)
DBI-2:...
其中,索引列为扩展的次索引中二级索引的创建列,绑定数据和公式表示数据表上被绑定数据的信息。
根据本申请的一个实施方式,为了加快判定某次更新是否涉及到扩展的次索引,还可以将所有绑定数据进一步通过另外一种视图表示,如下:
Figure G2010100001631D00051
表2
在表2中,第一列可以被表示为(col1,col2,...),并可看作是列向量。
根据本申请的一个实施方式,扩展的次索引结构中的数据和与其绑定的次索引在物理上相邻存储在数据库中;因此,保证只需一次磁盘IO就可以找到次索引和绑定的数据。
此外,对于每个被绑定的数据还需要在扩展的次索引结构中保存:被绑定的列名、创建要绑定的数据的规则等。
回到图1中的确定是否要通过扩展的次索引结构执行数据操作指令的步骤S102。具体地,在该步骤中根据接收到的数据操作指令判断:
(1)是否调用索引元数据管理接口:Index DDL
(2)是否调用索引/数据更新接口:Insert、Delete、Update
(3)是否调用索引访问接口:Query
其中(1)和(2)均和常规的数据库一般的判定规则一致,即基于对SQL的指令的分析即可。针对(3)的判断则有所不同。以如下查询(子查询)语句为例:
Select[输出]where[条件]order by[排序列]group by[分组列]
在使用规则(rule)的查询优化场景中,当“输出”中包含的数据与被绑定的数据一致(至少少于被绑定的数据),且“条件”、“排序列”或者“分组列”中包含被绑定的数据的次索引,但是不使用主索引时,通过该包含的次索引在扩展的次索引结构中执行上述查询语句,即执行步骤S103,否则执行步骤S104。
根据本申请的另一实施方式,在使用成本(cost)的查询优化场景中,执行的判定过程如下:
(a)将查询语句或指令与扩展的子索引查询模式(例如符合下述SQL语句的模式)比对,如果匹配,则可以转换为“扩展的子索引查询模式”。一个扩展的子索引查询模式可以表示为:
Select[绑定数据|被索引列]where[绑定数据|被索引列]order by[绑定数据|被索引列]group by[绑定数据|被索引列]
(b)计算转换后的查询的成本。扩展的子索引查询模式的查询过程完全基于次索引就可以完成,因此查询成本为次索引的访问成本。具体地,如果次索引采用B树索引,则为遍历成本+索引和数据访问成本,而如果采用字典序索引,则为扫描成本。
(c)如果扩展的子索引查询模式的查询成本与其他可能的查询模式相比成本更低,则选择使用扩展的子索引查询模式查询,即执行步骤S103,否则执行步骤S104。
在步骤S103中,通过绑定的次索引在扩展的次索引结构中查询操作指令要执行操作的数据,即在扩展的次索引结构中,通过扫描绑定的次索引而直接找到要操作的数据,从而对独立于基表数据而单独存储的、绑定的数据进行相应的操作。
当通过在扩展的次索引结构中查询到要操作的数据后,需要从物理存储中加载次索引和被绑定的数据到内存进行处理;或者为了提高性能,可使用缓存来加载被绑定的数据和次索引。根据本申请的一个实施方式,还可以在系统初始化时将相互绑定的次索引或数据加载到内存或缓冲中。
当在步骤S102中判断的结果是不在所述扩展的次索引结构中查询操作指令要执行操作的数据,则在步骤S104中利用常规的索引系统查询操作指令要执行操作的数据。例如,可先通过数据库的基表中的次索引在基表中找到与次索引关联的基表数据,然后再根据基表中设置的主索引在所找到基表数据中找到操作指令要执行的数据,从而执行相应操作。
此外,当数据库的基表中的数据更新时,例如在基表中更新被索引的基表数据的同时,需要对扩展的次索引结构中的次索引和被绑定的数据实施相应的更新操作。
索引变更可能由两个方面引发:
◆索引列数据的更新/新增/删除
◆被绑定的数据的更新/更新/删除
在某个基表上的基表数据更新可以抽象描述为:{Action,Data}。其中Action可以是更新、新增或删除等操作;其中Data可以进一步表述为{(col1,v1),(col2,v2)...},意思是数据列(col)和此列的取值。
由于在扩展的次索引结构中被绑定的数据中包含用户自定义的内容,包括索引列、数据列及数据列的取值函数。因此,存储于数据库中的基表数据的更新会导致扩展的次索引结构中的次索引列和被绑定的数据的更新。下面参照图3描述根据本申请一个实施方式的更新的流程300:
步骤S301,通过上文中提到的索引元数据确定在基表中当前更新列{colx,coly,...}是否与扩展的次索引结构中的列相关。
步骤S302,如果相关,则确定扩展的次索引结构中需要更新的数据;如果扩展的次索引结构中使用列向量,则只需使用快速的位运算就可以检测并确定在扩展的次索引结构中需要更新的列。
步骤S303,根据每个当前被更新的列{colx,coly,...}的取值,通过与该列相关的预定规则(即,取值函数)计算出该列最终更新后的数据结果,并将计算结果暂存;如果更新与扩展的次索引结构中的次索引列有关,则更新次索引列。
步骤S304,当前更新涉及到的所有列计算完成后,将最终更新后的结果持久化存储,即更新了扩展的次索引结构中的相关列。如果已经缓存了扩展的次索引结构的相关数据列,则更新缓存。如果存储失败,则需要报告错误,本次数据更新失败。
下面将参照图4描述根据本申请另一实施方式的数据索引系统400。
数据索引系统400可用于查询任何公知的数据库(例如SQL Server等)。如图4所示,系统400包括判定模块401、索引数据管理模块402、索引元数据管理模块403、索引/数据更新接口404、索引访问接口405、和索引元数据管理接口406。
在数据索引系统400中存储有扩展的次索引结构407。扩展的次索引结构407由根据上述预定规则从数据库的基表数据中创建的多个数据,以及为多个数据创建的次索引。多个数据和相应的次索引相互绑定,并在物理上相邻存储。关于扩展的次索引结构的相关内容与上述在步骤S201~203中的相关描述相同。此外,在数据索引系统400中还存储有从数据库的基表数据获取的、用于创建绑定的多个数据的索引元数据408。
判定模块401用于从用户接收操作指令,并确定操作指令的类型。用户的操作指令例如可以是管理索引元数据408的指令(创建、修改、删除和查询)、访问扩展的次索引结构407的索引访问指令(查询/统计)或者更新扩展的次索引结构407的更新指令。此外,用户的操作指令还可以是任何对基表数据进行操作的指令。
判定模块401还可根据接收的操作指令确定是否要通过扩展的次索引结构407执行该操作指令。具体地,当操作指令中包括被绑定的次索引,而且不包括数据库基表中的主索引时,判定模块401判定出要在扩展的次索引结构中执行操作指令。作为一种选择,当通过扩展的次索引结构执行数据操作指令的查询成本与使用数据库基表中的主索引和次索引查询相比成本更低时,则判定模块401判定在扩展的次索引结构中执行所述数据操作指令。
当判定模块401判定的结果是需要通过扩展的次索引结构对绑定的数据进行操作时,将进一步根据操作指令要对数据操作的类型,以选择性地通过索引/数据更新接口404或索引访问接口405发送到索引数据管理模块402。当判定模块401判定的结果要对索引元数据进行操作时,将通过索引元数据管理接口406将用户操作指令发送到索引元数据管理模块403。
索引数据管理模块402基于接收的操作指令,通过绑定的次索引在扩展的次索引结构407中查询操作指令要执行操作的数据。此外,当索引数据管理模块402接收到用户操作指令时,可决定是否直接从物理存储中加载次索引和被绑定数据到内存进行操作,或者将被绑定的数据和索引加载到缓存进行操作。索引数据管理模块402可通过加载的次索引直接找到与该次索引绑定的数据。
索引元数据管理模块403用于根据操作指令管理索引元数据408。例如创建、修改、删除和查询索引元数据408。当数据库基表中的元数据发生变化时,索引元数据管理模块403触发索引数据管理模块402对扩展的的次索引结构407中的数据列进行相应的改变。具体地,索引元数据管理模块403从索引元数据408中确定当前发生更新的元数据是否与扩展的次索引结构407中的次索引和被绑定的数据列有关,如果有关,则通知所述索引数据管理模块根据当前发生更新的元数据的取值,通过上述预定规则计算被绑定的数据的更新结果,并以该更新结果对其进行更新。这部分的内容请参见上述参照图3的描述。
下面将参照图5描述根据本申请另一实施方式的基于数据库的数据管理系统500。
如图5所示,数据管理系统500包括第一查询子系统501和第二查询子系统502。第一查询子系统501可例如包括如图4所示的数据索引系统400。下面将以第一查询子系统501包括如图4所示的数据索引系统400为例对数据管理系统500的具体操作流程进行说明。此外,为了清楚起见,在图5中仅示出了数据索引系统400的判定模块401。
如上所述,数据索引系统400的判定模块401可根据接收的操作指令确定是否要通过扩展的次索引结构407执行该操作指令。例如,当从用户接收的操作指令中包括被绑定的次索引,而且未包括数据库基表中的主索引时,判定模块401判定通过扩展的次索引结构执行所述数据操作指令。即,利用数据索引系统400来执行数据操作指令。作为一种选择,判定模块401可通过对操作指令分析得出当通过扩展的次索引结构执行数据操作指令的查询成本与使用数据库的基表中的主索引和次索引查询相比成本更低,判定出要使用数据索引系统400来执行数据操作指令。
此外,数据管理系统500还包括存储媒介501用于在其中存储基表数据。存储媒介501和第二查询子系统502可形成任意公知的例如SQL Server等的数据库系统。
当判定模块401判定的结果是不需要通过数据索引系统400进行数据查询操作时,第二查询子系统502可基于操作指令,通过存储媒介501的基表中的次索引找到与该次索引关联的基表数据,然后在找到的基表数据中根据基表中的主索引确定要操作的数据。由于第二查询子系统502基于操作指令查询数据并执行根据操作指令对数据进行相应的操作可为现有技术实现,因此不再赘述。
以上所述仅为一些具体的实施方式,并非用来限制本发明的专利范围,凡是利用本申请说明书及附图内容所作的等效变换,或直接或间接运用在其他相关的技术领域的等同技术特征对本申请文件公开的技术方案进行的修改,均包括在本发明的保护范围内。

Claims (19)

1.一种数据索引系统,包括:
存储媒介,存储有多个数据、以及为所述多个数据创建并与之绑定的次索引;
索引元数据管理模块,用于管理从存储于数据库的基表数据中获取索引元数据,其中,所述索引元数据用于根据预定规则创建所述多个数据;以及
索引数据管理模块,用于根据从用户端接收的操作指令,通过绑定的所述次索引在所述存储媒介中查询到要操作的数据。
2.如权利要求1所述的系统,其中,所述预定规则被设置为使得所创建的多个数据包括以下数据中的至少一个:
所述次索引所在的数据列在所述数据库中出现的次数、所述数据库中与所述次索引不同的其它数据列、所述其它数据列对应的数值、以及所述其它数据列和所述次索引列的函数值。
3.如权利要求1所述的系统,还包括:
判定模块,用于判定所用操作指令的类型,以选择性地将所述操作指令发送到所述索引元数据管理模块或所述索引数据管理模块。
4.如权利要求3所述的系统,所述判定模块进一步被配置为判定是否要通过绑定的所述次索引在所述存储媒介中执行所述操作指令。
5.如权利要求3所述的系统,其中,当所述操作指令中包括被绑定的次索引,而且未包括在所述数据库的基表中设置的主索引时,所述判定模块判定要通过绑定的所述次索引在所述存储媒介中执行所述数据操作指令。
6.如权利要求5所述的系统,其中,当通过绑定的所述次索引执行所述数据操作指令的查询成本与使用所述数据库中的主索引和次索引查询相比成本更低,所述判定模块则判定要通过绑定的所述次索引在所述存储媒介中执行所述数据操作指令。
7.如权利要求1所述的系统,其中,所述索引数据管理模块还被配置为将绑定的所述次索引和数据加载到内存或缓冲进行操作。
8.如权利要求1所述的系统,其中,当所述索引元数据发生更新时,所述索引元数据管理模块触发所述索引数据管理模块对绑定的所述数据或次索引进行相应的更新。
9.如权利要求8所述的系统,所述索引元数据管理模块从所述索引元数据中确定当前发生的更新是否与绑定的所述次索引和数据有关,如果有关,则触发所述索引数据管理模块根据所述当前发生更新的索引元数据的取值,通过所述预定规则计算被绑定的数据的更新结果,并以该更新结果对其进行更新。
10.一种数据管理系统,包括:
第一数据查询子系统;以及
第二数据查询子系统,所述第二数据查询子系统包括如权利要求1-9中任意一项所述的数据索引系统;
其中,所述数据索引系统中的判定模块从用户端接收操作指令,并判定是否要在所述数据索引系统中通过绑定的所述次索引执行所述操作指令,当判定的结果为是时,所述数据索引系统中的索引数据管理模块通过绑定的所述次索引查询所述操作指令要执行操作的数据,否则
所述判定模块触发所述第一数据查询子系统以通过所述基表数据具有的次索引找到与该次索引关联的基表数据,然后在找到的基表数据中根据所述基表数据具有的主索引确定要操作的数据。
11.一种查询数据的方法,所述方法包括:
从用户端接收数据操作指令;
确定是否要通过绑定的次索引执行所述数据操作指令,其中,所述绑定的次索引与多个数据相互绑定,所述多个数据根据预定规则从数据库的基表数据中创建;以及
如果确定的结果为是,则通过所述绑定的次索引在绑定的多个数据中查询所述数据操作指令要执行操作的数据。
12.如权利要求11所述的方法,其中,所述预定规则被设置为使得所创建的多个数据包括以下数据中的至少一个:
所述次索引所在的数据列在数据库中出现的次数、所述数据库中与所述次索引不同的其它数据列、所述其它数据列对应的数值,所述其它数据列和所述次索引列的函数值。
13.如权利要求11所述的方法,其中,通过绑定的所述次索引在绑定的多个数据中查询所述数据操作指令要执行操作的数据的步骤还包括:
通过所述次索引确定所述数据操作指令要执行操作的数据;以及
将所述次索引和所确定的数据加载到内存或缓冲。
14.如权利要求11所述的方法,其中,当数据库中的基表数据更新时,所述方法还包括:
根据更新的基表数据的取值,通过所述预定规则计算出所述被绑定的数据的更新结果,并以该更新结果对所述被绑定的数据进行更新。
15.如权利要求11所述的方法,其中,所述数据库中的基表数据具有主索引和次索引,所述方法还包括:
如果确定的结果是不通过所述绑定的次索引执行所述数据操作指令,则通过所述基表数据的次索引在所述数据库的基表中找到与该次索引关联的基表数据,然后在找到的基表数据中,根据基表数据的主索引确定要操作的数据。
16.如权利要求15所述的方法,其中,当所述操作指令中包括被绑定的次索引,而且未包括所述主索引时,确定要通过所述绑定的次索引执行所述数据操作指令。
17.如权利要求15所述的方法,其中,当通过所述绑定的次索引执行所述数据操作指令的查询成本与使用所述基表数据的主索引和次索引查询相比成本更低,则确定要通过所述绑定的次索引执行所述数据操作指令。
18.一种为数据库创建数据索引的方法,包括:
根据预定规则从所述数据库中的基表数据中创建要绑定的多个数据;
为所述多个数据创建次索引;
将所述多个数据和所述次索引绑定;以及
将所述绑定的多个数据和次索引在物理上独立于所述数据库中的基表数据相邻存储。
19.如权利要求18所述的方法,其中,所述预定规则被设置为使得所创建的多个数据包括:
所述次索引所在的数据列在所述数据库中出现的次数、与所述次索引不同的其它数据列、所述其它数据列对应的数值,所述其它数据列和所述次索引列的函数值。
CN 201010000163 2010-01-06 2010-01-06 查询数据的系统、方法和数据管理系统 Active CN102117305B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010000163 CN102117305B (zh) 2010-01-06 2010-01-06 查询数据的系统、方法和数据管理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010000163 CN102117305B (zh) 2010-01-06 2010-01-06 查询数据的系统、方法和数据管理系统

Publications (2)

Publication Number Publication Date
CN102117305A true CN102117305A (zh) 2011-07-06
CN102117305B CN102117305B (zh) 2013-09-11

Family

ID=44216079

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010000163 Active CN102117305B (zh) 2010-01-06 2010-01-06 查询数据的系统、方法和数据管理系统

Country Status (1)

Country Link
CN (1) CN102117305B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810300A (zh) * 2014-03-10 2014-05-21 北京国双科技有限公司 用于非索引覆盖的数据查询方法和装置
CN104821907A (zh) * 2015-03-30 2015-08-05 四川神琥科技有限公司 一种电子邮件处理方法
CN105408857A (zh) * 2013-07-29 2016-03-16 亚马逊科技公司 通过针对选择性交织数据位生成用于关系数据库的多列索引
CN105488050A (zh) * 2014-09-17 2016-04-13 阿里巴巴集团控股有限公司 一种数据库多索引方法、装置及系统
CN105683961A (zh) * 2013-11-06 2016-06-15 华为技术有限公司 管理用于假设分析的回写的数据的方法和系统
WO2017067117A1 (zh) * 2015-10-21 2017-04-27 华为技术有限公司 数据查询方法和装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7254574B2 (en) * 2004-03-08 2007-08-07 Microsoft Corporation Structured indexes on results of function applications over data
CN1964390A (zh) * 2005-11-08 2007-05-16 宁波波导股份有限公司 一种通讯终端的电话号码快速搜索方法及其通讯终端
CN101286160B (zh) * 2008-05-30 2010-09-22 同济大学 数据库索引的方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105408857A (zh) * 2013-07-29 2016-03-16 亚马逊科技公司 通过针对选择性交织数据位生成用于关系数据库的多列索引
CN105408857B (zh) * 2013-07-29 2019-04-05 亚马逊科技公司 数据仓库系统、生成关系数据库的多列索引的方法和系统
CN105683961A (zh) * 2013-11-06 2016-06-15 华为技术有限公司 管理用于假设分析的回写的数据的方法和系统
CN105683961B (zh) * 2013-11-06 2020-01-31 华为技术有限公司 管理用于假设分析的回写的数据的方法和系统
CN103810300A (zh) * 2014-03-10 2014-05-21 北京国双科技有限公司 用于非索引覆盖的数据查询方法和装置
CN103810300B (zh) * 2014-03-10 2017-08-01 北京国双科技有限公司 用于非索引覆盖的数据查询方法和装置
CN105488050A (zh) * 2014-09-17 2016-04-13 阿里巴巴集团控股有限公司 一种数据库多索引方法、装置及系统
CN105488050B (zh) * 2014-09-17 2019-03-08 阿里巴巴集团控股有限公司 一种数据库多索引方法、装置及系统
CN104821907A (zh) * 2015-03-30 2015-08-05 四川神琥科技有限公司 一种电子邮件处理方法
CN104821907B (zh) * 2015-03-30 2018-01-30 四川神琥科技有限公司 一种电子邮件处理方法
WO2017067117A1 (zh) * 2015-10-21 2017-04-27 华为技术有限公司 数据查询方法和装置

Also Published As

Publication number Publication date
CN102117305B (zh) 2013-09-11

Similar Documents

Publication Publication Date Title
US10915528B2 (en) Pluggable storage system for parallel query engines
US11580070B2 (en) Utilizing metadata to prune a data set
US6405198B1 (en) Complex data query support in a partitioned database system
CN106104525B (zh) 事件处理系统
CN101876983B (zh) 数据库分区方法与系统
KR101365464B1 (ko) 데이터베이스 미들웨어를 이용한 데이터 관리 시스템 및 방법
CN107784044B (zh) 表数据查询方法及装置
US7756889B2 (en) Partitioning of nested tables
US6801903B2 (en) Collecting statistics in a database system
CN101727465B (zh) 分布式列存储数据库索引建立、查询方法及装置与系统
CN102117305B (zh) 查询数据的系统、方法和数据管理系统
CN110147407B (zh) 一种数据处理方法、装置及数据库管理服务器
US8005836B2 (en) Method and system for performing logical partial declustering
CN106407360B (zh) 一种数据的处理方法及装置
CN106471501B (zh) 数据查询的方法、数据对象的存储方法和数据系统
CN105608224A (zh) 一种提高海量数据查询性能的正交多哈希映射索引方法
US11782924B2 (en) Distributed join index for shared-nothing and log-structured databases
CN103810219A (zh) 一种基于行存储数据库的数据处理方法及装置
CN102779138A (zh) 实时数据的硬盘存取方法
US10776368B1 (en) Deriving cardinality values from approximate quantile summaries
JP5402667B2 (ja) 構成情報管理装置、分散情報管理システム、分散情報管理方法および分散情報管理プログラム
CN113641686B (zh) 数据处理方法、装置、电子设备、存储介质及程序产品
US7236971B1 (en) Method and system for deriving data through interpolation in a database system
US10762084B2 (en) Distribute execution of user-defined function
CN114416741A (zh) 基于多级索引的kv数据写入读取方法、装置及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20170112

Address after: Kolding road high tech Zone of Suzhou City, Jiangsu Province, No. 78 215163

Patentee after: CHINA MOBILE (SUZHOU) SOFTWARE TECHNOLOGY CO., LTD.

Patentee after: China Mobile Communications Co., Ltd.

Patentee after: China Mobile Communications Corp.

Address before: 100032 Beijing Finance Street, No. 29, Xicheng District

Patentee before: China Mobile Communications Corp.