留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

科学工作流支持的复杂地理计算流程处理

熊伟 资文杰 曹竞之

熊伟, 资文杰, 曹竞之. 科学工作流支持的复杂地理计算流程处理[J]. 武汉大学学报 ● 信息科学版, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209
引用本文: 熊伟, 资文杰, 曹竞之. 科学工作流支持的复杂地理计算流程处理[J]. 武汉大学学报 ● 信息科学版, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209
XIONG Wei, ZI Wenjie, CAO Jingzhi. Complicated Geospatial Flow Processing with Scientific Workflow[J]. Geomatics and Information Science of Wuhan University, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209
Citation: XIONG Wei, ZI Wenjie, CAO Jingzhi. Complicated Geospatial Flow Processing with Scientific Workflow[J]. Geomatics and Information Science of Wuhan University, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209

科学工作流支持的复杂地理计算流程处理

doi: 10.13203/j.whugis20200209
基金项目: 

国家自然科学基金 41871284

国家自然科学基金 41971362

国家自然科学基金 U19A2058

湖南省自然科学基金 2019JJ50718

详细信息
    作者简介:

    熊伟,博士,副教授,主要从事空间数据库和高性能地理计算理论与方法研究。xiongwei@nudt.edu.cn

  • 中图分类号: P208

Complicated Geospatial Flow Processing with Scientific Workflow

Funds: 

The National Natural Science Foundation of China 41871284

The National Natural Science Foundation of China 41971362

The National Natural Science Foundation of China U19A2058

the Natural Science Foundation of Hunan Province 2019JJ50718

