Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте пакетную службу Azure, чтобы эффективно выполнять пакетные задания для крупномасштабных параллельных и высокопроизводительных вычислений (HPC). Пакетная служба Azure создает пул вычислительных узлов (виртуальных машин) и управляет им, устанавливает приложения, которые требуется запустить, и планирует задания для выполнения на узлах. Нет программного обеспечения для кластеров или планировщиков заданий, которое нужно устанавливать, управлять или масштабировать. Вместо этого для настройки, управления и мониторинга заданий используются средства и API пакетной службы, скрипты командной строки или портал Azure.
Разработчики могут использовать пакетную службу в качестве службы платформы для создания приложений SaaS или клиентских приложений, в которых требуется крупномасштабное выполнение. Например, можно создать службу с использованием пакетной службы для моделирования риска методом Монте-Карло для компании, предоставляющей финансовые услуги, или службу для обработки множества изображений.
За использование Batch дополнительная плата не взимается. Вы платите только за использованные базовые ресурсы, такие как виртуальные машины, хранилище и сетевые ресурсы.
Для сравнения решений пакетной службы с другими решениями HPC в Azure см. статью High Performance Computing (HPC) on Azure (Высокопроизводительные вычисления (HPC) в Microsoft Azure).
Параллельное выполнение рабочих нагрузок
Batch works well with intrinsically parallel (also known as "embarrassingly parallel") workloads. У этих рабочих нагрузок есть приложения, которые могут работать независимо, причем каждый экземпляр выполняет часть работы. При выполнении приложения они могут получить доступ к некоторых общим данным, но не будут обмениваться данными с другими экземплярами приложения. Параллельные рабочие нагрузки по своей природе могут выполняться в больших масштабах, определяемых количеством доступных для одновременного выполнения вычислительных ресурсов.
Некоторые примеры рабочих нагрузок, которые по своей природе являются параллельными и которые можно использовать в Batch:
- моделирование финансовых рисков с помощью модели Монте-Карло;
- визуальные эффекты и отрисовка трехмерных изображений
- анализ и обработка изображений;
- Перекодирование мультимедиа
- Анализ генетических последовательностей.
- Оптическое распознавание текста (OCR)
- прием данных, обработка и ETL операции;
- выполнение тестов программного обеспечения.
Кроме того, пакетную службу можно использовать для выполнения тесно связанных рабочих нагрузок, в которых приложениям необходимо обмениваться данными между собой, а не работать независимо. Тесно связанные приложения обычно используют API интерфейса передачи сообщений. Вы можете запускать тесно связанные рабочие нагрузки через службу Batch, используя Microsoft MPI или Intel MPI. Повысьте производительность приложений с использованием специализированных размеров виртуальных машин, оптимизированных для HPC и GPU.
Некоторые примеры тесно связанных рабочих нагрузок:
- Анализ конечных элементов
- гидродинамика;
- Multi-node AI training
С помощью Batch можно параллельно выполнять множество тесно связанных заданий. К примеру, вы можете выполнить несколько симуляций жидкости, протекающей по трубе с различной шириной трубы.
Additional Batch capabilities
Batch поддерживает крупномасштабные нагрузки на рендеринг с использованием инструментов рендеринга, таких как Autodesk Maya, 3ds Max, Arnold и V-Ray.
Кроме того, задания пакетной службы можно использовать как часть более крупного рабочего процесса Azure для преобразования данных, управляемых такими средствами, как Azure Data Factory.
Принцип работы
Распространенный сценарий для Batch включает в себя масштабирование задач, которые являются по своей природе параллельными, таких как рендеринг изображений для 3D-сцен, на пуле вычислительных узлов. Этот пул может быть вашей "фермой рендеринга", которая предоставляет десятки, сотни или даже тысячи ядер для задания рендеринга.
На следующей диаграмме показаны шаги в общем потоке работ Batch, когда клиентское приложение или размещенная служба используют Batch для запуска параллельной рабочей нагрузки.
Этап | Описание |
---|---|
1. Передайте входные файлы и приложения для обработки этих файлов в учетную запись службы хранилища Azure. | Входными файлами могут быть любые данные, которые будет обрабатывать приложение, например данные финансового моделирования или видеофайлы, которые необходимо перекодировать. Файлы приложения могут включать скрипты или приложения, которые обрабатывают данные, такие как транскодер мультимедиа. |
2. Создайте пул вычислительных узлов в своей учетной записи Batch, задание для выполнения рабочей нагрузки в пуле и задачи в задании. |
Вычислительные узлы — это виртуальные машины, выполняющие задачи. Укажите свойства пула, такие как номер и количество узлов, образ виртуальной машины Windows или Linux и приложение для установки, если узлы присоединяются к пулу. Управляйте затратами и размером пула, используя точечные виртуальные машины Azure или автоматическое масштабирование количества узлов при изменении рабочей нагрузки. При добавлении задач в задание пакетная служба автоматически планирует их выполнение в вычислительных узлах пула. Каждая задача использует приложение, которое вы загрузили для обработки входных файлов. |
3. Download input files and the applications to Batch | Перед выполнением каждой задачи входные данные, которые нужно обработать, могут быть скачаны в назначенный задаче узел. Если приложение еще не установлено на узлах пула, его можно скачать здесь. При завершении скачивания из службы хранилища Azure задача выполняется в назначенном узле. |
4. Отслеживайте выполнение задач. | As the tasks run, query Batch to monitor the progress of the job and its tasks. Ваше клиентское приложение или служба взаимодействует с пакетной службой через протокол HTTPS. Если вам нужно отслеживать тысячи задач, которые выполняются на тысячах вычислительных узлов, целесообразно отправлять в пакетную службу эффективные запросы. |
5. Отправьте выходные данные задачи. | По завершении выполнения задачи могут загружать свои выходные данные в хранилище Azure. Вы также можете извлечь файлы непосредственно из файловой системы в вычислительном узле. |
6. Скачайте выходные файлы. | Если при мониторинге обнаруживается, что задачи в задании выполнены, выходные данные могут быть скачаны для дальнейшей обработки через клиентское приложение или службу. |
Помните, что описанный выше рабочий процесс является лишь одним из способов использования пакетной обработки, и существует множество других функций и вариантов. Например, можно выполнить несколько задач параллельно на каждом вычислительном узле. Or you can use job preparation and completion tasks to prepare the nodes for your jobs, then clean up afterward.
В статье Рабочий процесс и ресурсы пакетной службы описаны такие концепции, как пулы, узлы, задания и задачи. Also see the latest Batch service updates.
In-region data residency
Пакетная служба Azure не перемещает и не хранит данные клиентов за пределами региона, в котором она развернута.
Следующие шаги
Начните работать с Azure Batch, воспользовавшись одним из этих кратких руководств:
- Краткое руководство по выполнению первого пакетного задания с помощью Azure CLI
- Краткое руководство по выполнению первого пакетного задания на портале Azure
- Выполните первое пакетное задание с использованием API .NET
- Краткое руководство по выполнению первого пакетного задания с помощью API Python
- Создайте пакетный аккаунт при помощи шаблонов ARM