Следуя этим 4 кратким советам, вы сможете значительно сэкономить на ежемесячных расходах на Azure Databricks.

Добро пожаловать в мою первую статью о среде. Сегодняшняя статья посвящена одной из самых горячих тем современности — оптимизации расходов. В этой статье основное внимание уделяется оптимизации ежемесячных затрат на Azure Databricks и выделяются четыре простых совета, которым мы следовали, чтобы добиться оптимизации ежемесячных затрат на 60 % в нашей команде. Прежде чем вдаваться в подробности, сначала позвольте мне кратко рассказать о том, что такое Databricks и как взимается плата за эту услугу.

Databricks — это решение «программное обеспечение как услуга» (SaaS), которое можно использовать для всех потребностей организации в области инженерии данных, аналитики, машинного обучения и науки о данных. Это от первых создателей Apache Spark, и решение фактически построено на Apache Spark. Это оптимизированная версия Apache Spark с базовым оборудованием кластера и средой выполнения, управляемой Databricks. Итак, что такое Azure Databricks? Это не что иное, как решение Databricks, размещенное в облаке Azure, с вычислительными, сетевыми ресурсами, памятью и ресурсами хранения для узлов кластера, поступающими из Microsoft Azure Cloud.

Пользователи могут просто создать рабочую область Databricks на портале Azure и начать использовать Databricks, создав кластер и запустив свои эксперименты по науке о данных в своих записных книжках, подключив их к кластеру с помощью этой рабочей области. После того, как они закончат свои эксперименты, они могут закрыть кластер и заплатить по мере использования за количество времени, в течение которого они использовали кластер. Это очень упрощенная версия рабочего процесса, но она будет служить цели этой статьи.

Теперь перейдем к плате по факту. Он состоит из двух компонентов: один для Databricks для использования их решения SaaS, а другой для Microsoft Azure для использования их инфраструктуры. Стоимость этих двух компонентов зависит от размера кластера и типа кластера, созданного пользователем. Databricks измеряет количество ресурсов, потребляемых пользователем, с точки зрения DBU и количества DBU, используемых кластером, а стоимость каждого DBU зависит от типа выбранного кластера и количества узлов в этом кластере (в основном, насколько велик кластер). является). Стоимость Azure зависит от типа экземпляра, выбранного для узла. Есть эти два типа кластеров, которые широко используются

  1. Универсальный кластер — используется в основном для специальных целей разработки/экспериментирования.
  2. Кластер заданий — используется в основном для запуска запланированных заданий. Этот тип кластера просто начинает выполнять определенное запланированное задание и завершает работу сразу после завершения задания.

Теперь пришло время для Совета #1. Всегда разделяйте кластер All Purpose и кластер Jobs. Не используйте универсальный кластер для выполнения запланированных заданий. Кластер заданий стоит почти на 35 % меньше по сравнению с универсальным кластером, и вы упустите возможность сэкономить, если продолжите выполнять запланированные задания в универсальном кластере. Перейдите по этой ссылке для получения полной информации о ценах https://azure.microsoft.com/en-us/pricing/details/databricks/#pricing.

Поскольку мы говорим об универсальном кластере, я могу представить здесь Совет №2. Если вашей рабочей нагрузке и команде не нужен постоянно работающий кластер, выберите подходящее время бездействия, после которого кластер может быть прекращено. Это позволит сэкономить много средств, избегая запуска кластера, когда его никто не использует или на нем не выполняется рабочая нагрузка. Также включите автомасштабирование с минимальным и максимальным количеством узлов, которое может масштабировать этот кластер. Если невозможно запустить вашу рабочую нагрузку параллельно, рассмотрите возможность использования автономного кластера (кластер только с одним узлом).

Пришло время ознакомиться с Советом #3. Он может сэкономить до 35 % стоимости универсального кластера. Если работа, которую вы выполняете с помощью универсального кластера, не является критической и может прерываться, выберите точечные экземпляры для своего кластера. Спотовые инстансы поступают из неиспользуемых вычислительных мощностей Azure. В любой момент, когда Azure потребуется вернуть емкость, инфраструктура Azure вытеснит спотовые виртуальные машины Azure. Они доступны с большой скидкой до 35% и, безусловно, являются хорошим вариантом для экономии средств.

Совет № 4. Это требует некоторых усилий и анализа, но если все сделано правильно, это может помочь вам выбрать правильный размер кластера с типом виртуальных машин для выбора узлов, которые будут лучше всего подходят для ваша рабочая нагрузка, а не догадки. Совет: всегда обсуждайте и согласовывайте с командой несколько руководств по размеру кластера в зависимости от типа рабочей нагрузки, которую выполняет команда. Эти рекомендации помогут вашей команде выбрать, следует ли использовать кластер, оптимизированный для вычислений, или кластер, оптимизированный для памяти, для выполнения своей записной книжки или задания, а также размер создаваемого кластера. Мы можем прийти к этим рекомендациям, выполнив пробный запуск различных типов рабочих нагрузок и изучив показатели кластера, чтобы определить, является ли рабочая нагрузка интенсивной для процессора, памяти или сети. Знание этого поможет нам выбрать подходящий тип экземпляра и количество узлов, необходимых в кластере.

Просто для примера: изначально мы использовали кластер с включенным автоматическим масштабированием с максимум 8 узлами с экземпляром типа D14V2 для всех наших рабочих нагрузок, а максимальная стоимость работы этого кластера в течение одного часа составляет примерно 98,5 долларов США. Проведя этот анализ, мы обнаружили, что можем разделить наши рабочие нагрузки на малые, средние и большие и использовать этот кластер только для больших рабочих нагрузок, а также использовать типы инстансов D16sV3 и Ds12V2 с максимум 6 узлами для средних и малых рабочих нагрузок соответственно и максимальная стоимость запуска этих двух кластеров в течение 1 часа составляет 45,2 и 7,5 долларов США соответственно. Вы можете сразу увидеть потенциальную экономию средств, следуя этому подходу.

Мы смогли добиться почти 60% оптимизации затрат в месяц на одну из наших подписок, просто следуя этим 4 советам. Это все для этой статьи. Спасибо, что зашли.