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