[发明专利]基于MapReduce的地图瓦片存储布局优化方法有效
申请号: | 201510758865.9 | 申请日: | 2015-11-10 |
公开(公告)号: | CN105354310B | 公开(公告)日: | 2018-07-10 |
发明(设计)人: | 李龙海;张少将;黄芬芬;付少锋 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 西安新思维专利商标事务所有限公司 61114 | 代理人: | 李罡 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及基于MapReduce的地图瓦片存储布局优化方法,包括步骤:Map任务根据瓦片索引表计算出IndexKey对应的Number,将输入的(IndexKey,IndexValue)转换为(Number,IndexValue)输出;自定义分区算法将得到的(Number,IndexValue)进行分区;每个Reduce任务获得专属分区号的(Number,IndexValue),自定义分组算法进行分组,最终根据IndexValue读取瓦片数据,再重新写到新瓦片打包文件,更新索引项指向新打包文件;瓦片重新写入结束后删除旧打包文件。本发明满足了快速读取瓦片的需求,提高了系统性能,不影响瓦片生成存储的速度,保证了瓦片生成后以及在地图瓦片存储布局优化的过程中,瓦片正常对外提供服务。 | ||
搜索关键词: | 瓦片 存储布局 打包文件 自定义 分区 读取 优化 对外提供服务 分区算法 分组算法 快速读取 瓦片数据 瓦片索引 系统性能 索引项 删除 写入 存储 指向 分组 输出 更新 转换 保证 | ||
【主权项】:
1.基于MapReduce的地图瓦片存储布局优化方法,其特征在于:包括以下步骤:步骤一:Map任务读取地图瓦片金字塔生成时形成的瓦片索引表,根据(IndexKey,IndexValue)键值对中的IndexKey计算出该瓦片在金字塔中的顺序号Number,将IndexKey替换为其对应的Number值,形成(Number,IndexValue)键值对输出;步骤二:采用自定义分区算法将得到的(Number,IndexValue)键值对进行分区,使得每个分区中Number列表是有序的,分区之间的Number也是有序的;步骤三:每一个Reduce任务获得属于自己分区的(Number,IndexValue)键值对,采用自定义分组算法对所有键值对进行分组,将所有(Number,IndexValue)键值对中的Number替换为同一个值Number0,使得每一个Reduce任务最终只处理一个分组,这个唯一分组为(Number0,List(IndexValue));步骤四:Reduce任务循环读取(Number0,List(IndexValue))中的每一个IndexValue,根据该索引值读取地图瓦片实体数据,然后将其写入到新的打包文件中,并同时更新索引表中该地图瓦片对应的索引项,使该索引项指向新的打包文件;步骤五:所有地图瓦片重新写入结束之后,将旧的打包文件删除;步骤一中,瓦片索引表的组织形式为(IndexKey,IndexValue)键值对;其中,行键IndexKey由地图瓦片金字塔版本名称、层级和行列号得出的四叉树编码组成,列族IndexValue由地图瓦片打包文件名称、瓦片在打包文件中的偏移量、瓦片大小和删除标志位组成;步骤一中,根据(IndexKey,IndexValue)键值对中的IndexKey计算该瓦片在金字塔中的顺序号Number的具体过程为:1)获得该金字塔的最小级别MinLevel,根据该MinLevel计算出该级别下第一张瓦片的四叉树编码MinQuadtreeCode,该四叉树编码即为该金字塔下的最小四叉树编码;2)从IndexKey中解析出该地图瓦片对应的四叉树编码CurrentQuadtreeCode和该地图瓦片所在层级CurrentLevel,根据该CurrentLevel计算出该级别下第一张地图瓦片的四叉树编码CurrentMinQuadtreeCode,并计算出CurrentLevel和MinLevel之间所有的地图瓦片数FirstTileCount;3)根据公式CurrentQuadtreeCode‑CurrentMinQuadtreeCode得出QuanternaryNumber即地图瓦片在当前层级的四进制顺序号,最后将QuanternaryNumber转换为十进制并与FirstTileCount相加,即可得到地图瓦片顺序号Number。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510758865.9/,转载请声明来源钻瓜专利网。
- 上一篇:分布式数据库中子表分裂的方法、子表节点和系统
- 下一篇:一种报表管理系统