数据索引处理方法及装置制造方法及图纸

技术编号:19647031 阅读:28 留言:0更新日期:2018-12-05 20:31
本发明专利技术实施例公开了一种数据索引处理方法及装置,其中所述方法包括:从存储有多个对象的一个数据扩展中确定至少一个离群对象,所述多个对象为具有数值属性的数据,所述多个对象包括多个第一对象,以及与所述多个第一对象的分布特征不一致的所述至少一个离群对象;为所述数据扩展建立索引信息,所述索引信息用于记录所述至少一个离群对象、所述多个第一对象中的最小对象及最大对象;接收查询请求,所述查询请求包含有查询条件,所述查询条件用于指示查询范围;根据所述索引信息,以及所述查询范围,判断是否在所述数据扩展中查询所述查询范围内的对象。采用本发明专利技术实施例,可减小数据查询的范围,并提高数据查询效率。

Data Index Processing Method and Device

An embodiment of the present invention discloses a data index processing method and device, wherein the method includes: determining at least one outlier object from a data extension storing multiple objects, the multiple objects being data with numerical attributes, the multiple objects including multiple first objects, and the plurality of first objects. At least one outlier object with inconsistent distribution characteristics of one object; indexing information is established for the data expansion, which is used to record at least one outlier object, the smallest object and the largest object in the plurality of first objects; receiving query requests, which contain query conditions; The query condition is used to indicate the query range; according to the index information and the query range, it is determined whether the object within the query range is queried in the data expansion. By adopting the embodiment of the present invention, the scope of data query can be reduced and the efficiency of data query can be improved.

