[发明专利]一种基于聚合请求的地理栅格数据并行读写方法无效
申请号: | 201410020074.1 | 申请日: | 2014-01-16 |
公开(公告)号: | CN103761291A | 公开(公告)日: | 2014-04-30 |
发明(设计)人: | 熊伟;陈荦;景宁;刘露;吴秋云;赫高进 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 国防科技大学专利服务中心 43202 | 代理人: | 王文惠 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 聚合 请求 地理 栅格 数据 并行 读写 方法 | ||
技术领域
本发明涉及一种面向多节点多处理器集群环境下地理栅格数据文件的并行读写方法,技术应用领域为地理信息系统中大规模地理栅格数据的并行处理。
背景技术
地理栅格数据是地理信息系统和空间信息应用中非常重要的一种数据类型,主要用于描述和表达地表的各类采样和统计信息,在遥感影像处理、数字地形分析、空间统计等方面具有广泛的用途。地理栅格数据按网格单元行与列排列,用大小相等分布均匀、紧密相连的像元(网格单元)阵列来表示空间地物或现象分布的数据结构。网格单元的大小决定了其所覆盖的地表范围内地理数据的精度,网格单元越细,所表示的地理数据越精细。
随着遥感技术和测绘技术的快速进步发展,地理栅格数据的空间分辨率和时间分辨率都有了大幅度的提高,空间信息应用需要计算的区域不断增大,对地理过程模型的复杂程度和计算精度需求日益增强,地理计算越来越明显地呈现出数据密集型和计算密集型的特征。如何实现其高性能处理已成为制约其进一步应用的关键所在。采用多处理器的集群计算环境和并行计算技术来解决地理栅格数据的高效处理问题成为一种必然的发展趋势。通过提高处理器性能和增加处理器个数的方式,可以提升并行集群的并行处理性能,但是如果对于地理栅格数据的I/O(Input/Output,输入/输出)仍然采用串行方式的话,I/O性能将成为影响整体性能的瓶颈。在此背景下,地理栅格数据的并行访问技术成为地理栅格数据高效处理的一个重要内容。
目前支持地理栅格数据并行读写的工具库主要有两种。一种是采用GDAL(Geospatial Data Abstract Library,地理空间数据抽象库)进行读写,GDAL提供了统一的数据访问接口,通过抽象数据模型支持可扩展的地理栅格数据格式。因为并行读写地理栅格数据需要进行数据划分,现有的并行处理算法通常采用按照行、列或是块的方式进行划分。GDAL存在的主要问题在于只支持地理栅格数据按照行划分的并行读写,当多个进程使用GDAL并行读写列划分或者块划分时,一方面读写效率很低,另一方面写出的数据正确性也无法得到保证。第二种是适合并行读写的地理栅格数据模型库,如:HDF5(Hierarchical DataFormatFive,层次数据格式第5版)、NetCDF(Network Common Data Form,网络通用数据格式)等,然而以这些数据模型来存储地理栅格数据的应用相对较少,在处理时需要将其他常用的数据格式进行转换,增加了应用的繁琐性。
地理栅格数据的并行读写方法包括两种。一种是DDC(Data Distribution and Collection,数据分发/收集)方法。该方法将参与并行计算的多进程分为主进程和从进程,只有主进程负责所有的地理栅格数据读写操作,从进程负责数据处理,从进程与主进程之间通过进程间消息传递机制完成所处理数据的接收和发送。DDC方法的缺点在于主进程数据读写容易成为瓶颈,并行处理进程增加时,主、从进程间通信代价容易增加计算延迟。另外一种是并行读写方法,不依赖于主进程进行数据的分发、收集,而是每个进程都可以相对独立地进行数据的存取操作。这样,各个进程同时进行数据的存取,可以很大程度地增大总体I/O带宽,从而提升总体I/O效率。然而这种方式需要底层有并行文件系统的支持,在非并行文件系统中,如果读写请求分布随机性强,I/O效率将大幅降低。
发明内容
本发明的目的是改进地理栅格数据并行读写的性能,通过引入MPI(Message Passing Interface,消息传递接口)中文件视图的机制,减少多进程并行访问地理栅格数据时非连续的、零碎的数据请求的数量,将I/0请求聚合成为少量的、整块的数据请求。在本发明中,多进程之间只进行状态信息通信,而不进行数据通信,提高多节点多处理器集群环境下地理栅格数据文件的并行读写性能。
本发明的技术解决方案为:一种基于聚合请求的地理栅格数据并行读写方法,设有若干个处理进程同时处理同一个待处理的地理栅格数据文件,其特征在于,包括下述步骤:
第一步,在多节点多处理器集群环境下,所有进程调用GDAL库读取待处理的地理栅格数据文件,从中获取地理栅格元数据的信息并记录在内存数据结构PDataset中,其中地理栅格元数据信息包括:MPI文件句柄,栅格数据网格单元列数,栅格数据网格单元行数,栅格数据波段数,栅格网格单元数据类型,数据类型字节数,栅格数据在文件中(即地理栅格数据文件)的绝对偏移地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410020074.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种可检测血压的围巾
- 下一篇:一种保温隔热弹性填缝剂