More Information
    Author Bio:

    XIONG Wei, PhD, associate professor, specializes in the theories and methods of spatial database and high-performancegeo-computation. E-mail: xiongwei@nudt.edu.cn

  • 摘要: 将地理计算任务以及地理时空数据资源按照特定的业务逻辑组合起来,可以满足用户针对特定领域复杂地理问题的处理需求。传统地理计算流程构建后如果有复杂的迭代情况,仍然需要人工参与。科学工作流支持自动化流程管理方法来辅助地理学家进行地理计算和发现。提出了科学工作流支持的复杂地理计算流程处理方法,能够对复杂应用程序及各程序间的数据依赖关系进行组合,并控制各部分在时间、空间以及资源等约束条件下按序完成,实现地理时空数据进行查找、移动、分析、处理及可视化等操作。
  • 图  1  高性能环境下复杂地理计算流程生命周期

    Figure  1.  Complicated Geo-computation Flow Life Cycle in the High-Performance Computing Environment

    图  2  高性能地理计算流程处理系统结构和功能

    Figure  2.  Architecture and Function of High-Performance Geo-computation Flow Process

    图  3  Swift系统架构

    Figure  3.  Architecture of Swift

    图  4  住房选址地理计算流程

    Figure  4.  Flowchart of Houses Location Selection

    图  5  地理计算流程执行情况

    Figure  5.  Execution of Geo-computation Flow

    图  6  住房选址计算结果可视化

    Figure  6.  Visualization of Housing Location Selection

    表  1  科学工作流系统对比分析

    Table  1.   Comparison Analysis of Scientific Flow System

    开源
    系统
    流程建模 资源调度 容错 应用领域
    建模能力 组合方法 组合
    对象
    资源类型 调度方式
    顺序 并行 分支 循环 模型验证 文本编辑 图编辑 语义推理 应用程序 服务 单机 集群 网格 静态-自定义 静态-模拟 动态-预测 动态-运行时 系统级 流程级 任务级
    DAGMan + + + + + + + + + + + 通用型
    Pegasus + + + + + + + + + + + + + 宇航学、高能物理、地震科学
    Triana + + + + + + + + + + 信号、文本与图像
    Taverna + + + + + + + + 生物、生物信息
    Karajan + + + + + + + + + 通用型
    Swift + + + + + + + + + + + + + + + + 高能物理
    Kepler + + + + + + + + + + + 通用型
    Gene Pattern + + + + + + 生物、生物信息
    注:+表示系统支持该功能
    下载: 导出CSV
  • [1] Huang F, Tie B, Tao J, et al. Methodology and Optimization for Implementing Cluster-Based Parallel Geospatial Algorithms with a Case Study[J]. Cluster Computing, 2019, 23(2): 1-32 doi:  10.1007/s10586-019-02944-y
    [2] Liu J, Pacitti E, Valduriez P, et al. A Survey of Data-Intensive Scientific Workflow Management[J]. Journal of Grid Computing, 2015, 13(4): 457-493 doi:  10.1007/s10723-015-9329-8
    [3] 张卫民, 刘灿灿, 骆志刚.科学工作流技术研究综述[J].国防科技大学学报, 2011, 33(3):56-65 doi:  10.3969/j.issn.1001-2486.2011.03.013

    Zhang Weimin, Liu Cancan, Luo Zhigang.A Review on Scientific Workflows[J].Journal of National University of Defense Technology, 2011, 33(3):56-65 doi:  10.3969/j.issn.1001-2486.2011.03.013
    [4] Sun C, Wang Z, Wang K, et al. Adaptive BPEL Service Compositions via Variability Management: A Methodology and Supporting Platform[J]. International Journal of Web Services Research, 2019, 16(1): 37-69 doi:  10.4018/IJWSR.2019010103
    [5] Oinn T, Greenwood M, Addis M, et al. Taverna: Lessons in Creating a Workflow Environment for the Life Sciences[J].Concurrency and Computation: Practice and Experience, 2006, 18(10): 1 067-1 100 doi:  10.1002/cpe.993
    [6] Taylor I, Shields M, Wang I, et al. Visual Grid Workflow in Triana[J].Journal of Grid Computing, 2005, 3(3-4): 153-169 doi:  10.1007/s10723-005-9007-3
    [7] Ludäscher B, Altintas I, Berkley C, et al. Scientific Workflow Management and the Kepler System[J]. Concurrency and Computation: Practice and Experience, 2006, 18(10): 1 039-1 065 doi:  10.1002/cpe.994
    [8] 柴胜, 周云轩.基于科学工作流的空间数据处理技术探讨[J].计算机工程与应用, 2007, 43(2): 187-189 doi:  10.3321/j.issn:1002-8331.2007.02.055

    Chai Sheng, Zhou Yunxuan. Survey of Geospatial Data Processing Technology Based on Scientific Workflow[J]. Computer Engineering and Application, 2007, 43(2):187-189 doi:  10.3321/j.issn:1002-8331.2007.02.055
    [9] Deelman E, Vahi K, Rynge M, et al. Pegasus in the Cloud: Science Automation Through Workflow Technologies[J]. IEEE Internet Computing, 2016, 20(1): 70-76 doi:  10.1109/MIC.2016.15
    [10] Kalayci S, Dasgupta G, Fong L, et al. Distributed and Adaptive Execution of Condor DAGMan Workflows[C]. The 22nd International Conference on Software Engineering and Knowledge Engineering, San Francisco Bay, USA, 2010
    [11] Reich M, Liefeld T, Gould J, et al.GenePattern 2.0[J]. Nature Genetics, 2006, 38(5): 500 doi:  10.1038/ng0506-500
    [12] Maitrey S, Jha C K.MapReduce:Simplified Data Analysis of Big Data[J].Procedia Computer Science, 2015, 57: 563-571 doi:  10.1016/j.procs.2015.07.392
    [13] 赵勇, 李有福, 李小龙, 等.科学工作流与高性能计算集成方案[J].电子科技大学学报, 2014, 43(3):457-463 doi:  10.3969/j.issn.1001-0548.2014.03.024

    Zhao Yong, Li Youfu, Li Xiaolong, et al. An Approach to Integrate Scientific Workflow with High Performance Computing[J]. Journal of University of Electronic Science and Technology of China, 2014, 43(3):457-463 doi:  10.3969/j.issn.1001-0548.2014.03.024
    [14] Liew C S, Atkinson M P, Galea M, et al. Scientific Workflows: Moving Across Paradigms[J]. ACM Computing Surveys (CSUR), 2017, 49(4): 66 http://dl.acm.org/citation.cfm?id=3012429
    [15] von Laszewski G, Hategan M, Kodeboyina D. Java CoG Kit Workflow[M]//Workflows for e-Science. London: Springer, 2007: 340-356
    [16] 张志敏, 张天桥, 益建芳.科学工作流及其在空间决策支持系统中的应用[J].东北测绘, 2002, 25(1):28-31, 37 doi:  10.3969/j.issn.1672-5867.2002.01.009

    Zhang Zhimin, Zhang Tianqiao, Yi Jianfang. Scientific Workflow and Its Application to Spatial Decision Support System[J]. Northeast Surveying and Mapping, 2002, 25(1):28-31, 37 doi:  10.3969/j.issn.1672-5867.2002.01.009
    [17] 万林, 谢忠, 吴信才.空间信息网格服务工作流模型及其应用[J].地球科学, 2013(S1):174-182 http://www.cnki.com.cn/Article/CJFDTotal-DQKX2013S1020.htm

    Wan Lin, Xie Zhong, Wu Xincai. Spatial Information Grid Service Workflow Model and Its Application[J]. Earth Science, 2013(S1):174-182 http://www.cnki.com.cn/Article/CJFDTotal-DQKX2013S1020.htm
    [18] 朱阿兴, 朱良君, 史亚星, 等.流域系统综合模拟与情景分析-自然地理综合研究的新范式?[J].地理科学进展, 2019, 38(8): 1 111-1 122 http://www.cqvip.com/QK/96015A/201908/7002843051.html

    Zhu Axing, Zhu Liangjun, Shi Yaxing, et al. Integrated Watershed Modeling and Scenario Analysis:A New Paradigm for Integrated Study of Physical Geography?[J].Progress in Geography, 2019, 38(8):1 111-1 122 http://www.cqvip.com/QK/96015A/201908/7002843051.html
    [19] Xiong W, Chen L. HiGIS: An Open Framework for High Performance Geographic Information System[J]. Advances in Electrical and Computer Engineering, 2015, 15(3): 123-133 doi:  10.4316/AECE.2015.03018
    [20] Moreau L, Zhao Y, Foster I, et al.XDTM: The XML Data Type and Mapping for Specifying Datasets[C].European Grid Conference, Berlin, Germany, 2005
    [21] Khan S, Shakil K A, Alam M. Cloud-Based Big Data Analytics-A Survey of Current Research and Future Directions[M]//Big Data Analytics. Singapore : Springer, 2018: 595-604
  • [1] 吴田军, 骆剑承, 赵馨, 李曼嘉, 张新, 董文, 郜丽静, 王玲玉, 杨颖频, 赵伟.  精准地理应用驱动的高分遥感协同计算研究 . 武汉大学学报 ● 信息科学版, 2022, 47(8): 1220-1235. doi: 10.13203/j.whugis20220335
    [2] 乐阳, 刘瑜, 陈云松, 贺力, 陈晨, 李文雯, 秦昆, 贾涛, 许刚, 王法辉, 王静远, 谢幸, 徐丰力, 徐阳, 苏世亮, 桂志鹏, 游兰, 张明达, 张丰, 张晓祥, 赵博, 赵耀龙, 周钰伦, 黄波, 曹凯.  空间和地理计算与计算社会学的融合路径 . 武汉大学学报 ● 信息科学版, 2022, 47(1): 1-18. doi: 10.13203/j.whugis20210619
    [3] 李志林, 王继成, 谭诗腾, 徐柱.  地理信息科学中尺度问题的30年研究现状 . 武汉大学学报 ● 信息科学版, 2018, 43(12): 2233-2242. doi: 10.13203/j.whugis20180303
    [4] 聂磊, 舒红, 刘艳.  复杂地形地区月平均气温(混合)地理加权回归克里格插值 . 武汉大学学报 ● 信息科学版, 2018, 43(10): 1553-1559. doi: 10.13203/j.whugis20160433
    [5] 张明达, 乐鹏, 高凡.  组件与服务耦合的地学模型集成方法与实现 . 武汉大学学报 ● 信息科学版, 2018, 43(7): 1106-1112. doi: 10.13203/j.whugis20160251
    [6] 赵肄江, 周晓光, 黄梦妮.  基于用户信誉的自发地理信息可信度计算模型 . 武汉大学学报 ● 信息科学版, 2016, 41(11): 1530-1536. doi: 10.13203/j.whugis20140726
    [7] 唐卫明, 金蕾, 徐坤.  北斗卫星信号实时单站电离层估计算法及性能分析 . 武汉大学学报 ● 信息科学版, 2014, 39(11): 1318-1322.
    [8] 李坚, 李德仁, 邵振峰.  一种并行计算的流数据Delaunay构网算法 . 武汉大学学报 ● 信息科学版, 2013, 38(7): 794-798.
    [9] 刘耀林, 王华, 唐旭, 刘中秋.  省级土地整治项目动态监管业务本体及工作流模型构建与实现 . 武汉大学学报 ● 信息科学版, 2013, 38(4): 493-497.
    [10] 侯妙乐, 邢华桥, 赵学胜, 陈军.  球面四元三角网的复杂拓扑关系计算 . 武汉大学学报 ● 信息科学版, 2012, 37(4): 468-471.
    [11] 舒红, 齐翠红.  地理信息时态不确定性的语义与计算 . 武汉大学学报 ● 信息科学版, 2007, 32(7): 633-636.
    [12] 蔡志武, 赵东明.  UKF滤波器性能分析及其在轨道计算中的仿真试验 . 武汉大学学报 ● 信息科学版, 2006, 31(2): 180-183.
    [13] 贾文珏, 李斌, 龚健雅.  基于工作流技术的动态GIS服务链研究 . 武汉大学学报 ● 信息科学版, 2005, 30(11): 982-985.
    [14] 纪晓东, 边馥苓.  工作流理论中系统需求模型及其形式化描述 . 武汉大学学报 ● 信息科学版, 2005, 30(3): 230-233.
    [15] 范延平, 曾建鹰.  基于J2EE架构的工作流引擎的分析与设计 . 武汉大学学报 ● 信息科学版, 2005, 30(12): 1107-1110.
    [16] 熊庆文.  面向数字化测绘生产工作流的Web存储系统 . 武汉大学学报 ● 信息科学版, 2004, 29(2): 111-115.
    [17] 张雪松, 边馥苓.  基于工作流的协同空间决策支持系统的研究 . 武汉大学学报 ● 信息科学版, 2004, 29(10): 877-880.
    [18] 王华敏, 边馥苓.  基于微工作流的可扩展GIS模型研究 . 武汉大学学报 ● 信息科学版, 2004, 29(2): 127-131.
    [19] 喻占武, 黄晓杰, 贾佳, 范励.  适用于H.264的高性能快速运动估计算法 . 武汉大学学报 ● 信息科学版, 2004, 29(5): 466-469. doi: 10.13203/j.whugis2004.05.020
    [20] 陈俊勇.  中国大地测量的数据处理要科学界定潮汐改正计算 . 武汉大学学报 ● 信息科学版, 2003, 28(6): 633-635.
  • 加载中
