【技术实现步骤摘要】
201410685565
【技术保护点】
一种索引生成方法,其特征在于,所述方法包括:获取数据文件,所述数据文件包括有至少一条数据记录;为每条所述数据记录生成对应的索引信息,所述索引信息用于指示所述数据记录在所述数据文件中的存储位置;对于所述数据文件中的每条数据记录,根据所述数据记录的属性信息将对应的所述索引信息分类存储至层级索引目录中的一个索引文件中,所述层级索引目录包括位于不同目录下的n个索引文件,n≥1,每个目录下的索引文件对应一组属性信息。
【技术特征摘要】
1.一种索引生成方法,其特征在于,所述方法包括:
获取数据文件,所述数据文件包括有至少一条数据记录;
为每条所述数据记录生成对应的索引信息,所述索引信息用于指示所述数
据记录在所述数据文件中的存储位置;
对于所述数据文件中的每条数据记录,根据所述数据记录的属性信息将对
应的所述索引信息分类存储至层级索引目录中的一个索引文件中,所述层级索
引目录包括位于不同目录下的n个索引文件,n≥1,每个目录下的索引文件对应
一组属性信息。
2.根据权利要求1所述的方法,其特征在于,所述属性信息包括:
数据记录所对应的业务标识、数据记录所属的时间范围、数据记录中的索
引字段名称、数据记录中的索引字段值的哈希值的取模值和数据记录所对应的
数据文件的文件名中的至少一种信息。
3.根据权利要求1或2所述的方法,其特征在于,所述对于每条数据记录,
根据所述数据记录的属性信息将对应的所述索引信息分类存储至层级索引目录
中的一个索引文件中,包括:
对于每条数据记录,提取所述数据记录的属性信息;
在所述层级索引目录中的至少一个索引文件中确定与所述属性信息对应的
一个索引文件;
将所述数据记录对应的索引信息存入所述索引文件中。
4.根据权利要求3所述的方法,其特征在于,所述索引文件包括一级索引
和二级索引;
所述一级索引用于存储各条数据记录中的索引字段值的哈希值,以及每个
所述索引字段值的哈希值对应的二级索引在所述索引文件中的偏移量;
所述二级索引用于存储所述数据记录在所述数据文件中的偏移量。
5.根据权利要求4所述的方法,其特征在于,所述将所述数据记录对应的
索引信息存入所述索引文件,包括:
将所述数据记录中的索引字段值的哈希值按照预定顺序写入所述索引文件
的一级索引中,所述预定顺序包括:由大到小的顺序,或,由小到大的顺序;
将所述数据记录在所述数据文件中的偏移量写入所述索引文件的二级索引
中;
将写入的所述二级索引在所述索引文件中的偏移量写入所述一级索引中,
并与所述索引字段值的哈希值关联存储。
6.一种数据查询方法,其特征在于,所述方法包括:
接收查询请求;
根据所述查询请求从层级索引目录中的至少一个索引文件中提取索引信
息,所述层级索引目录包括位于不同目录下的n个索引文件,n≥1,每个目录下
的索引文件对应一组属性信息;
根据所述索引信息在数据文件中获取数据记录。
7.根据权利要求6所述的方法,其特征在于,所述属性信息包括:
数据记录所对应的业务标识、数据记录所属的时间范围、数据记录中的索
引字段名称、数据记录中的索引字段值的哈希值的取模值和数据记录所对应的
数据文件的文件名中的至少一种信息。
8.根据权利要求6或7所述的方法,其特征在于,所述根据所述查询请求
从层级索引目录中的至少一个索引文件中提取索引信息,包括:
提取所述查询请求中所携带的属性信息和索引字段值;
从所述层级索引目录中的至少一个索引文件中选择与所述属性信息对应的
至少一个索引文件;
根据所述索引字段值的哈希值在所述索引文件中提取索引信息。
9.根据权利要求8所述的方法,其特征在于,所述索引文件包括一级索引
和二级索引;
所述一级索引用于存储各条数据记录中的索引字段值的哈希值,以及每个
所述索引字段值的哈希值对应的二级索引在所述索引文件中的偏移量;
所述二级索引用于存储所述数据记录在所述数据文件中的偏移量。
10.根据权利要求9所述的方法,其特征在于,所述根据所述索引字段值
的哈希值在所述索引文件中提取索引信息,包括:
在所述一级索引中使用二分查找法查找,得到所述索引字段值的哈希值所
对应的二级索引在所述索引文件中的偏移量;
根据所述二级索引在所述索引文件中的偏移量进行查询,得到所述索引信
息。
11.一种索引生成装置,其特征在于,所述装置包括:
数据文件获取模块,用于获取数据文件,所述数据文件包括有至少一条数
据记录;
索引信息生成模块,用于为所述数据文件获取模块中的每条所述数据记录
生成对应的索引信息,所述索引信息用于指示所...
【专利技术属性】
技术研发人员:姚永刚,王才平,王周,朱凯,林育佳,刘忠真,吴泽君,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。