[发明专利]一种基于B+树异步更新索引的读优化方法有效
申请号: | 201410697537.8 | 申请日: | 2014-11-26 |
公开(公告)号: | CN104408128B | 公开(公告)日: | 2017-11-03 |
发明(设计)人: | 吴植民 | 申请(专利权)人: | 上海爱数信息技术股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海科盛知识产权代理有限公司31225 | 代理人: | 赵志远 |
地址: | 201112 上海市闵行*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于B+树异步更新索引的读优化方法,包括以下步骤1)生成索引缓存文件;2)获取所有索引缓存文件;3)过滤并剔除不完整或正在写的索引缓存文件;4)判断是否满足发起异步更新的条件,若满足则继续执行步骤4);5)分别读取过滤后的各个索引缓存文件相同存储区域编号对应的存储区域的索引数据;6)读取存储区域编号在索引库中对应的存储区域的索引数据;7)将索引数据按B+树的规则组织成一棵B+树;8)将步骤7)中生成的B+树序列化成二进制流;9)将步骤8)执行后的数据覆盖更新到存储区域编号在索引库中对应的存储区域。与现有技术相比,本发明具有减少了每次从海量索引记录中查询读取的索引数据量。 | ||
搜索关键词: | 一种 基于 异步 更新 索引 优化 方法 | ||
【主权项】:
一种基于B+树异步更新索引的读优化方法,其特征在于,包括以下步骤:1)批量写索引,生成按存储区域编号序列化成数据流的索引缓存文件;2)获取步骤1)中生成的所有索引缓存文件;3)过滤并剔除步骤2)中获取的索引缓存文件中不完整或正在写的索引缓存文件;4)判断步骤3)过滤后的索引缓存文件总个数是否满足发起异步更新的条件,若满足则继续执行步骤5),否则等待下一次执行步骤1);5)分别读取步骤3)过滤后的各个索引缓存文件相同存储区域编号对应的存储区域的索引数据;6)读取步骤5)中存储区域编号在索引库中对应的存储区域的索引数据;7)将步骤5)中读取的索引数据及步骤6中读取的索引数据按B+树的规则组织成一棵B+树;8)将步骤7)中生成的B+树序列化成二进制流;9)将步骤8)执行后的数据覆盖更新到步骤5)中存储区域编号在索引库中对应的存储区域并更新元数据;10)判断步骤5)中的索引缓存文件是否读到文件尾,若为否则返回步骤5)并将步骤5)中的存储区域编号加1,若为是则继续执行步骤11);11)删除步骤3)过滤后的索引缓存文件及步骤3)过滤掉的不完整索引缓存文件;所述的步骤1)具体为:1.1)将各个存储区域编号在内存中对应的索引进行排序;1.2)将步骤1.1)中各个存储区域编号对应排序后的索引序列化成数据流;1.3)将步骤1.2)中的数据流按存储区域编号按从小到大的顺序组合成唯一的一个数据流;1.4)将步骤1.3)执行后的数据流写入到磁盘生成一个索引缓存文件。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海爱数信息技术股份有限公司,未经上海爱数信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410697537.8/,转载请声明来源钻瓜专利网。