Google Cloud Blog на русском
Подписаться
Максимизация доступности Apache Spark: Предотвращение дефицита вычислительных ресурсов с помощью гибких виртуальных машин и других лучших практик
Растущий спрос на вычислительные мощности из-за развития ИИ создает нагрузку на конвейеры обработки данных и Apache Spark, что приводит к ограничениям доступности. Управляемый сервис Google для Apache Spark предлагает гибкие виртуальные машины для решения этой проблемы, позволяя кластерам использовать ранжированный список приемлемых семейств машин. Такой подход гарантирует, что конвейеры останутся работоспособными даже во время дефицита мощностей, который возникает, когда спрос превышает доступную емкость для конкретных типов машин. Гибкие виртуальные машины позволяют смешивать несколько семейств, объединяя узлы из разных поколений и типов машин. Они также поддерживают смешанное хранилище, динамически адаптируясь к типам дисков семейства хостов, и обеспечивают полное покрытие кластера для всех типов узлов. Успешная реализация требует тщательного ранжирования предпочтительных семейств машин для снижения рисков дефицита без ручного вмешательства. Пример стратегии многоуровневого подхода показывает, как приоритизировать семейства машин и рекомендации по хранению для производственных конвейеров. Для устаревших рабочих нагрузок многоуровневая стратегия помогает перейти к более новым, более доступным архитектурам. Использование современного хранилища, такого как Hyperdisk Balanced, может обеспечить максимальную доступность с новыми семействами экземпляров. Ключевые соображения включают обеспечение достаточных квот для всех указанных типов машин и использование гибких скидок на зарезервированные мощности Compute для экономии средств. Производительность может варьироваться между поколениями машин и типами хранилищ, что требует тестирования рабочих нагрузок. Дополнительные рекомендации по улучшению доступности ресурсов включают внедрение AutoZone, использование меньших форм машин, развертывание автомасштабирования, настройку частичного создания кластера и создание региональных резервных вариантов. Используя гибкие виртуальные машины и эти стратегии, пользователи могут защитить рабочие нагрузки Spark от нехватки оборудования и обеспечить непрерывную работу критически важных конвейеров.