CN103281376A - 一种云环境下海量时序遥感影像的自动缓存构建方法 - Google Patents

一种云环境下海量时序遥感影像的自动缓存构建方法 Download PDF

Info

Publication number
CN103281376A
CN103281376A CN201310211886XA CN201310211886A CN103281376A CN 103281376 A CN103281376 A CN 103281376A CN 201310211886X A CN201310211886X A CN 201310211886XA CN 201310211886 A CN201310211886 A CN 201310211886A CN 103281376 A CN103281376 A CN 103281376A
Authority
CN
China
Prior art keywords
data
map
num
image
cloud environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310211886XA
Other languages
English (en)
Other versions
CN103281376B (zh
Inventor
孟令奎
李继园
黄长青
张文
樊志伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN201310211886.XA priority Critical patent/CN103281376B/zh
Publication of CN103281376A publication Critical patent/CN103281376A/zh
Application granted granted Critical
Publication of CN103281376B publication Critical patent/CN103281376B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Abstract

一种云环境下海量时序遥感影像的自动缓存构建方法:针对Hadoop云环境下影像缓存构建特点,在固定时间间隔内对新接收的分景数据进行数据优化划分,执行数据块粒度的单景或多景数据缓存计算,并通过数据块在云环境中的优化放置影响缓存切片的任务调度,从而以时间上连续的多个小批量MapReduce任务实现时序影像持续抵达情况下的自动缓存构建过程。本发明通过若干优化策略尽可能地发挥MapReduce“数据本地化计算”特性,利用Hadoop提供的可扩展云计算能力,在短周期内能够快速构建与更新多种时序抵达遥感数据的缓存服务;适用于不同空间时间分辨率,不同数据源的遥感影像,具有良好的普适性。

Description

一种云环境下海量时序遥感影像的自动缓存构建方法
技术领域
本发明涉及地理信息与云计算技术的交叉领域,特别涉及一种在“地表环境实时动态监测”中,利用云计算环境对时序抵达的海量遥感数据执行快速缓存构建的方法。
背景技术
遥感影像具备多分辨率的连续地理现象表达能力,在地表环境和自然灾害监测中发挥了重要应用。瓦片式缓存服务则是遥感影像信息应用与共享的支撑技术。它通过数据采样建立多级静态WMS(Web Map Service),实现基于网络的影像多尺度快速访问。
当前对地观测平台高时空分辨率传感器技术发展迅速,数据量得到极大丰富和扩充,并呈现时序数据的“流式”传输特性以及海量特性。如MODIS(Moderate Resolution ImagingSpectroradiometer)数据(最高空间分辨率为250m,一日过境4次),中国环境A/B卫星数据(最高空间分辨率30m,重访周期2日),近期发射的资源三号(2.5米分辨率,重访周期5日)和计划发射的高分系列卫星数据(高分一号:2米分辨率,重放周期4日)。由此带来的缓存构建与更新任务在构建效率上面临很大挑战。当前大多数影像缓存技术仍运行于单机环境,其一次性批处理模式和较长时间开销无法满足近实时或短周期环境监测需求,而通过高性能处理机提高缓存构建速度的代价昂贵且不具扩展性。而在普通集群环境下执行分布式缓存构建的实现中,如ArcGIS Serve和Map Tiler Cluster,多节点频繁访问共享存储系统(即移动数据到计算节点)易导致网络瓶颈,限制了计算的可扩展性。
近年来,快速发展的云计算技术(如开源实现Hadoop,包括MapReduce/HDFS/HBase)通过结合本地化计算(即移动计算到数据节点)与数据并行思想,实现了上千个普通计算节点的扩展能力。其中,分布式文件系统HDFS和列式数据库HBase实现了基于key-value的快速存储与访问,MapReduce模式则通过Map(映射)和Reduce(化简)函数操作key-value数据集,实现大规模数据密集型计算。利用该套技术动态聚集的计算与存取能力为分布式缓存构建提供了一种新的有效平台。目前该模式已尝试应用于多个科学数据密集型计算领域,由于该技术对数据格式的支持主要集中在数值文本数据,对于遥感影像的处理研究还处于起步阶段。尽管目前已出现基于MapReduce的影像金字塔式切片方法,但此类方法采用简单的MapReduce影像切片算法,没有围绕缓存构建特点对其在Hadoop云环境下的工作效率做深入探讨,从而没有充分发挥出MapReduce的数据本地化计算特性;同时此类方法为一次性批处理任务,无法满足针对具备上述数据特征的缓存构建需求。
发明内容
针对上述问题,本发明提出一种云环境下海量时序遥感影像的自动缓存构建方法。
本发明的技术方案为一种云环境下海量时序遥感影像的自动缓存构建方法,在云环境的计算节点中同时选择一个以上节点作为数据接收节点,并部署执行驱动器;所述执行驱动器为常驻内存服务,实时监控数据接收磁盘,在数据持续抵达的情况下,在每个固定时间间隔内执行以下步骤,
步骤1,对于云环境中的影像接收节点在固定时间间隔内接收的分景数据集,根据当前云环境资源实时利用状况预估分景数据集中每景影像的分块格网划分数;
步骤2,根据分块格网和缓存格网间的不重合性所导致的不完整切片面积大小,确定数据最优划分规则;
步骤3,根据步骤2所得数据最优划分规则,对采用分块格网划分所得影像数据块进行分布式优化放置,包括按照Hilbert空间填充曲线序列将所有影像数据块放置至云环境下的分布式文件系统,作为步骤4的数据输入;
步骤4,根据数据输入,执行基于MapReduce模式的数据并行切片任务,并写入相应多维切片信息至分布式列式数据库,其中Map表示映射,Reduce表示化简。
而且,步骤1中包括以下子步骤,
步骤1.1,预估分块格网的分块总数目,实现方式如下,
设固定时间间隔TW内接收数据集为{D},对于分景数据集中每景地理范围为[xmin,ymin,xmax,ymax]的影像D在第n层缓存格网中的切片数目Numn由下式计算获得,其中xtile=360.0/n为切片经度间隔,ytile=180.0/n为维度间隔;
Figure BDA00003281541500023
其中,xmin,ymin,xmax,ymax分别为影像D的最小经度范围,最小维度范围,最大经度范围和最大维度范围;
计算影像D建立M到N层缓存服务的切片总数为
Figure BDA00003281541500022
设影像D的Numtile记为D.Numtile,进一步计算分景数据集的切片总数目TotalNumtile{D}D.Numtile
步骤1.2,根据当前云环境中运行的拥有I个共享Job的队列Q和云环境中Map Slot的总数目TotalNummap,预估云环境中能够用的Map Slot数如下,
AvalNum map = TotalNum map - Σ i = 1 I Q . job i . Num map × ( 1 - α i ) ,
其中,Q.jobi.Nummap为Q中第i个Job的Map Slot需求数,αi为该Job的Map函数任务完成率;
Map Slot和Reduce Slot分别为Map和Reduce计算阶段中按预设计算资源配额而划分的计算单元;
步骤1.3,初始化分景数据集建立从第M层到第N层缓存过程的数据动态划分数Numpart为步骤1.2所得AvalNummap,设集群中单机环境下单个缓存切片平均串行生成时间为Ttile,进一步根据步骤1.1所得TotalNumtile获得单个Map函数初始执行时间预估值:Tmap=(TotalNumtile×Ttile)/Numpart
步骤1.4,设h为Map函数执行时间阈值,以Tmap≤h为循环满足条件,在步骤1.3中的Numpart初始化值的基础上,每次循环按照预设固定步长递减Numpart,并重新计算Tmap=(TotalNumtile×Ttile)/Numpart,直至循环结束;取最终Numpart为分景数据集划分数,设分景数据集中某景影像的数据量在分景数据集中所占比重为λ,该景影像的分块格网划分数为
Figure BDA00003281541500033
而且,设分景数据集中某景影像的分块格网的行列数比为numxpart/numypart,其在缓存格网中的行列数比为numx/numy,步骤2中所述数据最优划分规则为,
Num xpart Num ypart = Num x Num y .
而且,步骤3中包括以下子步骤,
步骤3.1,对每景图像的影像数据块,在上载至云环境前先建立Hilbert曲线排序,包括对每个影像数据块进行传感器编码及Hilbert编码,并作为影像数据块的Key值;
步骤3.2,遍历每个Rack中节点上的能够用的Map Slot,按照Key值顺序将影像数据块逐个上载至每个Map Slot中,所述Rack为机架。
而且,在步骤4,Map阶段对影像数据块的切片重采样过程中,若存在碎片,则仅对碎片范围内的数据执行重采样,并将多维切片信息输出到Reduce端,所述多维切片信息包括将碎片在切片范围内的左下角图像坐标,碎片的长宽值,以及碎片的JPEG压缩值一并存入字节数组作为Value值,将“碎片类型-传感器编码-缓存格网编码-时间编码”作为切片Key值;Reduce阶段根据同一切片Key值对碎片数据执行合并;在Map和Reduce间增加一个Combine阶段过滤本地合并结果,Combine表示合并;在每个阶段的数据库输出中,当多个结果填满缓存时,才执行数据库批量写入。
本发明提出的方法,针对于Hadoop云环境下影像缓存构建特点,在固定时间间隔(称为Time Window,TW)内对新接收的分景数据进行数据优化划分,执行数据块粒度的单景或多景数据缓存计算,并通过数据块在云环境中的优化放置影响缓存切片的任务调度,从而以时间上连续的多个小批量MapReduce任务实现时序影像持续抵达情况下的自动缓存构建过程。本发明通过若干优化策略尽可能地发挥MapReduce“数据本地化计算”特性,利用Hadoop提供的可扩展云计算能力,在短周期内能够快速构建与更新多种时序抵达遥感数据的缓存服务;适用于不同空间时间分辨率,不同数据源的遥感影像,具有良好的普适性。
附图说明
图1是本发明实施例的流程图;
图2是关于本发明的不同规则格网划分情况示意图;
图3是本发明实施例的数据块优化放置示意图;
图4是本发明实施例的MapReduce缓存切片算法示意图;
图5是本发明实施例的随数据量增加的执行时间对比图;
图6是本发明实施例的随节点增长的执行时间对比图;
图7是ArcGIS Server的CPU利用率变化示意图;
图8是本发明实施例的CPU利用率变化示意图。
具体实施方式
以下结合附图和实施例详细说明本发明技术方案。
实施例用的缓存格网模型为:Global Logical Tile Scheme,该模型在geodetic投影下以2n+1×2n划分的多级经纬格网为基础建立全球范围内的地图瓦片式划分。其第一层为2(经度方向)×1(维度方向)的格网,对该层格网单元按照四叉树划分可进一步得到细分高层格网。具体参见文献“John T.Sample,Elias Loup:Tile-Based Geospatial Information Systems.Principles andPractices.New York,2010,pp.7-9.”
采用的云环境以Hadoop软件栈中的MapReduce框架,HDFS分布式文件系统,以及HBase列式数据库构建。硬件环境为文件系统主节点,调度节点,数据库管理节点以及若干计算节点建立的包含多个Rack的分布式集群环境。在计算节点中同时选择若干节点作为数据接收节点,并部署执行驱动器。该执行驱动器为常驻内存服务,实时监控数据接收磁盘,在数据持续抵达的情况下,在每个TW内按照顺序重复执行以下步骤,如图1所示(图中,Time Window为用户根据数据抵达情况预设的时间间隔值,根据时间T顺序,t1为第一个TW起始时间,t2为该TW的结束时间和下个TW的起始时间,t3为下个TW的结束时间,如此类推)。具体步骤如下,
步骤1,对于云环境中的影像接收节点在固定时间间隔内接收的分景数据集,根据当前云环境资源实时利用状况,预估数据合理划分数;
在将该环境中所有计算单元视为均质单元的基础上,可采用数据规则划分法以实现计算负载均衡。其划分粒度需要综合考虑当前云中可用计算资源规模以及待处理数据大小。理论上,在资源充足条件下,划分粒度减少可增加数据并行度,提升加速比。但若粒度过小,则会导致大量低效的Map小任务以及后续处理,显著影响其加速性能。实施例中,根据当前云环境资源实时利用状况,预估数据合理划分数,具体是:
步骤1.1,预估分块格网的分块总数目。
设固定时间间隔TW内接收数据集为{D},对于数据集中每景地理范围为[xmin,ymin,xmax,ymax]的影像D在第n层缓存格网中的切片数目Numn由下式计算获得,其中xtile=360.0/n为切片经度间隔,ytile=180.0/n为维度间隔。
Figure BDA00003281541500051
其中,xmin,ymin,xmax,ymax分别为影像D的最小经度范围,最小维度范围,最大经度范围和最大维度范围。因此,单景数据建立M到N层缓存服务的切片总数为
Figure BDA00003281541500052
设影像D的Numtile记为D.Numtile,进一步可计算数据集的切片总数目TotalNumtile{D}D.Numtile
步骤1.2,根据当前云环境中运行的拥有I个(为减少资源竞争,建议限定I=3)共享Job的队列Q和云环境中Map Slot的总数目TotalNummap,预估云环境中可用Map Slot数为:
AvalNum map = TotalNum map - Σ i = 1 I Q . job i . Num map × ( 1 - α i ) . 其中,Q.jobi.Nummap为Q中第i个Job的MapSlot需求数(即数据分块数,由程序日志文件获取),αi为该Job的Map函数任务完成率(通过Hadoop API查询实时获取)。
Map Slot和Reduce Slot分别为Map和Reduce计算阶段中按预设计算资源配额而划分的计算单元;资源配额即CPU和内存,本实施例中,每个Map Slot分配1个CPU和1GB内存,每个Reduce Slot分配1个CPU和2GB内存。
步骤1.3,初始化数据集建立从第M层到第N层缓存过程的数据动态划分数Numpart为步骤1.2所得AvalNummap,设该集群中单机环境下单个缓存切片(即缓存格网中的切片)平均串行生成时间为Ttile(可预先统计),进一步根据步骤1.1所得TotalNumtile获得单个Map函数初始执行时间预估值:Tmap=(TotalNumtile×Ttile)/Numpart
步骤1.4,以Tmap≤h(h为Map函数执行时间阈值,实施例限定为30sec)为循环满足条件,在步骤1.3中的Numpart初始化值的基础上,每次循环按照固定步长(建议值为1)递减Numpart,并重新计算Tmap=(TotalNumtile×Ttile)/Numpart,直至循环结束。取最终Numpart为数据集划分数(即分块总数目),且每景影像的分块格网划分数为
Figure BDA00003281541500064
(λ为该景影像数据量在总数据集中所占比重)。
步骤2,根据分块格网和缓存格网间的不重合性所导致的不完整切片面积大小,确定数据最优划分规则。
常用影像数据规则划分方法有等间距行划分,列划分以及格网划分,其中行列划分可分别视为列数和行数为1的格网划分。图2分别列出数据A和B基于不同格网划分法的两组情况(当划分数为4时),其中(a)是对数据A的2×2划分法,(b)是对数据A的4×1划分法,(c)是对数据A的1×4划分法,(d)是对数据A的2×2划分法,(e)是对数据A的4×1划分法,(f)是对数据A的1×4划分法。其中虚线为缓存格网线,实线为分块格网线,阴影部分为两种格网所形成的碎片区域。数据A和数据B在缓存格网中的行列比(Row/Col)分别为9/11和5/11。经统计,对于数据A,2×2划分法得到碎片最少,而对于数据B,1×4的碎片最少。可见划分方法与数据行列比共同确定了碎片数量或面积。在实施例中,通过寻找产生最小碎片面积约束下的两者关系,以确定数据最优划分规则,具体是:
根据式(1)计算每景影像数据在缓存格网中的行列
Figure BDA00003281541500061
和列数
Figure BDA00003281541500062
在步骤1.4确定每景影像数据的分块数
Figure BDA00003281541500065
后,若采用行列数为numxpart和numypart的分块格网(此时
Figure BDA00003281541500066
设切片长宽都为2k),则建立第n层缓存切片时,图2中示意的碎片区域面积可由下式计算得到。
A=2k(Numxpart-1)Numx+2k(Numypart-1)Numy+2k2(Numxpart-1)(Numypart-1)    (2)
若上式A取极小值,可进一步求的满足条件:
Figure BDA00003281541500063
即当每景影像数据分块格网的行列数比numxpart/numypart与其在缓存格网中的行列数比numx/numy达到一致时,可使得切片过程中产生的碎片相比其他规则划分法更少,可显著减小后续网络传输量。
步骤3,根据步骤2所得数据最优划分规则,对采用分块格网划分所得影像数据块的分布式优化放置。按照Hilbert空间填充曲线序列将所有数据分块放置至云环境下的分布式文件系统,作为步骤4的数据输入。
Hadoop默认的文件系统HDFS不支持影像格式存取,需要另行实现,效率较低。实施例以支持POSIX的分布式文件系统GFarm(详见“http://datafarm.apgrid.org”)替换HDFS作为Hadoop云环境的文件存储系统,因此可在软件实现上方便使用各种现有工具(如GDAL,ENVI/IDL)直接读取数据块,以支持下述切片过程的构建。数据本地性最好的状态是数据与处理任务在同一节点,其次是数据与处理任务在同一个机架(Rack)。在实施例中,以Hilbert序列指导数据块的在该分布式文件系统中物理分布,直接干预后续计算调度以减少数据传输,同时结合各节点Map Slot数进行负载均衡,如图3所示(图中显示了具有2个机架(Rack1和Rack2),m个计算节点(节点1,节点2,…,节点m)的分布式集群环境)。具体是,
步骤3.1,对分块数目为Numxpart×Numypart的每景影像,上载前建立log2(max(Numxpart,Numypart))阶Hilbert曲线。对每个分块(即采用分块格网划分所得影像数据块)编码为:传感器编码+Hilbert编码,并作为分块Key值,形成Hilbert编码排序数据块。Value值为数据分块的主要信息,包含元数据信息(产品类型,分块格网行列号,分辨率,缓存层级数,景深以及分块四角坐标信息),以及经过JPEG压缩的栅格值。
步骤3.2,根据GFarm的MetaData Server上注册的各节点信息,遍历每个Rack中节点上的可用Map Slot,按照Key值顺序将数据块按照轮询法,逐个上载至每个可用Map Slot所在节点的GFarm存储区域中(此时Numpart≤AvalNummap)。遍历时,若当前Rack已装满,则继续上载剩余数据块至下一个Rack,直至所有数据块上载完毕。
该方法在保证数据量与计算能力匹配的同时,减少了从Map到Reduce阶段中,数据跨节点或Rack的传输开销,使得shuffle时间复杂度由O(M2)降为O(M)(M表示Map任务数)。
步骤4,执行基于MapReduce模式的数据并行切片任务,并写入多维切片信息至分布式列式数据库(HBase)。
由于格网剖分线与数据划分线不一定重合,会造成数据分块边缘部分出现不完整切片(称为碎片)。现有技术中简单的MapReduce算法为Map阶段切片重采样,输出完整切片,并向Reduce端传递碎片;Reduce阶段则合并碎片。实施例中,通过减少网络传输量,优化简单的MapReduce切片算法,包括Map阶段对影像数据块的切片重采样过程中,若存在碎片,则仅对碎片范围内的数据执行重采样,并将包括切片Key值的多维切片信息,输出到Reduce端;Reduce阶段根据同一切片Key值对碎片数据执行合并;在Map和Reduce间增加一个Combine阶段过滤本地合并结果,减少传输。在每个阶段的数据库输出中,当多个结果填满缓存时,才执行数据库批量写入。其中,Combine表示合并。
具体说明如下:
在Map阶段对分块数据执行第n层缓存的切片重采样时,由于格网剖分线与数据划分线不一定重合,会造成数据分块边缘部分出现不完整切片(称为碎片)。图4示意,A,B,C,D是划分后四个数据块,分块对角出现a,b,c,d四个碎片(称角接碎片JAF);分块线接边出现e,f两个碎片(称为边接碎片JEF),而g为完整切片。Map阶段将对生成的切片类型进行判断,若切片为完整切片,将直接输出到列式数据库(具体实施时可由本领域技术人员设计表结构以写入多维切片信息);若存在角接碎片或边接碎片,则仅对碎片范围内的数据执行重采样,并将碎片在切片范围内的左下角图像坐标,碎片的长宽值,以及碎片的JPEG压缩值一并存入字节数组作为Value值,将“碎片类型-传感器编码-缓存格网编码-时间编码”作为切片Key值,输出到Combine端(本地的Reduce端)。在Combine/Reduce阶段,Combine端收集具有同一Key值的碎片,首先抽取碎片类型,判断当前碎片的数目。若为碎片类型为JAF且碎片数为4,则读取Value值中的相关坐标信息,执行碎片合并输出到列式数据库;否则,将其继续传递到最终Reduce端。若碎片类型为JEF且碎片数为2,则执行碎片合并输出,否则也将其传递到最终Reduce端。最终Reduce端收集具有同一Key值的碎片,直接执行合并并输出合并后碎片,当多次合并结果填满缓存时,才执行数据库批量写入,避免多次网络I/O操作。
上述切片Key值中,缓存格网编码采用OpenStreetMap的QuadTiles四叉树编码方式(具体参见文献“Frederik Ramm,Jochen Topf,Steve Chilton:OpenStreetMap.Using and Enhancingthe Free Map of the World.Cambridge,2011.”);传感器编码采用三位自然数定义(如“000”代表MODIS,“001”代表HJ-1A/1B CCD,…);时间编码为“YYYYMMDDHHmm”,其中,“YYYY”,“MM”,“DD”,“HH”和“mm”分别代表公元年,月,日,小时和分钟标记。
为达到多维信息(时间维,空间维,分辨率维和传感器维)的快速检索,切片采用组合健(即上述“传感器编码-缓存格网编码-时间编码”)为行健,并设计两个子列,一个子列以字符串格式存储切片元数据信息(包括格网行列号,中心坐标,景深,缓存层级);另一子列以字节数组形式存储经JPEG压缩的切片栅格值。基于此存储结构,用户可以在WMS的Servlet服务器端通过基于HBase API定义的调用接口根据行健直接定位,或批量扫描获取WMS切片。
为便于说明本发明效果起见,以下进行性能对比:
本发明的实施例,采用Java语言编写,依赖开源地理数据抽象库(GeoSpatial Data AbstractLibrary,GDAL),Hadoop开发包,GFarm API及其基于Hadoop的MapReduce开发包。实例运行硬件环境为普通PC建立的集群(1G bps理论网速,10个计算节点,2个Rack,1个管理节点,各节点配置两个双核2.0GHz CPU和4GB RAM)。每个计算节点配置2个Map Slot,1个Reduce Slot。采用的切片大小为256×256像素。实施例以ArcGIS Server以及文献(“霍树民.基于Hadoop的海量影像数据管理关键技术研究[D].国防科技大学,2010.”)提出的缓存算法(称为BottomUp)与本发明(称为OptMehod)做总体性能对比。
按照图1所示一个TW内的流程步骤,执行两组实验:一组采用2倍数据量递增的一组数据,测试对比三种方法(OptMethod,ArcGIS Server和BottomUp)在满节点平台上执行7-14层缓存构建的时间开销;一组采用1.5GB单景数据,测试随节点增加,几种方法执行前述处理的时间开销。其中,ArcGIS Server集群部署于同一计算环境中,且所有数据已事先上载至GFarm。所有测试执行三次取均值。
第一组实验(图5)显示随数据量增加,BottomUp时间开销迅速增长,该算法实现从Map端传输大量切片到Reduce端,造成网络及磁盘I/O开销压力。由于MapReduce自身延迟,数据增长初期,ArcGIS Sever执行效率明显高于MapReduce方法,但当数据量达到384MB,开始低于OptMethod。这是由于在低网速环境下各节点的ArcSOC(ArcGIS Server服务进程)同时访问GFarm存储系统,造成较大的网络通信延迟。OptMethod缓慢增长且性能最优。第二组实验(图6)显示在节点数较少时,ArcGIS Server执行效率明显高于其他方法。但随着节点增长,其扩展能力受到数据I/O限制。而OptMethod逐渐发挥出本地化计算特性,在6个节点时的执行时间已低于ArcGIS Server,在满节点时的执行效率分别达到ArcGIS Server的1.3倍,BottomUp的3.6倍。该实验验证了本发明方法在大数据量情况下具有较好加速性能和可扩展性。
按照图1所示的每个TW内的流程步骤,测试连续输入5景时序数据的情况下(每景影像数据量约1.5GB),ArcGIS Server(以连续的单个批处理任务模拟时序数据处理)与OptMethod执行7-14层缓存构建过程中各节点的平均CPU利用率(包括System,User和IO wait;其中,System表示内核空间对CPU的平均利用率,User表示用户空间对CPU的平均利用率,IO wait表示CPU用于等待I/O请求结果的平均时间百分比)。实验结果(图7)显示ArcGIS Server的平均用户空间CPU利用率变化较大,负载不够均衡。图中5个“波峰”是数据缓存压力较大时域。本发明OptMehod(图8)的平均用户空间CPU利用率总体平稳,IO wait整体较前者减小,MapReduce的资源动态分配和前后多个Job交叠执行使得其CPU负载更为均衡,并减少了数据处理延迟。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

Claims (5)

1.一种云环境下海量时序遥感影像的自动缓存构建方法,其特征在于:在云环境的计算节点中同时选择一个以上节点作为数据接收节点,并部署执行驱动器;所述执行驱动器为常驻内存服务,实时监控数据接收磁盘,在数据持续抵达的情况下,在每个固定时间间隔内执行以下步骤,
步骤1,对于云环境中的影像接收节点在固定时间间隔内接收的分景数据集,根据当前云环境资源实时利用状况预估分景数据集中每景影像的分块格网划分数;
步骤2,根据分块格网和缓存格网间的不重合性所导致的不完整切片面积大小,确定数据最优划分规则;
步骤3,根据步骤2所得数据最优划分规则,对采用分块格网划分所得影像数据块进行分布式优化放置,包括按照Hilbert空间填充曲线序列将所有影像数据块放置至云环境下的分布式文件系统,作为步骤4的数据输入;
步骤4,根据数据输入,执行基于MapReduce模式的数据并行切片任务,并写入相应多维切片信息至分布式列式数据库,其中Map表示映射,Reduce表示化简。
2.根据权利要求1所述云环境下海量时序遥感影像的自动缓存构建方法,其特征在于:步骤1中包括以下子步骤,
步骤1.1,预估分块格网的分块总数目,实现方式如下,
设固定时间间隔TW内接收数据集为{D},对于分景数据集中每景地理范围为[xmin,ymin,xmax,ymax]的影像D在第n层缓存格网中的切片数目Numn由下式计算获得,其中xtile=360.0/n为切片经度间隔,ytile=180.0/n为维度间隔;
Figure FDA00003281541400011
其中,xmin,ymin,xmax,ymax分别为影像D的最小经度范围,最小维度范围,最大经度范围和最大维度范围;
计算影像D建立M到N层缓存服务的切片总数为
Figure FDA00003281541400012
设影像D的Numtile记为D.Numtile,进一步计算分景数据集的切片总数目TotalNumtile{D}D.Numtile
步骤1.2,根据当前云环境中运行的拥有I个共享Job的队列Q和云环境中Map Slot的总数目TotalNummap,预估云环境中能够用的Map Slot数如下,
AvalNum map = TotalNum map - Σ i = 1 I Q . job i . Num map × ( 1 - α i ) ,
其中,Q.jobi.Nummap为Q中第i个Job的Map Slot需求数,αi为该Job的Map函数任务完成率;
Map Slot和Reduce Slot分别为Map和Reduce计算阶段中按预设计算资源配额而划分的计算单元;
步骤1.3,初始化分景数据集建立从第M层到第N层缓存过程的数据动态划分数Numpart为步骤1.2所得AvalNummap,设集群中单机环境下单个缓存切片平均串行生成时间为Ttile,进一步根据步骤1.1所得TotalNumtile获得单个Map函数初始执行时间预估值:Tmap=(TotalNumtile×Ttile)/Numpart
步骤1.4,设h为Map函数执行时间阈值,以Tmap≤h为循环满足条件,在步骤1.3中的Numpart初始化值的基础上,每次循环按照预设固定步长递减Numpart,并重新计算Tmap=(TotalNumtile×Ttile)/Numpart,直至循环结束;取最终Numpart为分景数据集划分数,设分景数据集中某景影像的数据量在分景数据集中所占比重为λ,该景影像的分块格网划分数为
Figure FDA00003281541400023
3.根据权利要求2所述云环境下海量时序遥感影像的自动缓存构建方法,其特征在于:设分景数据集中某景影像的分块格网的行列数比为numxpart/numypart,其在缓存格网中的行列数比为numx/numy,步骤2中所述数据最优划分规则为,
Num xpart Num ypart = Num x Num y .
4.根据权利要求3所述云环境下海量时序遥感影像的自动缓存构建方法,其特征在于:步骤3中包括以下子步骤,
步骤3.1,对每景图像的影像数据块,在上载至云环境前先建立Hilbert曲线排序,包括对每个影像数据块进行传感器编码及Hilbert编码,并作为影像数据块的Key值;
步骤3.2,遍历每个Rack中节点上的能够用的Map Slot,按照Key值顺序将影像数据块逐个上载至每个Map Slot中,所述Rack为机架。
5.根据权利要求1或2或3或4所述云环境下海量时序遥感影像的自动缓存构建方法,其特征在于:在步骤4,Map阶段对影像数据块的切片重采样过程中,若存在碎片,则仅对碎片范围内的数据执行重采样,并将多维切片信息输出到Reduce端,所述多维切片信息包括将碎片在切片范围内的左下角图像坐标,碎片的长宽值,以及碎片的JPEG压缩值一并存入字节数组作为Value值,将“碎片类型-传感器编码-缓存格网编码-时间编码”作为切片Key值;Reduce阶段根据同一切片Key值对碎片数据执行合并;在Map和Reduce间增加一个Combine阶段过滤本地合并结果,Combine表示合并;在每个阶段的数据库输出中,当多个结果填满缓存时,才执行数据库批量写入。
CN201310211886.XA 2013-05-31 2013-05-31 一种云环境下海量时序遥感影像的自动缓存构建方法 Expired - Fee Related CN103281376B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310211886.XA CN103281376B (zh) 2013-05-31 2013-05-31 一种云环境下海量时序遥感影像的自动缓存构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310211886.XA CN103281376B (zh) 2013-05-31 2013-05-31 一种云环境下海量时序遥感影像的自动缓存构建方法

Publications (2)

Publication Number Publication Date
CN103281376A true CN103281376A (zh) 2013-09-04
CN103281376B CN103281376B (zh) 2015-11-11

Family

ID=49063821

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310211886.XA Expired - Fee Related CN103281376B (zh) 2013-05-31 2013-05-31 一种云环境下海量时序遥感影像的自动缓存构建方法

Country Status (1)

Country Link
CN (1) CN103281376B (zh)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103927794A (zh) * 2014-05-06 2014-07-16 航天科技控股集团股份有限公司 汽车行驶记录仪行车记录快速存储及检索系统与方法
CN104091301A (zh) * 2014-06-30 2014-10-08 江苏华大天益电力科技有限公司 一种基于MapReduce的瓦片金字塔并行构建方法
CN105069149A (zh) * 2015-08-24 2015-11-18 电子科技大学 一种面向结构化列式数据的分布式并行数据导入方法
CN105335219A (zh) * 2014-07-08 2016-02-17 阿里巴巴集团控股有限公司 一种基于分布式的任务调度方法及系统
CN105511974A (zh) * 2015-11-24 2016-04-20 武汉大学 分布式环境下面向服务质量评价的OSGi容错策略
CN106250473A (zh) * 2016-07-29 2016-12-21 江苏物联网研究发展中心 遥感影像云存储方法
CN106575296A (zh) * 2014-06-20 2017-04-19 亚马逊技术股份有限公司 用于托管的分析的动态n维立方体
CN107197217A (zh) * 2017-04-19 2017-09-22 西安空间无线电技术研究所 一种星上高帧频图像数据实时切片传输方法
CN107423431A (zh) * 2017-08-03 2017-12-01 东北林业大学 一种基于分布式文件系统的遥感数据存储方法及系统
CN108536829A (zh) * 2018-04-11 2018-09-14 中国中医科学院中药研究所 一种提高无人机航测数据生成瓦片地图效率的方法
CN109471893A (zh) * 2018-10-24 2019-03-15 上海连尚网络科技有限公司 网络数据的查询方法、设备及计算机可读存储介质
CN109783665A (zh) * 2018-12-29 2019-05-21 武汉大学 基于Google S2实现Hbase数据库遥感大数据入库模型的设计方法
CN110083446A (zh) * 2019-04-23 2019-08-02 北京吉威时代软件股份有限公司 一种gpu并行与零io模式下遥感影像实时处理方法及系统
US10430438B2 (en) 2014-06-20 2019-10-01 Amazon Technologies, Inc. Dynamic n-dimensional cubes for hosted analytics
CN110347499A (zh) * 2019-06-13 2019-10-18 武汉大学 一种遥感影像瓦片生成及实时部署的方法
CN110427448A (zh) * 2019-08-05 2019-11-08 山东省国土测绘院 影像缓存处理方法、装置、计算设备及可读取存储介质
US10769175B1 (en) 2014-06-20 2020-09-08 Amazon Technologies, Inc. Real-time hosted system analytics
CN112558869A (zh) * 2020-12-11 2021-03-26 北京航天世景信息技术有限公司 基于大数据遥感影像缓存方法
CN113706556A (zh) * 2021-08-20 2021-11-26 珠江水利委员会珠江水利科学研究院 一种影像切片边缘碎片快速探测与替换方法
CN114064286A (zh) * 2021-11-19 2022-02-18 北京太琦图形科技有限公司 用于处理非结构化网格数据的方法、装置、设备和介质
CN114168610A (zh) * 2022-02-08 2022-03-11 深圳华强电子交易网络有限公司 一种基于线序划分的分布式存储和查询方法及系统
US11868372B1 (en) 2014-06-20 2024-01-09 Amazon Technologies, Inc. Automated hierarchy detection for cloud-based analytics
CN117763700A (zh) * 2024-02-21 2024-03-26 济南神经网络科技有限公司 一种城市区域高斯投影遥感影像加载方法及系统
CN117762646A (zh) * 2024-02-22 2024-03-26 南瑞轨道交通技术有限公司 一种基于集群式共享缓存的数字量处理方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646121A (zh) * 2012-02-23 2012-08-22 武汉大学 结合RDBMS和Hadoop云存储的两级存储方法
CN102904944A (zh) * 2012-09-29 2013-01-30 广东中科遥感技术有限公司 一种遥感数据远程云处理系统及方法
CN103092775A (zh) * 2013-01-31 2013-05-08 武汉大学 一种基于键值结构的空间数据双缓存方法及机制

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646121A (zh) * 2012-02-23 2012-08-22 武汉大学 结合RDBMS和Hadoop云存储的两级存储方法
CN102904944A (zh) * 2012-09-29 2013-01-30 广东中科遥感技术有限公司 一种遥感数据远程云处理系统及方法
CN103092775A (zh) * 2013-01-31 2013-05-08 武汉大学 一种基于键值结构的空间数据双缓存方法及机制

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
刘义 等: "利用MapReduce进行批量遥感影像瓦片金字塔构建", 《武汉大学学报(信息科学版)》 *
李继园 等: "云环境下时序遥感影像的快速缓存切片方法", 《武汉大学学报(信息科学版) 》 *
李继园 等: "水利遥感数据共享平台的高性能运行机制研究", 《水利信息化》 *

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103927794B (zh) * 2014-05-06 2016-03-02 航天科技控股集团股份有限公司 汽车行驶记录仪行车记录快速存储及检索系统与方法
CN103927794A (zh) * 2014-05-06 2014-07-16 航天科技控股集团股份有限公司 汽车行驶记录仪行车记录快速存储及检索系统与方法
US10430438B2 (en) 2014-06-20 2019-10-01 Amazon Technologies, Inc. Dynamic n-dimensional cubes for hosted analytics
US10812551B1 (en) 2014-06-20 2020-10-20 Amazon Technologies, Inc. Dynamic detection of data correlations based on realtime data
US10776397B2 (en) 2014-06-20 2020-09-15 Amazon Technologies, Inc. Data interest estimation for n-dimensional cube computations
US10769175B1 (en) 2014-06-20 2020-09-08 Amazon Technologies, Inc. Real-time hosted system analytics
CN106575296A (zh) * 2014-06-20 2017-04-19 亚马逊技术股份有限公司 用于托管的分析的动态n维立方体
CN106575296B (zh) * 2014-06-20 2020-04-03 亚马逊技术股份有限公司 用于托管的分析的动态n维立方体
US11868372B1 (en) 2014-06-20 2024-01-09 Amazon Technologies, Inc. Automated hierarchy detection for cloud-based analytics
CN104091301A (zh) * 2014-06-30 2014-10-08 江苏华大天益电力科技有限公司 一种基于MapReduce的瓦片金字塔并行构建方法
CN105335219A (zh) * 2014-07-08 2016-02-17 阿里巴巴集团控股有限公司 一种基于分布式的任务调度方法及系统
CN105069149B (zh) * 2015-08-24 2019-03-12 电子科技大学 一种面向结构化列式数据的分布式并行数据导入方法
CN105069149A (zh) * 2015-08-24 2015-11-18 电子科技大学 一种面向结构化列式数据的分布式并行数据导入方法
CN105511974B (zh) * 2015-11-24 2018-05-11 武汉大学 分布式环境下面向服务质量评价的OSGi容错方法
CN105511974A (zh) * 2015-11-24 2016-04-20 武汉大学 分布式环境下面向服务质量评价的OSGi容错策略
CN106250473A (zh) * 2016-07-29 2016-12-21 江苏物联网研究发展中心 遥感影像云存储方法
CN106250473B (zh) * 2016-07-29 2019-11-12 江苏物联网研究发展中心 遥感影像云存储方法
CN107197217A (zh) * 2017-04-19 2017-09-22 西安空间无线电技术研究所 一种星上高帧频图像数据实时切片传输方法
CN107423431A (zh) * 2017-08-03 2017-12-01 东北林业大学 一种基于分布式文件系统的遥感数据存储方法及系统
CN108536829A (zh) * 2018-04-11 2018-09-14 中国中医科学院中药研究所 一种提高无人机航测数据生成瓦片地图效率的方法
CN108536829B (zh) * 2018-04-11 2019-04-26 中国中医科学院中药研究所 一种提高无人机航测数据生成瓦片地图效率的方法
CN109471893A (zh) * 2018-10-24 2019-03-15 上海连尚网络科技有限公司 网络数据的查询方法、设备及计算机可读存储介质
CN109783665B (zh) * 2018-12-29 2022-10-14 武汉大学 基于Google S2实现Hbase数据库遥感大数据入库模型的设计方法
CN109783665A (zh) * 2018-12-29 2019-05-21 武汉大学 基于Google S2实现Hbase数据库遥感大数据入库模型的设计方法
CN110083446A (zh) * 2019-04-23 2019-08-02 北京吉威时代软件股份有限公司 一种gpu并行与零io模式下遥感影像实时处理方法及系统
CN110347499A (zh) * 2019-06-13 2019-10-18 武汉大学 一种遥感影像瓦片生成及实时部署的方法
CN110347499B (zh) * 2019-06-13 2021-04-16 武汉大学 一种遥感影像瓦片生成及实时部署的方法
CN110427448A (zh) * 2019-08-05 2019-11-08 山东省国土测绘院 影像缓存处理方法、装置、计算设备及可读取存储介质
CN112558869A (zh) * 2020-12-11 2021-03-26 北京航天世景信息技术有限公司 基于大数据遥感影像缓存方法
CN113706556A (zh) * 2021-08-20 2021-11-26 珠江水利委员会珠江水利科学研究院 一种影像切片边缘碎片快速探测与替换方法
CN113706556B (zh) * 2021-08-20 2022-06-10 珠江水利委员会珠江水利科学研究院 一种影像切片边缘碎片快速探测与替换方法
CN114064286A (zh) * 2021-11-19 2022-02-18 北京太琦图形科技有限公司 用于处理非结构化网格数据的方法、装置、设备和介质
CN114064286B (zh) * 2021-11-19 2022-08-05 北京太琦图形科技有限公司 用于处理非结构化网格数据的方法、装置、设备和介质
CN114168610A (zh) * 2022-02-08 2022-03-11 深圳华强电子交易网络有限公司 一种基于线序划分的分布式存储和查询方法及系统
CN117763700A (zh) * 2024-02-21 2024-03-26 济南神经网络科技有限公司 一种城市区域高斯投影遥感影像加载方法及系统
CN117763700B (zh) * 2024-02-21 2024-04-30 济南神经网络科技有限公司 一种城市区域高斯投影遥感影像加载方法及系统
CN117762646A (zh) * 2024-02-22 2024-03-26 南瑞轨道交通技术有限公司 一种基于集群式共享缓存的数字量处理方法和系统
CN117762646B (zh) * 2024-02-22 2024-05-14 南瑞轨道交通技术有限公司 一种基于集群式共享缓存的数字量处理方法和系统

Also Published As

Publication number Publication date
CN103281376B (zh) 2015-11-11

Similar Documents

Publication Publication Date Title
CN103281376B (zh) 一种云环境下海量时序遥感影像的自动缓存构建方法
CN108563808B (zh) 基于fpga的异构可重构图计算加速器系统的设计方法
CN106709067B (zh) 一种基于Oracle数据库的多源异构空间数据流转方法
US9275131B2 (en) Data indexing system, data indexing method and data querying method
CN104657436A (zh) 基于MapReduce的静态瓦片金字塔并行构建方法
CN106909644B (zh) 一种面向海量遥感影像的多级组织和索引方法
CN105550977B (zh) 一种并行方式栅格影像切片方法
WO2020107433A1 (en) System and method for determining whether object belongs to target geo-fence
CN113626550B (zh) 基于三元组双向索引与优化缓存的影像瓦片地图服务方法
CA2854874A1 (en) Method and server for searching for nearby user in social networking services
CN104091301A (zh) 一种基于MapReduce的瓦片金字塔并行构建方法
CN103577602A (zh) 一种二次聚类方法及系统
CN103744999A (zh) 基于层次划分存储结构的空间矢量数据在线交互制图方法
Zhang Speeding up large-scale geospatial polygon rasterization on GPGPUs
CN103268342A (zh) 基于cuda的dem动态可视化加速系统和方法
Jhummarwala et al. Parallel and distributed GIS for processing geo-data: an overview
Azri et al. Review of spatial indexing techniques for large urban data management
Ma et al. HiVision: Rapid visualization of large-scale spatial vector data
CN105138607A (zh) 一种基于混合粒度分布式内存网格索引的knn查询方法
Jiang et al. MOIST: A scalable and parallel moving object indexer with school tracking
Li et al. An improved distributed storage model of remote sensing images based on the HDFS and pyramid structure
CN101436204A (zh) 一种基于并行元胞自动机的城市演变模拟实现方法
Mitra et al. Alleviating resource requirements for spatial deep learning workloads
CN115689886A (zh) 一种分幅影像的分布式切片方法及分布式切片装置
CN110765130A (zh) 一种分布式环境下基于Ripley’s K函数的时空POI数据点模式分析方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151111

Termination date: 20210531