Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье содержатся рекомендации и лучшие практики, связанные с конфигурацией вычислительных систем.
Если рабочая нагрузка поддерживается, Databricks рекомендует использовать бессерверные вычисления, а не настраивать собственный вычислительный ресурс. Бессерверные вычисления — это самый простой и самый надежный вариант вычислений. Он не требует настройки, всегда доступен и масштабируется в соответствии с рабочей нагрузкой. Бессерверные вычисления — это параметр вычислений для записных книжек, заданий и декларативных конвейеров Spark Lakeflow. См. раздел "Подключение к бессерверным вычислениям".
Кроме того, аналитики данных могут использовать бессерверные хранилища SQL для запроса и изучения данных в Databricks. См. Что такое бессерверные хранилища SQL.
Выбор подходящего режима доступа
Классические вычисления всех назначений и заданий имеют параметр режима доступа, который определяет, кто может подключаться к вычислительному ресурсу и использовать его. В каталоге Unity вычислительные ресурсы должны использовать стандартный или выделенный режим доступа.
Стандартные вычислительные ресурсы могут совместно использоваться несколькими пользователями и группами, сохраняя изоляцию пользователей и разрешения доступа ко всем данным уровня пользователей и групп. Это упрощает управление экономически эффективным вариантом для большинства рабочих нагрузок, особенно тех, которые обеспечивают точное управление доступом.
Выделенные вычислительные ресурсы рекомендуется использовать, если вам нужен доступ к функциям, недоступным для стандартных вычислений, таких как API удаленных рабочих машин, экземпляры GPU, R или Служба контейнеров Databricks. Дополнительные сведения см. в разделе "Стандартные требования к вычислениям и ограничениям".
Использование политик вычислений
Если вы создаете новые вычислительные ресурсы с нуля, Databricks рекомендует использовать политики вычислений. Политики вычислений позволяют создавать предварительно настроенные вычислительные ресурсы, предназначенные для конкретных целей, таких как личные вычисления, общие вычислительные ресурсы, продвинутые пользователи и задания. Политики ограничивают решения, которые необходимо принять при настройке параметров вычислений.
Если у вас нет доступа к политикам, обратитесь к администратору рабочей области. См. статью о политиках и семействах политик по умолчанию.
Оценка того, будет ли вы воспользоваться Photon
Многие рабочие нагрузки пользуются фотоном, но наиболее полезны для рабочих нагрузок SQL и операций с кадрами данных, включая сложные преобразования, такие как соединения, агрегирование и сканирование данных в больших таблицах. Рабочие нагрузки с частым доступом к диску, широкими таблицами или повторяющейся обработкой данных также видят улучшенную производительность.
Простые задания ETL пакетной службы, которые не включают широкие преобразования или большие объемы данных, могут увидеть минимальное влияние на включение Photon, особенно если запросы обычно выполняются в течение двух секунд.
Рекомендации по размеру вычислений
Примечание.
В следующих рекомендациях предполагается, что у вас есть неограниченное создание кластера. Администраторы рабочей области должны предоставлять этому привилегию только расширенным пользователям.
Люди часто думают о размере вычислительных мощностей с точки зрения числа работников, но есть и другие важные факторы, которые следует учитывать.
- Общее число ядер (вычислений) исполнителя: общее количество ядер по всем исполнителям. Это определяет максимальный параллелизм вычислений.
- Общая память исполнителей: общий объем ОЗУ по всем исполнителям. Это определяет объем данных, которые можно хранить в памяти, прежде чем сбрасывать их на диск.
- Локальное хранилище исполнителя: тип и объем локального дискового хранилища. Локальный диск в основном используется при избытках данных и в случаях перемешивания и кэширования.
К дополнительным вопросам относятся тип и размер экземпляра рабочей роли, которые также оказывают влияние на вышеупомянутые факторы. При изменении размера вычислительных ресурсов следует учитывать:
- Какой объем данных будет использовать ваша рабочая нагрузка?
- Какова вычислительная сложность рабочей нагрузки?
- Откуда считываются данные?
- Как данные секционированы во внешнем хранилище?
- Какая степень параллелизма вам необходима?
Ответы на эти вопросы помогут определить оптимальные конфигурации вычислений на основе рабочих нагрузок.
Существует балансирующий акт между количеством рабочих ролей и размером типов рабочих экземпляров. При настройке вычислений с двумя рабочими возможностями, каждый из которых имеет 16 ядер и 128 ГБ ОЗУ, имеет те же вычислительные ресурсы и память, что и при настройке вычислений с 8 рабочими возможностями, каждый из которых содержит 4 ядра и 32 ГБ ОЗУ.
Примеры конфигурации вычислений
В следующих примерах показаны рекомендации по вычислению на основе определенных типов рабочих нагрузок. Эти примеры также включают конфигурации, которые следует избегать, и причины, почему такие конфигурации не подходят для типов рабочей нагрузки.
Примечание.
Все примеры в этом разделе, за исключением обучения алгоритмов машинного обучения, могут извлечь пользу из использования бессерверных вычислений, вместо того чтобы запускать новый вычислительный ресурс. Если рабочая нагрузка не поддерживается без сервера, используйте приведенные ниже рекомендации, чтобы настроить вычислительный ресурс.
Анализ данных
Аналитики данных обычно выполняют обработку, которая требует данные из нескольких секций, что приводит к множественным операциям перемешивания данных. Вычислительный ресурс с меньшим числом более крупных узлов может снизить объем сетевых и дисковых операций ввода-вывода, необходимых для выполнения этих перетасовок.
Вычисление с одним узлом с большим типом виртуальной машины, скорее всего, лучше всего подходит для одного аналитика.
Аналитические рабочие нагрузки, скорее всего, потребуют считывания одних и тех же данных, поэтому рекомендуемые типы узлов оптимизированы для хранения с включенным кэшем дисков или экземплярами с локальным хранилищем.
Для аналитических рабочих нагрузок рекомендуется использовать следующие дополнительные функции:
- Включите автоматическое завершение, чтобы обеспечить завершение вычислений после периода бездействия.
- Рассмотрите возможность включения автомасштабирования на основе типичной рабочей нагрузки аналитика.
Базовые пакетные ETL
Для простых заданий ETL пакетной службы, которые не требуют широких преобразований, таких как соединения или агрегаты, используйте экземпляры с более низкими требованиями к памяти и хранилищу. Это может привести к экономии затрат на другие типы рабочих ролей.
Сложные пакетные ETL
Для сложных заданий ETL, таких как объединения и соединения с несколькими таблицами, Databricks рекомендует уменьшить количество исполнительных узлов, чтобы снизить объем данных, перемещаемых при обработке. Для компенсации уменьшенного числа сотрудников увеличьте размер экземпляров.
Сложные преобразования могут быть интенсивными для вычислений. Если вы наблюдаете значительную выгрузку на диск или ошибки Out Of Memory (OOM), увеличьте объем памяти, доступной в ваших экземплярах.
При необходимости используйте пулы для уменьшения времени запуска вычислений и уменьшения общего времени выполнения при выполнении конвейеров заданий.
Обучение моделей машинного обучения
Для обучения моделей машинного обучения Databricks рекомендует создать вычислительный ресурс, используя политику Personal compute.
Для первоначального эксперимента с моделями машинного обучения следует использовать вычисление одного узла с большим типом узла. При меньшем количестве узлов снижается влияние перетасовок.
Добавление большего числа работников может помочь с обеспечением стабильности, но следует избегать добавления слишком большого количества работников из-за затрат на перераспределение данных.
Рекомендуемые типы рабочих ролей — это хранилище, оптимизированное с включенным кэшированием дисков, или экземпляр с локальным хранилищем для учета повторяющихся операций чтения одних и тех же данных и включения кэширования обучающих данных.
Дополнительные функции, рекомендуемые для рабочих нагрузок машинного обучения, включают:
- Включите автоматическое завершение, чтобы обеспечить завершение вычислений после периода бездействия.
- Используйте пулы, которые позволят ограничить вычислительные ресурсы предварительно утвержденным типом экземпляра.
- Убедитесь, что единообразные конфигурации вычислительных ресурсов обеспечиваются с помощью политик.