【技术实现步骤摘要】
数据索引处理方法及装置
本申请涉及计算机领域,尤其涉及数据索引处理方法及装置。
技术介绍
索引是为了加速对数据表中数据行的检索而创建的一种分散的存储结构。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。索引是针对表而建立的,它是由数据页面以外的索引页面组成的,每个索引页面中的行都会含有逻辑指针,以便加速检索物理数据。常见的索引有区块范围索引(BlockRangeIndex,BRIN),BRIN通过记录表的一段连续存储空间范围(也称为“数据扩展”)内的对象的最大值和最小值,为该数据扩展建立索引信息,当采用SQL语句查询某个对象时,如果该对象在该数据扩展的索引信息中记录的最值小值与最大值构成的区间范围之外,则跳过对该数据扩展中的对象查询;如果该对象属于该数据扩展的索引信息中记录的最值小值与最大值之间的区间,则可以对该数据扩展中的对象进行查询。但是,现有的BRIN只是将数据扩展(DataExtent)中的最大值和最小值作为索引的唯一指标,使得最大值与最小值之间的区间很大,进而导致查询效率较低。
技术实现思路
本专利技术实施例提供一种数据索引处理方法及装置,以减小执行查询的过程中,数据扫描的范围,提高数据查询效率。第一方面,本专利技术实施例提供了一种数据索引处理方法,包括:数据库服务器可以从存储有多个对象的一个数据扩展中确定至少一个离群对象;为该数据扩展建立索引信息;接收查询请求,该查询请求包含有查询条件,该查询条件用于指示查询范围;根据该索引信息,以及该查询范围,判断是否在该数据扩展中查询该查询范围内的对象。其中,该多个对象为具有数值属性的数据,该多个对象包括多个第一对象,以及与该多个第一对象的分布特征不一致的该至少一个离群对象。其中,该索引信息用于记录该至少一个离群对象、该多个第一对象中的最小对象及最大对象。在该技术方案中,为数据扩展建立索引信息,由于该索引信息中记录的该多个第一对象中的最小对象及最大对象不是离群对象,因而,可缩小该索引信息中记录的最小对象与最大对象之间的区间长度,进而,减小执行查询的过程中,数据扫描的范围,提高数据查询效率。在一种可能的实施方式中,在该查询范围为第二对象时,数据库服务器可以将该第二对象与该索引信息中记录的该至少一个离群对象、该多个第一对象中的最小对象及最大对象进行比较,以判断是否在该数据扩展中查询该第二对象。在该技术方案中,在该查询范围为第二对象时,数据库服务器可以将该第二对象与该索引信息中记录的对象进行比较,以判断是否在该数据扩展中查询该第二对象。在该技术方案中,在该第二对象小于该多个第一对象中的最小对象,或该第二对象大于该多个第一对象中的最大对象时,可将第二对象与该至少一个离群对象比较,在第二对象与该至少一个离群对象不相同时,可以跳过对该数据扩展中的对象查询,可以减小查询的范围。在一种可能的实施方式中,在第二对象与该至少一个离群对象相同时,数据库服务器可以在该数据扩展中查询第二对象。在该技术方案中,在第二对象与至少一个离群对象相同时,数据库服务器可以在该数据扩展中查询第二对象,以便可以快速查询到需要查询的对象。在一种可能的实施方式中,在查询范围为数值区间时,在该数值区间与由该索引信息中记录的该多个第一对象中的最小对象及最大对象为端点构成的数值区间没有交集,且该至少一个离群对象未落在该数值区间内,数据库服务器可以跳过对该数据扩展中的对象查询。在该技术方案中,数据库服务器可以在该数值区间与由该索引信息中记录的该多个第一对象中的最小对象及最大对象为端点构成的数值区间没有交集,且该至少一个离群对象未落在该数值区间内时,可以跳过对该数据扩展中的对象查询,可以减小查询的范围。在一种可能的实施方式中,数据库服务器可以将该多个对象进行排序,并计算排序后的每两个相邻对象的差值;根据计算得到的差值确定该至少一个离群对象。在该技术方案中,数据库服务器可以通过计算排序后的多个对象中每两个相邻对象的差值,以确定该数据扩展中的至少一个离群对象,以便提高获取离群对象的速度。在一种可能的实施方式中,数据库服务器可以对该多个对象进行聚类分析,以确定该至少一个离群对象。该技术方案中,数据库服务器可以对该多个对象进行聚类分析,可以提高获取离群对象的准确性。第二方面,本专利技术实施例提供了数据索引处理装置,该数据索引处理装置具有实现上述第一方面或第一方面可能的实现方式中行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。该模块可以是软件和/或硬件。第三方面,本专利技术实施例提供了一种数据库服务器,该数据库服务器包括:存储器,用于存储一个或多个程序;处理器,用于调用存储在该存储器中的程序以实现上述第一方面的方法设计中的方案。第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被至少一个处理器执行时,可以实现上述第一方面和第一方面的各可能的实施方式以及有益效果。第五方面,本专利技术实施例提供了一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,该计算机程序可操作来使计算机实现上述第一方面的方法的步骤,该计算机程序产品解决问题的实施方式以及有益效果可以参见上述第一方面和第一方面的各可能的方法的实施方式以及有益效果,重复之处不再赘述。附图说明为了更清楚地说明本专利技术实施例或
技术介绍
中的技术方案,下面将对本专利技术实施例或
技术介绍
中所需要使用的附图进行说明。图1是本专利技术实施例提供的一种数据库系统的结构示意图;图2是本专利技术实施例提供的一种单机数据库系统的结构示意图;图3是本专利技术实施例提供的一种集群数据库系统的结构示意图;图4是本专利技术实施例提供的一种集群数据库系统的结构示意图;图5是本专利技术实施例提供的一种数据库服务器的结构示意图;图6是本专利技术实施例提供的数据库系统中的逻辑存储结构示意图;图7是本专利技术实施例提供的一种数据索引处理方法的流程示意图;图8是本专利技术实施例提供的一种数据索引处理装置的结构示意图;图9是本专利技术的实施例提供的一种数据库服务器的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。本申请实施例的技术方案可以典型地应用于数据库系统(DatabaseSystem),更具体地,可应用于数据库管理系统(DatabaseManagementSystem,DBMS),或者部署有DBMS的数据库服务器。本申请实施例所应用的数据库系统的架构如图1所示,该数据库系统包括数据库和数据库管理系统(DBMS)。其中,数据库是指存储在数据存储器中的有组织的数据集合,即按照一定的数据模型组织、存储和使用的相关联的数据集合,比如,数据库可以包括一个或者多个数据表(简称“表”)。DBMS用于建立、使用和维护数据库,以及对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户可以通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。DBMS提供多种功能,以使客户端建立,修改和询问数据库,客户端通常是运行在用户设备上的一个应用程序。DBMS所提供的功能包括但不限于:(1)本文档来自技高网
...

