遥感影像领头羊GBDX流程引擎能力分析
1 什么是GBDX
美国数字地球公司(DigitalGlobe),是卫星遥感数据市场2家垄断级提供商之一(另一家是欧洲的AirBus空中客车)。其发射的WorldView-4号卫星,是当今(2020年)全球分辨率最高、反应最敏捷的商业成像卫星。
Geospatial Big Data platform (GBDX)是DigitalGlobe公司出品的,一个功能强大的地理空间数据大数据分析平台(X可以表示exchange,extend之意)。整体基于云架构模式,允许用户在GBDX上访问其全球高分辨率卫星影像动态库,从而提取各类有意义的洞察,例如地物识别、大规模变化检测等。
具体可以去官网了解详情:https://www.maxar.com/products/gbdx。
咱们主要分析他们的workflow流程引擎的能力,即大规模影像分析流程的能力。
2 Workflow流程引擎能力
遥感影像,好比是地球的自拍照。而自拍照嘛,总得各种美颜一下。比如照片是多张小幅的,你要拼成完整大图(图像镶嵌)。比如拍的歪的,需要调正角度(正射校准)。颜色有深有浅,得美化一下(匀光匀色)。
影像解译,除了原始照片的处理,还需要进行信息提取(extraction),然后做信息洞察(analytical insight)。
当需要处理的面积比较大的时候,就需要大量的计算单元进行业务处理,并按照workflow流程的顺序进行。
2.1 Docker容器
GBDX平台支持(并仅支持)使用Docker容器作为影像处理的独立单元。这还是比较贴近当前云原生发展大趋势的。Docker这种轻量级虚拟化技术,目前已席卷全球,为传统软件的安装部署带来了革命性的变革。
Docker容器使得应用程序可以在几乎任何地方以相同的方式运行。所以开发人员在开发机上创建并测试好容器后,无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。这使得业务处理逻辑不再绑定环境,不需要耗费大量的精力在环境维护上,也给遥感影像处理平台带来便捷灵活性。
2.2 流程顺序控制
Workflow就是一个流程,一般来说是一个DAG图。比如:
目前GBDX的流程语法描述如下:
所以当前GBDX仅支持流程按顺序执行,并不支持DAG依赖方式。相对而言,能力仅仅达到够用,不能说强大。
2.3 影像数据加载
容器里面的算法,就是用来处理各种影像数据的。而由于影像数据比较庞大(特别是高清影像)。如何将数据“加载”到容器里面,是一个需要解决问题。
GBDX通过定义了规则,来帮助用户拷贝数据到容器中的特定目录下。由于容器跑完就会销毁,所以上一步容器的输出结果,也会被拷贝到下一个容器的输入目录里面。
按理来说,这样的数据加载,在跨节点处理(集群规模较大时,跨节点是比较常见的)会有影响到处理性能。当前云原生模式下,一般都是把数据所在卷,通过共享的模式,直接挂载至容器中处理。
2.4 步骤是否成功的判断
如果是基于Kubernetes平台,一个容器执行是否成功的判断,是有云原生统一标准的。即执行进程退出码是否为0。 这GBDX自己定义了一种规范:用户需要将执行结果写入一个指定的文件。/mnt/work/status.json
这里对流程迁移,稍有耦合。即用户需要修改原来的脚本,来适配这种“规范”。
2.5 步骤间传递结果
如果上一步骤,需要有信息传递给下一步。GBDX也定义了一套规范:input目录和output目录。即要求用户将结果写入 output目录,然后GBDX会自动将上一步骤的output目录,拷贝至下一步骤的input目录。
2.6 并发处理
按理来说,在进行大规模遥感影像处理时,是要求有Docker容器的并发处理能力的。特别是基于可伸缩的云平台场景。但遗憾的是,GBDX并未提供Docker容器并发处理的能力。
2.7 处理超时控制
业务脚本有可能出现异常,需要有超时检测机制。GBDX支持设置每个步骤的超时时间:
不过不支持设置整个流程的超时时间。
2.8 流程结束通知。
通常,流程结束后,(无论成功or失败)需要通知用户,通过邮件、短信等。毕竟,有些流程一跑就是好几个小时,不可能一直等在旁边。这样方便用户了解业务进度。
GBDX也支持流程结束通知,但是并不是邮件or短信。 而是回调一个URL完事。
当然,这个也还算是比较通用。因为你可以在URL收到回调后,再次触发发送邮件之类的。
2.9 批量投递workflow任务
有时候,同样的处理流程,需要批量执行。比如拿到7天的数据,需要对每天的数据都进行同一个workflow处理。这时候,就可以选择批量投递处理任务。对客户来说是一个不错的便捷方式。GBDX就支持批量投递workflow流程。
3 总结
GBDX作为地理遥感领头羊DigitalGlobe出品的地理空间大数据分析平台,利用了Docker轻量级容器一次构建,随处可运行的优势,非常方便用户进行流程的开发&迁移。是一个与时俱进的产品。
在作为遥感影像处理的workflow流程引擎上,GBDX提供了大量优秀的能力,来辅助用户开发自己的workflow流程。
同时,我们也看到,GBDX在流程灵活性控制、并发处理、数据加载管理等方面依然存在不足。也是华为云地理遥感解决方案可以重点突破的地方。
- 点赞
- 收藏
- 关注作者
评论(0)