【技术实现步骤摘要】
本专利技术涉及数据查询
,特别涉及一种数据分组方法及装置。
技术介绍
在某些数据库中,每个数据包含多种不同的数据属性,并可以按照其中至少两种数据属性对数据进行分组,以便对外提供与分组相关的查询服务。其中,分组获得的同一数据组中的数据对应该至少两种数据属性的值都相同。在现有技术中,数据库管理设备预先按照至少两种数据属性的组合,对数据库中的各个数据进行倒排索引,以建立倒排索引表,该倒排索引表中包含该数据属性的组合中的每一组属性值,以及每一组属性值对应的包含有该组属性值的数据的标识。当需要对上述各个数据按照该数据属性的组合进行分组时,数据库管理设备可以查询上述预先建立的倒排索引表,将具有相同的一组属性值的数据作为一个数据组。对数据库中的数据进行分组时,数据属性的组合中的种类数和种类并不是固定不变的,比如,在前一次进行数据分组时,数据库管理设备按照数据属性a和b对各个数据进行分组,而在下一次进行数据分组时,数据库管理设备可能需要按照数据属性b、c和d进行分组。若按照现有技术中的分组方法,则需要按照数据属性的种类数和种类的各种组合,分别对数据库中的各个数据预先建立倒排索引表,当数据属性的种类较多时,需要预先建立的倒排索引表的数量将会非常庞大。比如,假设数据库中的每个数据包含100种数据属性,若要满足按照任意三种数据属性进行分组的需求,则需要建立(100*99*98)/(3*2*1)=161700个不同的倒排索引表,若还需要满足按照任意其它种类数的数据属性进行分组的需求,则需要建立的倒排索引表的数量还会更多。这些数量庞大的倒排索引表需要占据大量的存储资源,并且 ...
【技术保护点】
一种数据分组方法,其特征在于,所述方法包括:获取目标数据的标识集合,所述目标数据是数据集合中包含相同的n种类型的数据属性的部分或者全部数据,n≥2,且n为整数;获取所述数据集合对应所述n种数据属性中的每一种数据属性的标识集合组,所述数据属性的标识集合组包含所述数据属性的每一种属性值的标识集合,所述属性值的标识集合包含具有所述属性值的数据的标识;对所述目标数据的标识集合以及所述每一种数据属性的标识集合组进行交集运算;根据所述交集运算的运算结果,获取按照所述n种数据属性对所述目标数据进行分组的分组结果。
【技术特征摘要】
1.一种数据分组方法,其特征在于,所述方法包括:获取目标数据的标识集合,所述目标数据是数据集合中包含相同的n种类型的数据属性的部分或者全部数据,n≥2,且n为整数;获取所述数据集合对应所述n种数据属性中的每一种数据属性的标识集合组,所述数据属性的标识集合组包含所述数据属性的每一种属性值的标识集合,所述属性值的标识集合包含具有所述属性值的数据的标识;对所述目标数据的标识集合以及所述每一种数据属性的标识集合组进行交集运算;根据所述交集运算的运算结果,获取按照所述n种数据属性对所述目标数据进行分组的分组结果。2.根据权利要求1所述的方法,其特征在于,所述获取所述数据集合对应所述n种数据属性中的每一种数据属性的标识集合组之前,所述方法还包括:按照所述数据集合中的各个数据各自对应所述数据属性的属性值,建立所述数据集合对应所述数据属性的倒排索引信息,所述倒排索引信息中包含所述每一种属性值以及所述每一种属性值对应的数据的标识;根据所述倒排索引信息设置所述数据集合对应所述数据属性的标识集合组。3.根据权利要求1所述的方法,其特征在于,所述对所述目标数据的标识集合以及所述每一种数据属性的标识集合组进行交集运算,包括:在第1次运算时,将所述目标数据的标识集合与所述n种数据属性的第1种数据属性的标识集合组中的各个标识集合分别进行交集运算,获得第1次运算的运算结果;在第i次运算时,将第i-1次运算的运算结果中的每一个集合与所述n种数据属性的第i种数据属性的标识集合组中的各个标识集合分别进行交集运算,获得第i次运算的运算结果,2≤i≤n,且i为整数。4.根据权利要求1所述的方法,其特征在于,所述对所述目标数据的标识集合以及所述每一种数据属性的标识集合组进行交集运算,包括:在第1次运算时,将所述目标数据的标识集合与所述n种数据属性的第1种数据属性的标识集合组中的各个标识集合分别进行交集运算,获得第1次运算的运算结果;在第i次运算时,将所述目标数据的标识集合与所述n种数据属性的第i种数据属性的标识集合组中的各个标识集合分别进行交集运算,将运算得到的每一个集合与第i-1次运算的运算结果中的各个集合分别进行交集运算,获得第i次运算的运算结果,2≤i≤n,且i为整数。5.根据权利要求3或4所述的方法,其特征在于,所述根据所述交集运算的运算,获取按照所述n种数据属性对所述目标数据进行分组的分组结果,包括:对于第n次运算的运算结果中包含的每一个集合,将所述集合中的标识获取为所述分组结果中的一个数据组对应的数据的标识。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:获取所述数据组对应的数据中,所述n种数据属性各自的属性值;对应所述数据组输出获取到的所述n种数据属性各自的属性值。7....
【专利技术属性】
技术研发人员:陈佐伟,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。