RS-ODMS: An Online Distributed Management and Service Framework for Remote Sensing Data
-
摘要: 随着遥感数据体量的不断增加,高效的在线遥感数据管理与服务系统已成为利用海量遥感数据开展应用研究必不可少的基础设施。目前,由于在底层海量遥感数据和顶层服务应用之间缺乏独立的中间框架层设计,不同的底层数据存储与顶层服务应用方案给系统实现与应用带来了困难,迫切需要一种独立于数据存储与服务应用的在线分布式遥感数据管理与服务中间框架,重构数据管理与服务的实现模式,降低海量遥感数据在线管理与服务应用的难度。以此为背景,通过对遥感数据的管理与服务模型进行抽象,设计并提出一种平台独立的分布式遥感数据在线管理与服务框架(online distributed management and service framework for remote sensing data,RS-ODMS)。该框架构建以遥感数据为基础的混合存储模型(distributed hybrid storage model,DHS)与分布式计算模型(distributed parallel-computing model,DPC),提升遥感数据管理能力与服务效率。结合原型系统的实验表明,以RS-ODMS为基础的遥感数据管理与服务框架可支持多分布式存储后端的影像管理扩展能力,具备高效、稳定的服务能力和良好的适用性,能为海量遥感数据的在线管理与服务应用研究提供参考。Abstract: With the increasing volume of remote sensing data, the efficient online data management and service system has become an essential infrastructure for research on massive remote sensing data application. At present, different remote sensing data storage and service application schemes have brought difficulties to the system implementation and application due to the lack of independent intermediate framework design. There is an urgent need for a remote sensing data online distributed management and service framework-independent of data storage and service application, and to reconstruct the implementation mode of data management and service, reduce the difficulty of massive remote sensing image online management and service. Against this background, we design and propose a platform-independent online distributed management and service framework for remote sensing(RS-ODMS) by abstracting the remote sensing data management and computing model. This framework constructs a remote sensing data distributed hybrid storage model (DHS) and a remote sensing image data distributed parallel computing model(DPC) to improve the remote sensing data management ability and service efficiency. Experimental results show that the prototype system based on RS-ODMS can support an expansion capability of multiple distributed storage backends on remote sensing image management. And it is endowed with high efficiency, stable service ability and extensive applicability, which can provide reference for the online management and service application research of massive remote sensing data.
-
Keywords:
- RS-ODMS /
- hybrid storage model /
- distributed parallel computing /
- NoSQL
-
随着遥感对地观测技术的发展,遥感数据逐渐成为时空数据分析的重要数据来源[1]。由于遥感数据包含丰富的时空信息,其在包括农业、气象、应急响应等诸多场景中都得到了广泛的应用[2-4]。不同应用场景对遥感数据的管理与服务能力有着不同的需求,但遥感数据存储、处理的效率始终是其关注的焦点[5]。面对海量遥感数据和丰富的应用场景,如何高效地实现遥感数据的管理与服务已成为遥感数据应用领域研究的重点[6-7]。
现有的遥感数据存储方式主要有以下3种:①基于传统关系型数据库(relational database management system,RDBMS)与空间数据中间件;②基于网络域存储(storage area network,SAN);③基于分布式文件系统(distributed file system,DFS)[8]。DFS在数据存储能力、效率和成本上具有优势,逐渐发展为一种主流的遥感影像存储方案。近年来,随着非关系型数据库(not only SQL,NoSQL)的发展成熟,相关研究者也尝试采用如Accumulo、HBase等NoSQL数据库作为海量非结构化影像瓦片的存储介质[9-11]。
针对遥感数据的计算处理目前已经有众多相关的系统架构,如Hadoop-GIS[12]、SpatialHadoop[13]、LocationSpark[14]、GeoSpark[15]、Simba[16]、PipsCloud[17]等。根据研发平台的不同,这些系统主要可分为基于MapReduce[18-19]和Spark[20-22]分布式计算框架,它们主要侧重于矢量数据的处理与分析,并没有系统地对遥感数据管理与服务应用进行优化设计。除上述系统外,还存在如基于MPI(message passing interface)[23-24]、GPGPU(general-purpose computing on graphics processing units)[25]等的遥感数据并行处理系统,它们倾向于高性能计算的设计,未考虑数据的存储,且对硬件设备的要求较高,存在容错性低等问题,应用范围相对较窄。
充分利用不同存储与计算平台的优势,是研究实现海量遥感数据在线管理与服务系统的关键。实践中,针对不同的底层存储与计算系统,通常需要为每一种实现方案都进行独立的设计开发,该方式研发成本高,给系统的推广应用带来了障碍。如何在保证海量遥感数据管理与服务基础需求的情况下,对系统框架的实现模式进行优化,降低系统开发的复杂度,已成为应用研究的核心问题。虽然已有基于大数据技术的遥感影像数据管理与应用研究[26-28],但现有的遥感影像管理与服务系统仍存在以下问题:①管理与服务模型复杂,种类繁多难于实现;②数据存储模型紧耦合,导致数据的处理与应用受限;③欠缺在线管理服务模式,不能充分利用在线计算资源。
为分析和解决上述问题,本文构建了一种平台独立的分布式遥感数据在线管理与服务框架(online distributed management and service framework for remote sensing,RS-ODMS)。通过对遥感数据混合存储、遥感影像分布式并行计算等基础模型进行抽象,RS-ODMS框架采用松耦合、组件化的方式链接底层存储与计算系统,结合分布式存储与计算处理环境对数据存储和处理模式进行优化,降低遥感数据管理与服务系统的实现难度,具有高效支撑分布式在线遥感影像数据管理与服务应用的能力。
1 RS-ODMS管理与服务框架
RS-ODMS架构以遥感数据在线管理与服务应用为目标,为外部存储与计算平台以及应用门户提供统一的操作接口。如图 1所示,RS-ODMS整体框架结构由5个部分构成:分布式基础集群环境、混合存储模型、分布式计算模型、管理与服务解决方案和分布式管理与在线服务门户接口,具体如下:
1)分布式基础集群环境是框架的基础运行环境,以分布式技术为基础,是存储与计算的硬件支撑,为软件与应用提供资源;
2)混合存储模型支撑遥感数据的存储,针对异构的影像数据、元数据和影像瓦片数据分别设计基于DFS、RDBMS和NoSQL数据库的存储与操作接口,结合数据索引方法实现遥感数据的混合存储与管理;
3)分布式计算模型以弹性分布式计算为基础,针对遥感数据优化“transformation & action”算子,为系统提供分布式并行数据处理能力;
4)管理与服务解决方案以混合存储模型和分布式计算模型为基础,提供元数据规范化、数据查询、影像分层建模、影像瓦片分布式计算等遥感数据管理与服务应用基础解决方案;
5)分布式管理与在线服务门户在整合底层模块的基础上,对外提供主要的遥感数据管理与服务操作接口,包括数据管理、服务构建、服务维护、瓦片栅格代数等。
在5个部分中,遥感数据混合存储模型与分布式计算模型是支撑RS-ODMS框架的核心模块,它们提供对遥感数据存储与计算的抽象,能够在分布式环境中实现海量遥感数据的高效管理与处理。
1.1 遥感数据混合存储模型
针对不同结构的数据,结合相应的存储后端设计存储模型,是提高管理效率的关键。遥感影像数据是一种非结构化的数据,数据量一般在GB级以上。大规模非结构化数据宜采用文件的方式进行组织存储[28]。由于普通文件系统的存储容量有限,针对遥感影像数据采用DFS进行存储是更优的选择。基于DFS存储遥感影像数据,可以利用分布式计算技术,分节点对数据块进行处理,实现影像数据处理的并行加速,提高影像的处理效率。遥感元数据数据规模小,且均以键值对的形式进行组织,不同的数据条目具有相同的数据结构,可以对数据进行抽取和规范处理。
目前,针对遥感元数据可结合关系型数据库或者NoSQL数据库进行存储。由于NoSQL数据库的数据筛选查询效率一般较关系型数据库低,且元数据的总体数据量较小,因此可将遥感元数据存储在关系型数据库中。除原始影像数据和元数据外,还需对服务构建处理生成的影像瓦片数据进行存储。独立的遥感影像瓦片数据规模小,但影像瓦片数据的总量大,且具有非结构化的特点。为保证管理与服务系统的存储容量与响应效率,结合瓦片数据典型的“索引(Key)-瓦片数据(Value)”键值规范化特点,可采用分布式列式或键值NoSQL数据库进行存储[29-30]。
结合遥感数据以及不同存储后端的特点,RS-ODMS框架构建了基于分布式环境的混合存储模型(distributed hybrid storage model,DHS)。DHS模型以RSMetadataObject遥感元数据抽象类、RSImageObject遥感影像数据抽象类和RSTileObject影像瓦片数据抽象类为基础,向下提供对不同存储后端的操作支持,向上提供对遥感数据的统一访问接口。
如图 2所示,DHS模型以遥感数据为基础,将遥感数据拆分为元数据和影像数据两部分,在影像数据的基础上又派生出影像瓦片数据。针对不同类型的数据,模型采取与之对应的存储策略。遥感元数据在进行规范化提取处理后存储至应用服务器中的关系型数据库。遥感影像数据在进行格式统一后分块存储至DFS,通过DFS内部的扩展、备份以及容错策略,实现影像数据的高效存储。影像瓦片由遥感影像进行金字塔建模切分[31]后获得,通过结合遥感影像的获取时间与瓦片格网的空间位置信息,采用DHS模型提供的索引方法,如Z-order、Hilbert[32]曲线等,在分布式计算平台下进行时空串接索引编码,得到具有时空索引的二进制瓦片数据结构。结合瓦片数据的索引顺序,通过分布式计算系统的数据均衡分片与分区方法存储至NoSQL数据库集群中。
数据访问时,首先结合筛选条件在关系型数据库中过滤取得目标影像ID,通过ID确定影像在DFS和NoSQL数据库中的位置。如需获得遥感影像,则直接从DFS中并行下载。如需访问遥感影像服务,则首先判断影像瓦片服务是否存储在NoSQL分布式数据库中。若不存在,则先调用分布式并行计算接口进行分层建模切分获得瓦片服务数据;若存在,则在NoSQL数据库中根据时空串接索引,先按照时间编码进行过滤,然后在候选的时间编码数据集中检索符合要求的空间编码范围,最终检索得到目标影像服务数据。
基于混合存储模型,RS-ODMS框架能够以松耦合的结构提供遥感数据的存储与索引功能,提升对遥感数据的管理与服务能力。
1.2 遥感影像分布式计算模型
制约遥感数据管理与服务应用的因素除存储能力外,还有影像的计算处理效率。在传统的遥感数据管理系统中,单机系统不能充分利用计算资源,在达到性能瓶颈后难以进一步提升处理速度。基于MPI或GPGPU的方式虽然能够提高系统的计算能力,但程序设计复杂,对GPU设备需求高,限制了其应用范围。分布式计算为解决上述问题提供了途径,借助资源调度系统可以充分利用集群中各节点的计算资源。由于分布式计算系统搭建时采用普通的商用服务器,在实现计算能力提升的同时,无需依赖特殊的计算设备。
遥感影像数据分析计算基于影像的灰度信息,是对特定尺度空间内栅格点集的代数运算,可解决遥感影像的可视化及空间分析问题。为加速遥感影像数据的计算效率,RS-ODMS框架在遥感数据混合存储模型DHS的基础上,构建了如图 3所示的遥感影像分布式并行计算模型(distributed parallel-computing model,DPC)。该模型自底向上,通过分布式遥感数据处理接口并行地读取遥感影像数据,如果待处理影像没有存储在分布式NoSQL Cluster集群中,则先通过DFS接口读取遥感影像文件数据,结合分布式并行计算算子,构建以分区为单位的处理方法,并行读取影像内容数据,最终得到空间范围-覆盖影像字节数据(预设的空间范围长宽均为256或其整数倍大小)结构的键值对弹性分布式遥感影像数据集;若待处理影像已存储在分布式NoSQL Cluster存储集群中,则直接读取存储系统中的瓦片数据构建弹性分布式数据集。在得到弹性分布式数据集后,系统便可在分布式计算平台上并行地进行计算处理。为充分利用分布式计算资源,数据读取完成后,DPC会对遥感数据进行再分区处理,以增加数据的并行度。再分区时,根据影像的大小和分布式集群的配置,可将分区数设置为数百至数千。完成再分区处理后,DPC模型以开源分布式资源管理器为基础,结合各分布式节点的空闲资源情况,采用公平调度算法动态分配数据至各节点,并以预设空间范围为基础,进行并行栅格代数处理。
与传统地图代数类似,在DPC中,影像栅格代数运算处理操作被划分为Local Operation、Focal Operation、Zonal Operation和Global Operation 4大类。
1)Local Operation运算以弹性分布式数据集中的瓦片对象为基础,进行邻域的代数计算。处理时,瓦片数据随机分发至各分布式节点上,以多核并行的方式进行运算;
2)Focal Operation运算也采用邻域处理的方式,但其输出结果维度往往低于输入维度,如卷积运算就是Focal Operation的一种,其并行处理模型类似于Local Operation;
3)Zonal Operation运算的处理范围通常是不规则但具有明确物理意义的单元,其输入需包含指定区域的矢量范围,在并行计算时,将矢量范围掩膜包含的多个Tiles按照数据量均衡地加载至各分布式节点进行并行处理;
4)Global Operation运算对全局影像进行相同的处理。结合分布式处理环境,可将影像划分为若干瓦片Tiles加载至各分布式节点并行进行计算。
具体而言,支撑栅格并行处理的算子包含转换和动作两种,其中转换是分布式处理的操作集合,而动作则负责获得最终的计算处理结果。转换操作是分布式并行计算的关键,在DPC中转换主要包括Map、Reduce、Partition和其他辅助算子4类。Map处理类主要包括Map、FlatMap和MapPartition等,主要完成遥感瓦片弹性分布式数据集的映射转换。Map和FlatMap主要针对小范围数据的逐一计算,MapPartition主要针对批处理操作。Reduce处理类包括Reduce、FoldLeft和FoldRight等,主要负责影像瓦片栅格数据的分布式聚合。Partition处理类包括Partition、Repartition和Coalesce等,主要负责影像栅格数据的分区设置。其他辅助算子主要用于遥感影像瓦片数据辅助运算,包括Persist、Cache等,主要负责数据缓存,以提高计算效率。
在DPC的支撑下,RS-ODMS框架可结合实际应用的需求,以遥感数据为基础,选择相应的计算类型,组合分布式并行计算算子,在分布式计算平台之上构建并行处理方法。
2 RS-ODMS应用设计:以服务更新为例
遥感影像服务更新是遥感数据应用的重要支撑功能之一,它是深层应用研发的基础。传统遥感影像服务更新方法将区域内所有历史影像和当前影像在离线环境中进行拼接,产生镶嵌遥感影像后,再对外发布影像服务。重复性的离线拼接更新操作会导致存储资源的虚耗,且反复的离线处理必然会导致管理与服务系统响应时间的延迟。为解决离线影像镶嵌拼接数据管理能力不足的问题,也为验证RS-ODMS框架的可行性,本文在DHS和DPC的基础上,结合RS-ODMS框架提供的服务接口,设计并实现了一种遥感影像服务在线更新方法。该方法能够在利用已有影像服务数据的基础上,动态地更新瓦片服务,缩短数据更新的时间。
在RS-ODMS架构的基础上,遥感影像服务更新方法被划分为影像切片、逻辑图层构建和影像服务在线拼接更新3部分,图 4展示了遥感影像服务更新方法模型的简单抽象类结构。图 4中RSServiceUpdater为影像服务更新的功能类,该类组合包括影像切分类ImgPyramider、逻辑图层结构类RSLogicalLayer和影像空间镶嵌类RSSpatialMosaic,实现影像数据的预处理、金字塔切片、图层拼接与服务更新等操作。其中,ImgPyramider对新入库遥感数据进行处理,得到分层影像瓦片数据;RSLogicalLayer通过构建逻辑数据图层,实现以影像唯一标识为基础的普通影像服务与更新影像服务统一建模访问方法;RSSpatialMosaic为影像瓦片的分布式在线拼接提供空间交运算与重采样方法基础。
由于网络传输带宽的限制,针对在线服务高时效性的特点,遥感影像服务更新的实现需避免进行复杂的计算操作。不同于传统离线影像镶嵌针对全量数据的处理方式,RS-ODMS在均衡更新效率与更新结果的基础上从瓦片的角度出发,以分布式并行计算为基础,设计基于瓦片粒度的遥感影像服务在线更新方法。该方法无需修改已生成的瓦片数据,以一种非侵入的方式实现遥感影像瓦片的在线实时更新,其处理流程如图 5所示。
遥感影像服务在线更新方法的核心执行流程包括3个方面:①对更新请求的空间范围进行过滤;②从NoSQL数据库中获取过滤空间中的瓦片值;③对原始瓦片和更新瓦片的每个波段并行地进行重采样、插值及合并操作。
遥感影像服务在线更新方法的输入是不同覆盖范围的遥感影像,这些影像需具备近似的幅宽,影像之间的重叠关系没有限制。在预处理时,结合DHS与DPC模型将输入的遥感影像各自进行分布式金字塔切分生成相应的影像服务,新加入的影像均按照相同的处理流程独立进行服务构建。进行在线访问时,系统动态获取浏览区域内的瓦片数据,以本文遥感影像服务在线并行更新算法为基础,结合分布式计算进行在线实时拼接,达到动态的服务更新效果。在线处理中,对于没有重叠的区域直接加载显示,对于重叠区域先进行重采样再将采样融合后的瓦片发送至前端进行显示。RS-ODMS框架中的遥感影像服务在线更新方法虽然损失了部分融合精度,但对于在线应用场景而言,它能够更快地提供最新的影像服务,为基于遥感影像的高时效性在线服务应用节省时间。
3 实验与分析
为验证RS-ODMS分布式遥感数据在线管理与服务框架的有效性,本文以虚拟化软件为基础,构建了一个包含4个处理节点的私有云环境。通过部署在云环境中的应用服务器与分布式处理集群,验证原型系统的效率与可靠性。实验所采用的集群配置信息如表 1所示。
表 1 原型系统节点配置信息Table 1. Configuration of Prototype System Nodes类型 配置信息 节点数 VCPUs 内存/GB 存储/GB 应用服务器 1 4 16 500 分布式集群 3 6 12 1 024 实验中原型系统包含1个应用服务器节点,配置包含4个VCPUs,16 GB内存,500 GB硬盘存储;以及3个分布式集群节点,每个节点的配置均为6个VCPUs,12 GB内存,1 024 GB硬盘存储。原型系统采用Hadoop分布式文件系统HDFS存储遥感影像,以Spark作为底层分布式计算引擎,分别以两种分布式NoSQL数据库Redis Cluster和Accumulo作为瓦片存储后端。其中Redis Cluster代表典型的分布式缓存Key-Value数据库,Accumulo代表典型的分布式列式数据库。实验主要对遥感影像在线管理与实时服务原型系统的兼容性、处理性能和事务能力进行测试,验证RS-ODMS系统架构的性能特点。实验中分别设置Spark工作环境的driverMemory为2 GB、executorMemory为4 GB、executorCores为4。
3.1 RS-ODMS兼容性测试
为验证框架对存储后端的兼容性,实验在RS-ODMS框架的基础上,分别采用Accumulo、Redis Cluster作为存储后端进行分布式并行金字塔建模切分。针对不同存储后端和大小的遥感影像,以不同分区数进行金字塔建模及数据存储的平均耗时结果如图 6所示。从图 6可以看出,RS-ODMS框架能够支持金字塔分层建模切分的分布式加速处理,并且能够结合不同的键值NoSQL存储后端存储瓦片数据。在Spark计算引擎的支撑下,以Redis Cluster为存储后端的遥感数据管理系统的影像建模与瓦片存储性能优于以Accumulo为存储后端的系统。虽然随着数据分区数的增加,以Accumulo为存储后端的系统的读写性能有所提高,但仍然与以Redis Cluster为存储后端的系统存在差距。测试结果数据显示,在数据量不超过Redis Cluster的存储容量时,采用Redis Cluster后端存储系统相对于Accumulo的平均加速比在数据分区数为60、120和180时分别达到3.2、2.3和1.8。由此可见,当内存容量充足时,分布式缓存键值数据库在遥感影像金字塔建模存储过程中的性能优于分布式列式数据库。
从图 6中还可看出,在不同分区数下,基于Redis Cluster的遥感影像分布式金字塔建模与存储耗时显示出较高的稳定性。在增加输入遥感影像大小的过程中,系统的影像金字塔分层切片与存储耗时均表现出类线性的变化趋势,且在设置不同分区数时,系统的处理耗时没有明显的变化,数据的分块读写耗时对Redis Cluster的整体处理时延影响微弱。
3.2 RS-ODMS处理性能测试
遥感影像数据处理耗时是衡量RS-ODMS框架性能的重要指标。为验证RS-ODMS框架的数据处理性能,分别进行了基于原型系统与ArcGIS Server处理系统的影像金字塔切分耗时对比测试,以及在增加影像数据输入量的情况下原型系统处理耗时的变化测试。
实验选取了数据大小分别为0.5 GB、1 GB、2 GB、3 GB左右的影像,结合RS-ODMS原型系统和ArcGIS Server单机系统,在硬件水平(总的CPU频率与总内存容量)相当的情况下进行对比分析实验,结果如图 7所示。从图 7中可以看出,在同等配置的情况下,针对相同的影像,基于原型系统的金字塔分层切分耗时小于ArcGIS Server系统,其相对加速比大于2,证明原型系统在金字塔建模处理的效率上具有明显优势。
进一步选取数据大小分别为1 GB、5 GB、10 GB、20 GB、50 GB、100 GB左右的遥感影像作为输入,在增加影像数据规格的情况下,测试RS-ODMS原型系统的金字塔建模耗时的变化情况,其结果如图 8(a)所示。从图 8(a)中可以看出,随着遥感影像数据量的不断增大,原型系统遥感影像分布式金字塔建模的耗时呈现出近似线性的增长趋势,表明原型系统在进行分布式处理时具有较好的稳定性。
定义金字塔建模的性能指标T,T代表单位影像建模需要消耗的时间,即:
$$ T=\text { IngestTime/ImageSize } $$ (1) 式中,IngestTime为金字塔建模时间;ImageSize为影像大小。
图 8(b)所示为性能指标曲线。从图 8(b)中可以看出,随着影像数据量的增加,原型系统的性能指标呈现出先下降再缓慢增加的趋势。该过程与分布式并行计算的特征相吻合。在影像数据量较小时,计算量也相对较小,由数据划分、计算结果回传等带来的时延是影响处理耗时长短的主要因素;而在数据量增大到一定程度时,影响处理耗时的主要因素转变为数据计算本身,由数据分块等造成的耗时则成为次要因素。当系统计算资源充足时,单位影像的处理耗时逐步减少并趋于稳定;当系统计算资源被分配殆尽时,由于数据堆积,单位影像的处理耗时又将缓慢增加。
3.3 RS-ODMS服务响应能力测试
服务响应能力是衡量原型系统稳定性的重要指标。为测试基于不同存储后端的瓦片服务事务响应能力,实验以前文设计的服务更新方法所生成的影像服务为基础,对原型系统的服务响应能力进行测试,结果如图 9、图 10所示,其中图 9为模拟1 000次瓦片服务访问的响应耗时,图 10为模拟每秒100位用户同时进行服务访问(重复1 000次)的响应耗时。
在图 9中,以Redis Cluster为后端的影像服务响应耗时整体上小于以Accumulo为后端的服务响应耗时,前者的平均响应时长为46.07 ms,后者的平均响应时长为61.93 ms。该结果由Redis Cluster的存储模式所决定,Redis Cluster基于内存对数据进行无交集的分片处理,访问时动态获取数据的相关性,请求延迟较低。此外,Redis Cluster的各节点采用Gossip协议进行通信,相互之间不断交互保持整个集群所有节点数据的完整性,避免类似Accumulo分布式数据库将操作元数据集中存储在某个节点上的问题,其数据操作较主从模式系统更具优势。
图 10为针对原型系统的压力访问测试结果,从图 10中可以看出,以Redis Cluster为后端的系统的并发响应性能明显优于以Accumulo为后端的管理服务系统。在1 000次模拟每秒100个用户同时访问的过程中,以Redis Cluster为后端的系统的平均服务响应时长为1 405.78 ms;而以Accumulo为存储后端时的平均服务响应时长为1 639.19 ms,前者优势明显。实验结果显示,无论是在低访问量还是高访问量的情况下,以Redis Cluster分布式缓存存储为后端的管理与服务系统都具有明显的响应优势,可以为高时效在线服务应用提供更好的保障。
综上所述,原型系统测试实验结果表明,RS-ODMS框架能够支持不同存储后端的数据存储,具备良好的适应性,与分布式计算相结合可大幅提升遥感数据的处理性能。通过对存储与计算的抽象,RS-ODMS能在屏蔽底层处理细节的基础上,实现遥感数据的高效在线管理与服务处理。
4 结语
本文在研究现有遥感数据管理与服务系统存在的问题的基础上,设计了一种分布式遥感数据在线管理与服务框架RS-ODMS。该框架构建了基于RDBMS、DFS和NoSQL交互的遥感数据混合存储模型DHS。同时,在结合分布式计算的基础上对遥感影像数据处理进行优化,构建了基于分布式平台的并行计算模型DPC。在DHS与DPC模型的基础上,以影像服务更新应用为例,详细阐述了基于RS-ODMS框架的分布式服务应用构建流程。
结合原型系统的实验表明,RS-ODMS框架能够在抽象管理与服务功能的基础上,对不同存储后端进行适配支持,降低系统的冗余度与开发难度。实验中,RS-ODMS框架具备对分布式存储与计算的解耦能力,且对不同的存储后端均有较好的适应性。以分布式金字塔分层建模为例,原型系统展现了弹性、稳定的数据处理能力,构建的影像瓦片服务具备响应时延低、吞吐能力高的特点。未来,将继续改进完善RS-ODMS框架的设计,以支撑更丰富的存储后端系统和处理平台,结合在线遥感数据的应用需求进行优化,增强框架的分布式在线处理能力。
-
表 1 原型系统节点配置信息
Table 1 Configuration of Prototype System Nodes
类型 配置信息 节点数 VCPUs 内存/GB 存储/GB 应用服务器 1 4 16 500 分布式集群 3 6 12 1 024 -
[1] Wang C, Hu F, Hu X, et al. A Hadoop-Based Distributed Framework for Efficient Managing and Processing Big Remote Sensing Images[J]. ISPRS Ann, 2015, 2(7):63-66 http://adsabs.harvard.edu/abs/2015ISPAn.II4...63W
[2] Huang Y, Zhong X C, Tao Y U, et al. Agricultural Remote Sensing Big Data: Management and Applications[J]. Journal of Integrative Agriculture, 2018, 17(9):1 915-1 931 doi: 10.1016/S2095-3119(17)61859-8
[3] Wang P, Wang J, Chen Y, et al. Rapid Processing of Remote Sensing Images Based on Cloud Computing[J]. Future Generation Computer Systems, 2013, 29(8): 1 963-1 968 doi: 10.1016/j.future.2013.05.002
[4] Mahmoud E, Hegazy O, El-Dien M N. Integration of GIS and Cloud Computing for Emergency System[J]. International Journal of Computer Trends & Technology, 2013, 4(10):1-5 http://www.ijcttjournal.org/volume-4/issue-10/IJCTT-V4I10P149.pdf
[5] Rajak R, Raveendran D, Chandrasekhar M B, et al.High-Resolution Satellite Image Processing Using Hadoop Framework[C]. IEEE International Conference on Cloud Computing in Emerging Markets (CCEM), Bangalore, India, 2015
[6] Chi M, Plaza A, Benediktsson J A, et al. Big Data for Remote Sensing: Challenges and Opportunities[J].Proceedings of the IEEE, 2016, 104(11):2 207-2 219 doi: 10.1109/JPROC.2016.2598228
[7] Lin F C, Chung L K, Ku W Y, et al. The Framework of Cloud Computing Platform for Massive Remote Sensing Images[C]. IEEE International Conference on Advanced Information Networking & Applications, Barcelona, Spain, 2013
[8] 季艳, 鲁克文, 张英慧.海量遥感数据分布式集群化存储技术研究[J].计算机科学与探索, 2017, 11(9):1 398-1 404 http://www.cqvip.com/QK/93336B/201709/7000307306.html Ji Yan, Lu Kewen, Zhang Yinghui. Research on Distributed Clustering Storage Technology for Massive Remote Sensing Data[J]. Journal of Frontiers of Computer Science & Technology, 2017, 11(9): 1 398-1 404 http://www.cqvip.com/QK/93336B/201709/7000307306.html
[9] Xiao Z, Liu Y. Remote Sensing Image Database Based on NoSQL Database[C]. IEEE International Conference on Geoinformatics, Shanghai, China, 2011
[10] Xiao F. A Spark Based Computing Framework for Spatial Data[J]. Remote Sensing, 2017(8):125-130 http://adsabs.harvard.edu/abs/2017ISPAn44W2..125X
[11] Fox A, Eichelberger C, Hughes J, et al. Spatio-Temporal Indexing in Non-relational Distributed Databases[C].IEEE International Conference on Big Data, Silicon Valley, CA, USA, 2013
[12] Aji A, Wang F, Vo H, et al. Hadoop-GIS: A High Performance Spatial Data Warehousing System over MapReduce[J]. Proceedings of the VLDB Endowment, 2013, 6(11):1 009-1 020 doi: 10.14778/2536222.2536227
[13] Eldawy A, Mokbel M. SpatialHadoop: A MapReduce Framework for Spatial Data[C]. International Conference on Data Engineering, Seoul, South Korea, 2015
[14] Tang M, Yu Y, Malluhi Q M, et al. LocationSpark: A Distributed In-memory Data Management System for Big Spatial Data[J]. Proceedings of the VLDB Endowment, 2016, 9(13):1 565-1 568 doi: 10.14778/3007263.3007310
[15] Yu J, Wu J, Sarwat M. GeoSpark: A Cluster Computing Framework for Processing Large-scale Spatial Data[C]. The 23rd SIGSPATIAL International Conference, Washington, USA, 2015
[16] Xie D, Li F, Yao B, et al.Simba: Spatial In-memory Big Data Analysis[C]. The 24th ACM SIGSPATIAL International Conference, California, USA, 2016
[17] Wang L, Ma Y, Yan J, et al. PipsCloud: High Performance Cloud Computing for Remote Sensing Big Data Management and Processing[J].Future Generation Computer Systems, 2016(8):353-368 http://www.sciencedirect.com/science/article/pii/S0167739X16301923
[18] Condie T, Conway N, Alvaro P, et al. Online Aggregation and Continuous Query Support in Map-Reduce[C].The ACM SIGMOD International Conference on Management of Data, Indiana, USA, 2010
[19] Praveen P, Jayanth Babu C, Rama B. Big Data Environment for Geospatial Data Analysis[C]. The International Conference on Communication and Electronics Systems, Coimbatore, India, 2016
[20] Zaharia M, Chowdhury M, Franklin M J, et al. Spark: Cluster Computing with Working Sets[C]. The 2nd USENIX Conference on Hot Topics in Cloud Computing, Berkeley, CA, USA, 2010
[21] 乐鹏, 吴昭炎, 上官博屹.基于Spark的分布式空间数据存储结构设计与实现[J].武汉大学学报·信息科学版, 2018, 43(12):2 295-2 302 doi: 10.13203/j.whugis20180034 Yue Peng, Wu Zhaoyan, Shangguan Boyi. Design and Implementation of a Distributed Geospatial Data Storage Structure Based on Spark[J]. Geomatics and Information Science of Wuhan University, 2018, 43(12): 2 295-2 302 doi: 10.13203/j.whugis20180034
[22] Authmann C, Beilschmidt C, Drönner J, et al. VAT: A System for Visualizing, Analyzing and Transforming Spatial Data in Science[J]. Datenbank Spektrum, 2015, 15(3):175-184 doi: 10.1007/s13222-015-0197-y
[23] Gaojin H, Wei X, Luo C, et al. A MPI-Based Parallel Pyramid Building Algorithm for Large-scale Remote Sensing Images[C]. International Conference on Geoinformatics, Wuhan, China, 2015
[24] Zhao L, Chen L, Ranjan R, et al. Geographical Information System Parallelization for Spatial Big Data Processing: A Review[J]. Cluster Computing, 2016, 19(1):139-152 doi: 10.1007/s10586-015-0512-2
[25] Kaligirwa N, Leal E, Gruenwald L, et al. Parallel Compression and Indexing of Large-scale Geospatial Raster Data with GPGPUs[C]. IEEE International Congress on Big Data, Honolulu, HI, USA, 2017
[26] Yan J, Ma Y, Wang L, et al. A Cloud-Based Remote Sensing Data Production System[J]. Future Generation Computer Systems, 2018, 86(9):1 154-1 166 http://www.sciencedirect.com/science/article/pii/S0167739X17303035
[27] Ma Y, Wu H, Wang L, et al. Remote Sensing Big Data Computing: Challenges and Opportunities[J]. Future Generation Computer Systems, 2015, 51(10):47-60 http://www.sciencedirect.com/science/article/pii/S0167739X14002234
[28] 崔杰, 李陶深, 兰红星.基于Hadoop的海量数据存储平台设计与开发[J].计算机研究与发展, 2012, 49(S1):12-18 http://www.cqvip.com/QK/94913X/2012S1/1003429589.html Cui Jie, Li Taoshen, Lan Hongxing. Design and Development of the Mass Data Storage Platform Based on Hadoop[J]. Journal of Computer Research and Development, 2012, 49(S1):12-18 http://www.cqvip.com/QK/94913X/2012S1/1003429589.html
[29] 李绍俊, 杨海军, 黄耀欢, 等.基于NoSQL数据库的空间大数据分布式存储策略[J].武汉大学学报·信息科学版, 2017, 42(2):163-169 doi: 10.13203/j.whugis20140774 Li Shaojun, Yang Haijun, Huang Yaohua, et al. Geo-Spatial Big Data Storage Based on NoSQL Database[J]. Geomatics and Information Science of Wuhan University, 2017, 42(2):163-169 doi: 10.13203/j.whugis20140774
[30] 景维鹏, 田冬雪.基于HBase的遥感数据分布式存储与查询方法研究[J].计算机工程与科学, 2018, 40(6):992-998 doi: 10.3969/j.issn.1007-130X.2018.06.005 Jing Weipeng, Tian Dongxue.A Distributed Storage and Query Method of Remote Sensing Data Based on HBase[J]. Computer Engineering & Science, 2018, 40(6):992-998 doi: 10.3969/j.issn.1007-130X.2018.06.005
[31] 张云舟.影像金字塔的生成、压缩与存储模型研究[D].太原: 太原理工大学, 2016 Zhang Yunzhou.Research on Generation, Compression and Storage Model of the Image Pyramid[D]. Taiyuan: Taiyuan University of Technology, 2016
[32] Bader M. Space-Filling Curves: An Introduction with Applications in Scientific Computing[M]. Berlin: Springer, 2013