图(6) / 表(1)
计量
  • 文章访问数:  519
  • HTML全文浏览量:  194
  • PDF下载量:  53
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-04-07
  • 刊出日期:  2020-12-05

科学工作流支持的复杂地理计算流程处理

doi: 10.13203/j.whugis20200209
    基金项目:

    国家自然科学基金 41871284

    国家自然科学基金 41971362

    国家自然科学基金 U19A2058

    湖南省自然科学基金 2019JJ50718

    作者简介:

    熊伟,博士,副教授,主要从事空间数据库和高性能地理计算理论与方法研究。xiongwei@nudt.edu.cn

  • 中图分类号: P208

摘要: 将地理计算任务以及地理时空数据资源按照特定的业务逻辑组合起来,可以满足用户针对特定领域复杂地理问题的处理需求。传统地理计算流程构建后如果有复杂的迭代情况,仍然需要人工参与。科学工作流支持自动化流程管理方法来辅助地理学家进行地理计算和发现。提出了科学工作流支持的复杂地理计算流程处理方法,能够对复杂应用程序及各程序间的数据依赖关系进行组合,并控制各部分在时间、空间以及资源等约束条件下按序完成,实现地理时空数据进行查找、移动、分析、处理及可视化等操作。

English Abstract

熊伟, 资文杰, 曹竞之. 科学工作流支持的复杂地理计算流程处理[J]. 武汉大学学报 ● 信息科学版, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209
引用本文: 熊伟, 资文杰, 曹竞之. 科学工作流支持的复杂地理计算流程处理[J]. 武汉大学学报 ● 信息科学版, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209
XIONG Wei, ZI Wenjie, CAO Jingzhi. Complicated Geospatial Flow Processing with Scientific Workflow[J]. Geomatics and Information Science of Wuhan University, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209
Citation: XIONG Wei, ZI Wenjie, CAO Jingzhi. Complicated Geospatial Flow Processing with Scientific Workflow[J]. Geomatics and Information Science of Wuhan University, 2020, 45(12): 1903-1909. doi: 10.13203/j.whugis20200209
  • 地理计算是借助计算科学并利用丰富的地理空间数据对复杂地理问题进行求解的过程[1],是地理信息科学中重要的高级计算模式,包含数据处理、空间分析、过程模拟等多种类型的操作。得益于绘图设备和绘制手段的不断提高和改进,地理学家们可获得的地理时空数据呈指数级增长,而高性能计算(high performance computing,HPC)能力的突飞猛进也使得地理学家们可以支配和使用的计算能力越来越强大,数据存储能力和共享程度越来越高,同时对这些海量数据进行分析和处理的应用程序也越来越复杂。传统的地理信息系统(geographic information system,GIS)工具主要是为了在单工作节点上执行连续的地理算法而设计,并不能有效处理海量数据以及复杂的地理计算,尤其在海量空间数据高效处理与分析、过程模拟与空间决策支持等方面存在着技术瓶颈。基于新型硬件架构的高性能复杂地理计算成为新型GIS发展的核心技术,是新一代GIS不可缺少的组成部分。

    为了满足用户针对特定领域复杂问题的处理需求,通常需要用到多个具有专门功能的地理计算算法和工具对地理时空数据进行查找、移动、分析、处理及可视化等操作,在实现层面需要将多个地理计算任务以及地理时空数据资源按照特定的业务逻辑组合起来,形成满足该处理需求的地理计算流程。随着地理计算问题的日益复杂和计算规模的不断扩大,目前已经很难通过手工对复杂地理计算流程进行控制,因此亟需一种自动化流程管理方法来辅助地理学家进行地理计算和发现。科学工作流管理系统[2-3](scientific workflow management systems,SWfMS)正是在这种背景下成为辅助地理学家进行复杂地理计算的必要工具。作为一种辅助科学家进行科学实验的手段,科学工作流管理系统能够对复杂应用程序及各程序间的数据依赖关系进行组合,并控制各部分在时间、空间以及资源等约束条件下按序完成。

    BPEL[4]、Taverna[5]、Triana[6]以及Kepler[7]等科学工作流系统主要用于解决分布式环境下Web服务调用的协同,也有研究基于Kepler进行空间数据处理[8]。Pegasus[9]和DAGMan[10]支持网格环境下的大规模计算调度,DAGMan提供了一种工作流引擎来管理有向无环图形式的Condor任务,缺少对条件分支和迭代的建模支持。Pegasus本质上是一套DAG转换器,能够将工作流图转换为一种DAGMan输入支持的文件格式。GenePattern[11]聚焦应用程序的组合,采用的是图形编程方法,但缺少对大规模并行处理的支持。Google的MapReduce[12]也用于对大规模数据的分析,但仅支持键值对数据,且运行环境必须是Google文件系统。Swift[13]起源于GriPhyN虚拟数据系统(virtual data system,VDS)[14],最初用于辅助高能物理实验的大规模数据分析,通过XDTM(XML dataset typing & mapping)支持不同文件系统上的异构数据格式,使用CoG Karajan[15]的库实现任务调度、数据迁移和网格任务提交,并增加了对并行计算抽象描述、数据抽象、工作流重启以及在多站点可靠执行等功能。

    • 复杂地理计算流程管理的生命周期分为以下4个阶段(见图 1):①地理计算流程建模,本阶段对地理计算算法按照应用需求进行组合,形成抽象的流程描述;②流程调度,本阶段将建模阶段得到的流程模型进行解析,并将地理计算任务调度到具体资源得到可执行流程;③任务执行,本阶段根据流程解析和调度阶段的结果,把地理计算任务分配给对应的计算资源上执行,并监控其执行过程;④元数据捕获,本阶段在以上阶段中记录元数据及数据的来源信息,包括流程建模过程中相关组件的元数据提取与记录、执行阶段中与计算资源和计算环境相关的实时信息及数据的来源信息等。

      图  1  高性能环境下复杂地理计算流程生命周期

      Figure 1.  Complicated Geo-computation Flow Life Cycle in the High-Performance Computing Environment

    • 地理计算是借助计算科学并利用丰富的地理空间数据求解复杂地理问题的过程,是地理信息科学的核心内容,重点研究地理信息科学的方法学问题,包含数据处理、空间分析、过程模拟等多种类型的操作。得益于测绘手段的不断提高和改进,可获得的地理时空数据呈指数级增长,而高性能计算能力的突飞猛进也极大提高了计算机的计算能力以及海量数据存储能力和共享程度。同时,分析和处理这些海量数据的应用程序也更加复杂。传统的地理信息系统工具设计思想主要是在单工作节点上执行地理算法,其缺点是不能有效处理海量数据以及不支持复杂的地理计算。尤其是随着海量空间数据在地理计算中的应用,传统的地理信息系统工具在海量空间数据的高效处理与分析、过程模拟与空间决策支持等方面存在技术瓶颈[16]。而基于科学工作流的高性能复杂地理计算成为新型GIS发展的核心技术,是新一代GIS不可缺少的组成部分[17]

      高性能环境下复杂地理计算流程管理系统结构和功能如图 2所示。地理计算流程管理主要分为流程定义和驱动引擎两大功能模块。在流程定义过程中,地理学家通过流程定义工具从地理时空数据库、地理计算算法库或地理计算模型库中获取建模所需的数据、算法和模型,按照地理计算的需要进行流程组合并形成抽象的地理计算流程描述。在流程定义完之后,系统将地理计算流程及地理学家定义的约束一起发送到地理计算流程引擎,引擎对抽象流程进行验证、解析、调度、执行和监控。同时,在地理计算流程定义和执行过程中,需要对时空数据、计算算法、计算资源、计算环境的元数据和来源信息进行捕获和记录。另外,地理计算运行在高性能环境下,由于各种资源与生俱来的分布性、动态性和脆弱性,系统的容错和安全也是重要的功能。

      图  2  高性能地理计算流程处理系统结构和功能

      Figure 2.  Architecture and Function of High-Performance Geo-computation Flow Process

      以典型流域系统综合模拟为例[10],需进行数据预处理、模型参数率定、模型运行、情景分析和优化4个主要阶段。数据预处理包括数据类型转换、数据尺度转换、数字地形分析等处理过程;常用的SWAT 2000模型含701个方程、1 013个变量,包含水文、泥沙和营养物迁移等复杂多过程交互。模型运行是一个十分耗时的过程,模拟结果的动态展示需要地理信息可视化,并通过空间单元相互作用进行优化。因此,整个分析过程的完成都需要高性能计算和调度的支撑。

    • 作为一种辅助手段,科学工作流管理系统对复杂应用程序及各程序间的数据依赖关系进行组合,并控制各部分在时间、空间以及资源等约束条件下按序完成。国外多个实验室在大型科研项目中分别开发了面向各自研究领域的科学工作流管理系统[3]。这些系统侧重点和具体实现各不相同,各系统间尚无统一标准且互操作也比较困难,它们在流程建模、资源调度、容错和应用领域上的比较见表 1,其中“+”表示系统支持该功能。

      表 1  科学工作流系统对比分析

      Table 1.  Comparison Analysis of Scientific Flow System

      开源
      系统
      流程建模 资源调度 容错 应用领域
      建模能力 组合方法 组合
      对象
      资源类型 调度方式
      顺序 并行 分支 循环 模型验证 文本编辑 图编辑 语义推理 应用程序 服务 单机 集群 网格 静态-自定义 静态-模拟 动态-预测 动态-运行时 系统级 流程级 任务级
      DAGMan + + + + + + + + + + + 通用型
      Pegasus + + + + + + + + + + + + + 宇航学、高能物理、地震科学
      Triana + + + + + + + + + + 信号、文本与图像
      Taverna + + + + + + + + 生物、生物信息
      Karajan + + + + + + + + + 通用型
      Swift + + + + + + + + + + + + + + + + 高能物理
      Kepler + + + + + + + + + + + 通用型
      Gene Pattern + + + + + + 生物、生物信息
      注:+表示系统支持该功能

      Swift的工作原理可描述为:使用并行执行脚本语言SwiftScript定义流程,描述流程的SwiftScript脚本被脚本编译器编译成抽象的计算计划;该抽象计算计划由流程引擎Karajan驱动,对任务进行即时处理和分发;Falkon在Karajan的驱动下,根据资源配置将各计算任务调度给各种资源环境;流程中的各计算任务在分配的计算资源上并行执行。

      地理计算流程管理需要解决的核心问题即地理计算算法调用的组合(组合方式包括顺序、并行、条件和迭代循环等流程模式)和地理计算任务在分布式高性能计算资源上的透明执行。本文比较发现,Swift在流程结构、可调度资源类型和容错级别方面功能最完善,且能解决地理计算流程的核心问题:异构多源的数据访问;复杂计算的描述、发现及分析的重用;计算规模的可扩展;数据分析过程的交互与共享,故采用Swift作为地理计算流程管理系统实现的基础。如图 3所示,Swift由SwiftScript编译器、流程驱动引擎Karajan、资源供应管理器Falkon组成。

      图  3  Swift系统架构

      Figure 3.  Architecture of Swift

      1)SwiftScript是一种简单高效的、支持隐性数据并行执行的脚本语言,支持基于过程的结构化、层次化数据流建模,支持foreach、if、while等循环分支控制结构,支持基于XDTM的类型定义和类型验证。SwiftScript编译器负责SwiftScript脚本的解析,生成任务图形式的抽象计算计划,输出给流程引擎。

      2)轻量级的执行引擎Karajan负责进行流程调度和负载均衡,Karajan使用快速的、可扩展的线程模型技术对任务进行即时处理和分发,采用灵活的供应者模型支持多种运行环境,可以与PBS和Condor等资源管理系统进行交互。同时Karajan有很好的容错机制,支持基于检查点的容错机制,也支持用户定义的容错机制,如采取忽略、重运行、错误跟踪操作等,或提供独立的任务进行容错处理或动态检查错误处理等。

      3)Falkon负责监控资源需求,并管理资源供应,Swift提供了可以实现和各种资源管理器及任务调度器协作的Provider接口,目前已经实现的接口包括PBS、Condor、Globus Toolkit 4等,从而使流程系统能够便捷获取包括本地主机、集群、网格、云计算等在内的各种计算资源。

    • 通过住房选址地理计算问题分析并验证地理计算流程管理系统的功能。住房选址问题描述为:用户输入城市和选址筛选条件,GIS平台给出符合用户条件的地理区域显示。对该地理计算问题进行流程建模,模型如图 4所示。

      图  4  住房选址地理计算流程

      Figure 4.  Flowchart of Houses Location Selection

      输入数据为用户选址条件相关数据,流程步骤包括选址期望区域缓冲区分析、选址期望区域叠制分析、选址排除区域缓冲区分析、选址排除区域叠制分析、选址需求区域叠置分析以及选址需求区域模板制图,虚线箭头标识的是地理计算任务之间的数据产入产出。用户可输入若干选址期望条件(例如距离教育点300 m以内、距离某主干道200 m以内)和选址排除条件(例如铁路1 000 m以内的区域等)。接收用户选址输入条件后,流程调用地理计算缓冲区分析算法计算满足条件的缓冲区,因为用户可能输入多个条件,因此通过循环操作遍历用户所有选址期望条件,并通过迭代操作调用地理计算叠制分析算法求交操作得到所有期望区域的缓冲区叠加。同样,调用地理计算缓冲区分析算法计算用户排除区域的缓冲区,通过循环操作遍历用户所有选址排除条件,并通过迭代操作调用地理计算叠制分析算法求并操作得到所有排除区域的缓冲区叠加。之后,调用地理计算叠制分析算法求差操作得到用户选址需求区域。

    • 用SwiftScript描述上述住房选址地理计算流程的主要过程包括:①readData()读取期望和排除条件;②计算期望区域和排除区域;③调用mapMake生成制图结果。

      Swift脚本中的变量必须声明为一种特定类型,对该变量的赋值必须是这种类型的数据。Swift的本变量是单次赋值的,即一个变量最多被赋值一次,变量可以在声明的时候赋值,也可以在随后的执行过程中赋值。当程序试图读取还未被赋值的变量时,执行该读操作的代码被挂起,直到该变量赋值完成,上述规则形成了Swift并行执行的基础。默认情况下所有代码并行执行,除非代码之间共享变量,共享变量之间的代码形成顺序执行依赖关系。

    • 实验环境基于Linux集群环境搭建,具体配置为:管理/登录节点为IBM X3650M3,内存24 GB;I/O节点为IBM X3550M3,内存12 GB;计算节点为IBM Blade HS22,内存12 GB;共享文件系统为GPFS,2 TB;网络为Infiniband,高速40 GB QDR。软件配置如下:操作系统Redhat Enterprise Linux Server 6.5;编译器GCC 4.7.0;地理数据读取:GDAL 1.8.0;集群资源管理器:Torqu PBS 4.2;集群作业调度系统Maui 3.3.1;Java虚拟机JDK 8.0。

      图 5显示了住房选址地理计算问题在一个6处理器集群环境下的执行情况。图 5中柱状代表一个任务从开始到执行结束的时间,可看出不同执行阶段的不同并行程度。Job ID 1~6为图 4中步骤1和3的并行执行,Job ID 7~10为图 4中步骤2和4的并行执行。步骤5和6依赖前面的步骤,所以Job ID 11和12为串行执行。图 6为计算结果可视化结果,图 6(a)是输入的数据,包括长沙市学校分布点数据、道路和铁路线数据、河流和小区分布面数据;图 6(b)是经过符号化的计算结果,绿色部分为按照条件计算得到的小区结果。

      图  5  地理计算流程执行情况

      Figure 5.  Execution of Geo-computation Flow

      图  6  住房选址计算结果可视化

      Figure 6.  Visualization of Housing Location Selection

      总共执行时间为23 089 ms,相对于无流程管理系统环境下各计算任务串行执行时间的总和(35 887 ms),加速比为1.6,实验结果受输入数据集规模、Swift并发任务设置(此处设定1 000个并发线程)、集群规模(此处设为3个计算节点)、集群配置、集群资源管理策略以及集群的资源使用状态等因素影响。图 6同时显示在某些地方依然可以改进性能:同一执行阶段不同计算节点之间的负载均衡,不同处理步骤之间的切换加速等。实验系统已经集成到开放式高性能地理信息系统HiGIS[18-19]。用户不需要使用复杂的Swift脚本创建图 4中的工作流来进行分析,在HiGIS中实现了图形化的工作流创建工具,采用类似ArcGIS的ModelBuilder工具即可完成对服务器分析功能的调用,而所有计算任务调度均在服务器实现。

    • 科学工作流就是采用工作流的思想,用来描述和控制科学实验和过程的执行,它是面向e-Science,服务于科学家,更易于分析和管理科学数据。本文提出科学工作流支持的复杂地理计算处理,能够将逻辑/物理关注点清晰分离,采用统一的逻辑数据结构。同时,并行编程描述简洁,SwiftScript支持循环、迭代、条件等组成复杂的地理计算流程,并能高效地执行在分布式资源上。而流程的调度、流水线管理、聚合和资源分配都可以基于科学工作流系统实现。下一步将扩展XDTM,更好地对服务和应用进行支持,扩展对数据库的支持[20];考虑SwiftScript中的异常处理、事件驱动的调度和执行,将Falkon资源管理扩展到更多资源和数据缓存等[21]

参考文献 (21)

目录

    /

    返回文章
    返回