【技术保护点】
1.一种数据索引处理方法,其特征在于,包括:从存储有多个对象的一个数据扩展中确定至少一个离群对象,所述多个对象为具有数值属性的数据,所述多个对象包括多个第一对象,以及与所述多个第一对象的分布特征不一致的所述至少一个离群对象;为所述数据扩展建立索引信息,所述索引信息用于记录所述至少一个离群对象、所述多个第一对象中的最小对象及最大对象;接收查询请求,所述查询请求包含有查询条件,所述查询条件用于指示查询范围;根据所述索引信息,以及所述查询范围,判断是否在所述数据扩展中查询所述查询范围内的对象。

【技术特征摘要】
1.一种数据索引处理方法,其特征在于,包括:从存储有多个对象的一个数据扩展中确定至少一个离群对象,所述多个对象为具有数值属性的数据,所述多个对象包括多个第一对象,以及与所述多个第一对象的分布特征不一致的所述至少一个离群对象;为所述数据扩展建立索引信息,所述索引信息用于记录所述至少一个离群对象、所述多个第一对象中的最小对象及最大对象;接收查询请求,所述查询请求包含有查询条件,所述查询条件用于指示查询范围;根据所述索引信息,以及所述查询范围,判断是否在所述数据扩展中查询所述查询范围内的对象。2.如权利要求1所述的方法,其特征在于,若所述查询范围为第二对象,则所述根据所述索引信息,以及所述查询范围,判断是否在所述数据扩展中查询所述查询范围内的对象,包括:将所述第二对象与所述索引信息中记录的所述至少一个离群对象、所述多个第一对象中的最小对象及最大对象进行比较,以判断是否在所述数据扩展中查询所述第二对象。3.如权利要求2所述的方法,其特征在于,所述方法还包括:在所述第二对象小于所述多个第一对象中的最小对象,或所述第二对象大于所述多个第一对象中的最大对象时,将所述第二对象与所述至少一个离群对象进行比较;在所述第二对象与所述至少一个离群对象不相同时,跳过对所述数据扩展中的对象查询。4.如权利要求3所述的方法,其特征在于,所述方法还包括:在所述第二对象与所述至少一个离群对象相同时,在所述数据扩展中查询所述第二对象。5.如权利要求1所述的方法,其特征在于,若所述查询范围为数值区间,则所述根据所述索引信息,以及所述查询范围,判断是否在所述数据扩展中查询所述查询范围内的对象,包括:在所述数值区间与由所述索引信息中记录的所述多个第一对象中的最小对象及最大对象为端点构成的数值区间没有交集,且所述至少一个离群对象未落在所述数值区间内时,跳过对所述数据扩展中的对象查询。6.如权利要求1-5任一所述的方法,其特征在于,所述从存储有多个对象的一个数据扩展中确定至少一个离群对象,包括:将所述多个对象进行排序,并计算排序后的每两个相邻对象的差值;根据计算得到的差值确定所述至少一个离群对象。7.如权利要求1-5任一所述的方法,其特征在于,所述从存储有多个对象的一个数据扩展中确定至少一个离群对象,包括:通过对所述多个对象进行聚类分析,以确定所述至少一个离群对象。8.一种数据索引处理装置,其特征在于,包括:确定模块,用于从存储有多个对象的一个数据扩展中确定至少一个离群对象,所述多个对象为具有数值属性的数据,所述多个对象包括多个第一对象,以及与所...

【专利技术属性】
技术研发人员:杨新颖
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1