Вопрос: Что такое AWS Batch?

AWS Batch – это набор функций пакетного управления, позволяющий разработчикам, ученым и инженерам легко и эффективно выполнять сотни тысяч заданий пакетных вычислений на платформе AWS. Сервис AWS Batch динамически выделяет оптимальные объемы и типы вычислительных ресурсов (например, инстансов, оптимизированных для работы с ЦПУ или памятью) на основании объемов и особых требований к ресурсам отправленных в сервис заданий пакетной обработки. Благодаря сервису AWS Batch не нужно устанавливать и обслуживать вычислительное ПО или кластеры серверов, что позволяет пользователю сосредоточиться на анализе результатов и решении проблем. AWS Batch осуществляет планирование, распределение по времени и выполнение пакетных вычислительных рабочих нагрузок с помощью сервиса Amazon EC2 и спотовых инстансов.

Вопрос: Что такое пакетные вычисления?
Пакетные вычисления – это исполнение серии программ (заданий) на одном или нескольких компьютерах без ручного вмешательства. Входные параметры предопределяются с помощью скриптов, аргументов командной строки, управляющих файлов или языка управления заданиями. Выполнение конкретного пакетного задания зависит от завершения предыдущих заданий или наличия соответствующих входных данных, поэтому особую важность приобретает соблюдение очередности и планирование графика выполнения множества заданий. Соответственно, выполнение пакетных заданий и интерактивная обработка несовместимы.

Вопрос: Каковы преимущества пакетных вычислений?

  • Пакетные вычисления помогают сместить обработку заданий по времени, чтобы воспользоваться доступными ресурсами в большем объеме или по меньшей стоимости.
  • Они позволяют избежать простоя вычислительных ресурсов и регулярного ручного вмешательства в процессы управления ими.
  • Они позволяют повысить эффективность за счет более интенсивного использования вычислительных ресурсов.
  • Они определяют приоритеты выполнения заданий, сопоставляют распределение ресурсов с бизнес-целями.

Вопрос: Почему следует использовать AWS Batch?
AWS Batch обеспечивает выполнение заданий и управляет вычислительными ресурсами, позволяя пользователю сфокусироваться на разработке приложений или анализе результатов, а не тратить время на настройку инфраструктуры и управление ею. Когда требуется выполнить пакетные рабочие нагрузки или переместить их на платформу AWS, рекомендуется использовать сервис AWS Batch.

Вопрос: Для каких сценариев использования оптимизирован AWS Batch?
Сервис AWS Batch оптимизирован для пакетных вычислений и приложений, которые масштабируются в результате параллельного исполнения нескольких заданий. Показательные примеры пакетных вычислений – это глубокое обучение, анализ генома, моделирование финансовых рисков, моделирование по методу Монте-Карло, рендеринг анимации, перекодирование мультимедийных данных, обработка изображений и инженерное моделирование.


Вопрос: Какие основные возможности предлагает AWS Batch?
AWS Batch управляет средами вычислений и очередями заданий, позволяя легко выполнять тысячи заданий любого масштаба с помощью сервиса Amazon EC2 и спотовых инстансов EC2. Вам нужно просто определить пакетные задания и отправить их в очередь. В ответ сервис AWS Batch выберет место исполнения заданий и запустит соответствующие ресурсы AWS при необходимости. AWS Batch тщательно отслеживает процесс выполнения заданий. Когда потребность в ресурсах отпадает, AWS Batch удаляет их. AWS Batch также предлагает возможность отправлять задания, являющиеся частью конвейера или рабочего процесса, позволяя по мере отправки заданий выразить все существующие взаимозависимости.

Вопрос: Какие типы пакетных заданий поддерживаются сервисом AWS Batch?
AWS Batch поддерживает любые задания, которые можно исполнять как контейнеры Docker. В соответствии с заданиями определяются требования к памяти и количеству виртуальных ЦПУ.  

Вопрос: Что такое вычислительный ресурс?
Вычислительный ресурс AWS Batch – это инстанс EC2.

Вопрос: Что такое вычислительная среда?
Вычислительная среда AWS Batch – это набор вычислительных ресурсов, на которых исполняются задания. AWS Batch поддерживает два типа вычислительных сред; управляемые вычислительные среды, за выделение которых и последующее управление отвечает AWS, и неуправляемые вычислительные среды, за управление которыми отвечают клиенты. Неуправляемые вычислительные среды позволяют использовать специализированные ресурсы, например выделенные узлы, укрупненные конфигурации хранилищ и Amazon EFS.

Вопрос: Что такое определение задания?
Определение задания описывает исполняемое задание, параметры, переменные среды, требования к вычислениям и прочую информацию, используемую для оптимизации исполнения задания. Определения заданий указываются перед отправкой задания; их можно открыть для совместного использования.

Вопрос: Что такое агент Amazon ECS и как он используется сервисом AWS Batch?
AWS Batch использует сервис Amazon ECS для выполнения заданий из контейнеров и поэтому требует установки агента ECS на ресурсах вычислительных сред AWS Batch. В управляемых вычислительных средах агент ECS уже предустановлен.

Вопрос: Как AWS Batch упрощает использование спотовых инстансов EC2?
Вычислительные среды AWS Batch могут состоять из спотовых инстансов EC2. При создании управляемой вычислительной среды просто укажите, что хотите использовать спотовые инстансы EC2, задайте предлагаемую цену в виде процентной доли от ценообразования по требованию, и AWS Batch выполнит всю остальную работу самостоятельно. В неуправляемых вычислительных средах также можно использовать спотовые инстансы, запускаемые пользователем, включая те, что запускаются в спотовых группах EC2.


Вопрос: Сколько стоит использование AWS Batch?
Дополнительная плата за AWS Batch отсутствует. Пользователь оплачивает только стоимость ресурсов AWS (например, инстансов EC2), которые создаются для хранения и выполнения пакетных заданий.


Вопрос: Как начать работу с сервисом?
Чтобы начать работу, ознакомьтесь с Руководством по началу работы в документации.

Вопрос: Какие ресурсы нужно выделить для начала работы?
Чтобы начать работу, запускать вычислительные ресурсы вручную не требуется. Веб-консоль AWS Batch поможет создать первую вычислительную среду и очередь заданий, в которую можно отправить свое первое задание. Ресурсы вычислительной среды будут масштабироваться соответствующим образом по мере увеличения или уменьшения количество заданий, готовых к исполнению.