In Batch Compute, each specific computing need is described as a job. In the Batch Compute system, you can use the command line interface, console, or SDKs to submit, manage, and query jobs.
A job is composed of a group of tasks and their dependencies. Batch Compute supports jobs that can be described in the form of DAGs (directed acyclic graphs). The dependencies between tasks can only be specified when submitting a job and cannot be modified after submission.
Each task is run on one or more instances. When multiple instances concurrently process a single task, each has its own input data. An instance is the minimum unit for Batch Compute scheduling and execution. These instances dynamically run on virtual server nodes allocated by the system.
In Batch Compute, a group of virtual machine (VM) instances are defined as a cluster. A cluster can be composed of multiple instance groups, where the instances in a single group share the same instance type. For example, instances can be grouped according to CPU core count and memory size, with the same image shared among multiple groups. For more information on the use of clusters, see Cluster use.
An image is a template used to create cluster resources or job runtime environments. The image can be a standard or custom ECS image installed with the Batch Compute Agent and authorized for use by Batch Compute. For more information on the use of images, see Image use and Custom images.
Official Ubuntu images (with inherent Docker container support) can be used to create custom Docker images. Custom Docker images are basically the same as normal instances, but they allow you to manually install the various programs required to run jobs. For more information, see: Docker use.