简单了解阿里云批量计算(上篇)

来源:互联网 发布:反美颜软件有可能 编辑:程序博客网 时间:2024/06/05 01:03

什么是批量计算

批量计算(BatchCompute)是一种适用于大规模并行批处理作业的分布式云服务。BatchCompute可支持海量作业并发规模,系统自动完成资源管理、作业调度和数据加载,并按实际使用量计费。

通俗的讲,就是您提交一个程序(任意的计算机程序),让它在阿里云机房中的多台机器上同时运行,然后把结果写入到指定的位置(OSS,阿里云对象存储服务),您可以去指定位置查看结果。



关于阿里云批量计算的详细内容:

阿里云批量计算使用教程

(批量计算(BatchCompute)是一种适用于大规模并行批处理作业的分布式云服务。BatchCompute可支持海量作业并发规模,系统自动完成资源管理,作业调度和数据加载,并按实际使用量计费。BatchCompute广泛应用于电影动画渲染、生物数据分析、多媒体转码、金融保险分析、科学计算等领域。)


产品架构

BatchCompute整体架构,包括:

  • BatchCompute入口


  • 批量计算服务提供基于HTTP的API。在API之上还封装了一些工具,比如SDK,命令行工具,控制台等。


  • 您可以使用这些工具向BatchCompute提交作业,查询作业运行状态,并管理作业生命周期(比如停止已提交的作业,释放已完成的作业等)。


  • 运行环境


BatchCompute通过虚拟化技术构建沙箱,并在其中运行用户程序,确保用户环境和用户数据的安全性。您可以自行定制其虚拟机镜像。

  • OSS持久化存储


  • OSS 有完善的用户管理和安全机制。


  • BatchCompute使用 OSS 作为持久化存储。


  • 用户的程序、自定义Docker镜像、输入输出数据都存储在 OSS 中。




名词解释

作业

用户的每个特定的计算需求在BatchCompute中被描述为一个作业(Job)。在BatchCompute系统中,用户可以通过BatchCompute管理控制台或SDK提交、管理和查询作业。

任务

一个作业由一组任务(Task)及其依赖关系组成。批量计算支持能以有向无环图(directed acycline graph,DAG)形式描述的作业。任务间的依赖关系只能在作业提交时指定,提交完成后不能修改。

实例

每个任务可以有一个或多个执行实例(Instance)。同一任务的各个实例并行处理各自的输入数据。实例是BatchCompute调度与执行的最小单元,这些实例会动态的运行在后台分布式系统的各节点上。

集群

一系列的VM实例组在BatchCompute中被定义为一个集群(Cluster)。一个集群可以由多个实例组(Group)组成,一个组中的实例共享同样的实例类型定义(实例类型,CPU,Memory等),多个组之间共享镜像(Image)。

镜像

镜像(Image)是集群资源创建或者作业运行环境的模板。它是一个标准的或者自定义的ECS镜像,需要安装BatchCompute Agent,然后授权给BatchCompute服务使用。

Docker镜像

使用官方提供的ubuntu镜像(内置Docker容器支持),可以支持自定义Docker镜像。自定义Docker镜像像普通镜像一样,可以自己安装运行作业的各种程序。具体方法请看这里: 使用Docker





阿里云大学官网(阿里云大学 - 官方网站,云生态下的创新人才工场

原创粉丝点击