云技术在科学与企业中的应用及发展
1. 分布式工作流系统与数据处理流程
分布式工作流系统用于调度作业。当有作业可用时,会在特定时间段内将其分配给轮询节点。若节点在该时间段内完成作业,会向调度器告知成功;否则,作业超时并自动分配给其他节点。这里采用了两种超时机制:
- 生命周期超时 :节点完成作业的总时长,范围从几秒到几小时不等。但仅依靠生命周期超时,可能要等到整个工作流超时(可能长达数小时)才能检测到失败节点。
- 心跳超时 :节点在当前处理的每个工作流上发送心跳信号,能快速检测到未处理的工作流,以便重新调度。这两种超时机制在SWF中是原生支持的。
轮询方法还有一个关键优势,它能以简洁优雅的方式通过异构节点扩展或缩减计算能力。需要更多计算能力时,开启更多轮询队列的节点;关闭节点时,它们停止轮询。这种方式能协同利用内部基础设施和多个云提供商的基础设施,最大化处理管道的吞吐量。
数据摄取后,会存储在JPL防火墙后的本地机器上。为利用云端任务可用的计算能力且不打开防火墙漏洞,数据会安全上传到云服务器可访问的位置。当数据在本地文件系统中可用时,会通过优化通道上传到亚马逊S3存储桶以最大化吞吐量。数据上传到S3后,JPL的节点、亚马逊多个数据中心的节点或其他云提供商都能访问。节点收到作业后,从S3拉取数据、处理数据并将结果上传回S3。工作流最后从S3检索结果并放回JPL的本地文件系统。
下面是数据处理流程的mermaid流程图:
graph LR
A[数据摄取] --> B[本地
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



