Режим высокой одновременности для операций Lakehouse в Microsoft Fabric

Режим высокой параллельности — это совместное использование сеансов Spark для операций с "Lakehouse". Вместо запуска отдельного сеанса Spark для каждой операции Структура может выполнять несколько совместимых операций в одном общем сеансе. Это наиболее важно при выполнении операций в Spark, таких как при загрузке файлов в таблицу или предварительный просмотр данных таблицы.

Без режима высокой параллельности (общего использования сеансов) операция предварительного просмотра может занимать сеанс Spark до 20 минут (например, если конечная точка SQL недоступна). В небольших емкостях это может снизить параллелизм и увеличить время ожидания для других операций. В режиме высокой параллелизма совместимые операции совместно используют один сеанс Spark.

Это особенно заметно в рабочих областях, использующих управляемые виртуальные сети, где начальный запуск Spark может занять больше времени. В таких случаях для запуска первой таблицы может потребоваться от 3 до 5 минут, но последующие загрузки или предварительные операции могут начинаться примерно через 5 секунд, когда они выполняются под тем же пользователем, Lakehouse и рабочей областью.

Преимущества

Режим высокой параллелизма повышает производительность и эффективность операций Lakehouse:

Преимущества Description
Оптимизированное использование вычислительных ресурсов До пяти операций Lakehouse могут выполняться в одном общем сеансе Spark, что снижает нагрузку на емкость.
Быстрое время начала Повторное использование сеанса снижает задержку запуска Spark, особенно в рабочих областях с функциями безопасности сети, такими как частные каналы.
Улучшенное соотношение цена-производительность Взимается плата только за инициирование сеанса Spark. Последующие операции, которые используют этот сеанс совместно, не выставляются отдельно.
Более высокая конкурентность Больше операций Lakehouse могут выполняться одновременно, не блокируя другие рабочие нагрузки, что особенно полезно для небольших вместимостей.

Как работает режим высокой параллелизма

В режиме высокой параллелизма один сеанс Spark может одновременно размещать до 5 независимых заданий Lakehouse. Каждое задание выполняется в изолированном ядре REPL в приложении Spark, обеспечивая изоляцию переменных и выполнения между операциями.

Этот подход повторно использует существующие сеансы Spark для новых заданий Lakehouse без создания дополнительных сеансов, что повышает время запуска, пропускную способность и общую загрузку вычислительных ресурсов.

Замечание

Для операций загрузки и предварительного просмотра Lakehouse режим высокой параллельности автоматически включается при выполнении операции в Spark — в портале Fabric нет переключателя для каждой операции. В отличие от этого, высокий параллелизм для записных книжек и конвейеров настраивается в параметрах рабочей области и записных книжках. Дополнительные сведения см. в разделе "Настройка режима высокой параллелизма" для записных книжек Fabric.

Когда в режиме высокой конкурентности сеансы разделяются

Для применения режима высокой параллелизма необходимо выполнить следующие условия:

  • Операции должны запускаться тем же пользователем.
  • Операции должны выполняться в том же Lakehouse и рабочей области.

При выполнении этих условий операции Lakehouse автоматически группируются и выполняются в рамках общего сеанса Spark.

Пример потока

В следующем примере показано, как работает общий доступ к сеансам. Вы выполняете операцию загрузки в таблицу Lakehouse, которая запускает сеанс Spark в режиме высокой параллелизма. Хотя этот сеанс активен, вы просматриваете другую таблицу или загружаете другой файл. Эти последующие операции повторно используют тот же сеанс Spark и выполняются параллельно в отдельных REPL в приложении Spark, а Fabric продолжает отслеживать совместное использование сеансов и выделение ресурсов.

В этом примере ресурсы Spark используются эффективно повторно, что позволяет быстрее завершать несколько заданий на платформе Lakehouse с меньшими затратами.

Мониторинг общих сеансов

Вы можете отслеживать сеансы с высокой параллельностью в центре мониторинга. Если операция Lakehouse (например, загрузка таблицы или предварительная версия) использует сеанс Spark с высоким параллелизмом, действие появляется с помощью этого шаблона именования: HC_<lakehouse_name>_<operation_id>

Это соглашение об именовании помогает быстро определить, какие действия выполняются в режиме высокой конкуренции.

Снимок экрана узла мониторинга, показывающего действие в среде High Concurrency Lakehouse.

Чтобы просмотреть определенные операции, выполняемые в общем сеансе, выберите имя действия (например, HC_lakehouse_Etc) в центре мониторинга, а затем откройте представление сведений.

В детализированном виде можно увидеть отдельные задания, выполняемые в сеансе высокой степени параллельности. В этом списке показаны операции на уровне таблицы, такие как "Загрузка таблицы", подтверждающие, что несколько заданий совместно используют один контекст приложения Spark.

Снимок экрана: подробный вид задания, отображающий несколько операций загрузки таблицы Load в одном сеансе.

Влияние на биллинг и производительность

Сеансы высокой конкурентности обеспечивают измеримое увеличение соотношения цены и производительности.

  • Плата взимается только за инициирующий сеанс Spark, запускающий общее приложение.
  • Последующие операции Lakehouse, которые используют тот же сеанс, не подлежат дополнительной оплате.
  • Метрики емкости отражают использование относительно инициирующего задания, что снижает общее потребление вычислительных ресурсов.

Эта модель повышает соотношение цена-эффективность на единицу емкости, особенно для рабочих нагрузок с частыми операциями загрузки или предварительного просмотра.