Обновление активности конечной точки SQL

Действие "Обновить конечную точку SQL" в конвейерах Microsoft Fabric позволяет программно обновить конечную точку SQL Lakehouse в рамках оркестрированного рабочего процесса. Это часть Пакета служебной программы Lakehouse для конвейеров и обычно используется после действия обслуживания Lakehouse (например, после операций OPTIMIZE или VACUUM). Подчиненные потребители, такие как отчеты Power BI, записные книжки или внешние клиенты SQL, затем отображают последние данные после завершения подготовки или обслуживания данных.

Используйте это действие, чтобы конечные точки SQL сразу же отражали последние обновления без использования ручных обновлений данных или неупорядоченных процессов. Используйте эту операцию, когда ваш поток обработки:

  • Обновляет или поддерживает данные Lakehouse (например, после выполнения копировальных заданий, выполнения программных блокнотов или действий по обслуживанию Lakehouse).
  • Требуется конечная точка доступа SQL Lakehouse для отражения последних изменений метаданных и данных.
  • Требуется детерминированное время обновления перед подчиненными шагами, такими как отчеты, аналитика или экспорт.

Необходимые условия

Перед использованием этого действия убедитесь, что:

Добавьте активность «Обновить конечную точку SQL» в ваш конвейер в пользовательском интерфейсе

  1. Создайте конвейер в рабочей области.  

  2. Найдите Обновление конечной точки SQL в области Активностей конвейера и выберите её, чтобы добавить в область конвейера.  

    Снимок экрана: действие

  3. Выберите новое действие "Обновить конечную точку SQL " на холсте, если оно еще не выбрано.  

    Снимок экрана: действие

    Tip

    Вы можете координировать это действие вместе с другими действиями Lakehouse Utility Suite, такими как действие обслуживания Lakehouse, в том же конвейере, чтобы обслуживание и обновление последовательно выполнялись.

  4. Ознакомьтесь с руководством по общим параметрам , чтобы настроить вкладку "Общие параметры".

Обновить параметры активности конечной точки SQL

  1. Перейдите на вкладку "Параметры" , чтобы настроить действие.  

  2. Настройте подключение, выбрав существующее подключение в раскрывающемся списке "Подключение " или создав новое подключение и указав его сведения о конфигурации.

  3. Укажите рабочую область, содержащую Lakehouse.

  4. Укажите конечную точку SQL для Lakehouse, которую вы хотите обновить. Обновление обновляет метаданные SQL-endpoint Lakehouse, чтобы они отражали последние изменения в данных и схемах.

    Снимок экрана: параметры действия

Поведение действия

После завершения выполнения активности:

  • Если всплывающее окно вывода отображает состояние успешности , запрос успешно синхронизирует несинхронизированные данные.

    Снимок экрана: состояние успеха во всплывающем окне Output (Выходные данные).

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

    Снимок экрана статуса NotRun в окне действия Output.

  • Если всплывающее окно вывода отображает состояние сбоя , что-то пошло не так.

Замечание

Запуск активности устанавливает эти статусы во всплывающем окне вывода. Не путайте эти статусы со статусом активности.

Распространенные сценарии

  • Обновление конечной точки SQL после того, как записная книжка записывает преобразованные данные в Lakehouse.
  • Активируйте обновление конечной точки SQL после завершения действия обслуживания Lakehouse (OPTIMIZE или VACUUM).
  • Обеспечение того, чтобы отчеты и панели мониторинга запрашивали последнее состояние Lakehouse в четко определенных точках конвейера.

Почему может происходить ошибка обновления SQL-эндоинта при блокировке базовых данных?

Действие "Обновить конечную точку SQL" может периодически завершаться сбоем, когда другие процессы активно обновляют данные в базе Lakehouse. К этим процессам относятся конвейеры приема, записные книжки или одновременные операции записи.

Эта ошибка возникает, так как конечная точка SQL должна получить внутренние блокировки для завершения обновления. Если другая операция блокирует данные, время ожидания запроса истекает или возвращает ошибку.

Это поведение предполагается на основе того, как конечные точки SQL управляют операциями обновления метаданных.

Симптомы

  • Действие завершается периодически, не последовательно.
  • Сообщения об ошибках указывают на конфликты обновления или конфликт блокировки.
  • Пайплайны с несколькими последовательными действиями обновления конечной точки SQL показывают более высокую частоту сбоев.

Основная причина

Конечные точки SQL требуют эксклюзивного доступа к определенным структурам метаданных во время обновления. Если другой вычислительный процесс записывается в Lakehouse одновременно, возникает конфликт блокировки.

Это поведение не является дефектом в активности "Обновление конечной точки SQL". Это естественный результат параллельных операций чтения и записи в базовых данных.

Обходные пути

Два практических подхода могут устранить эту проблему:

Используйте только одну активность обновления SQL конечной точки в конце обработки

Чтобы снизить вероятность конфликтов блокировки, консолидируйте конвейер так, чтобы:

  • Сначала выполняются действия приема, преобразования и обновления.
  • Затем в конце выполняется только одно действие обновления конечной точки SQL.
  • Этот подход не полностью устраняет сбои, но значительно сокращает частоту их возникновения.

Реализация расписания повторяющегося обновления

Если в вашем сценарии не требуется строгая согласованность транзакций в определенный момент, выполните повторяющийся шаблон обновления:

  • Запланируйте обновление каждые 15 минут— непрерывно. Некоторые попытки обновления могут завершиться неудачей из-за блокировки, но достаточно успешных, чтобы поддерживать конечную точку SQL в относительно актуальном состоянии.

Снимок экрана: конфигурация расписания обновления конечной точки SQL с повторением.

Этот подход является практическим и надежным для многих рабочих нагрузок аналитики.

Сохраните и запустите конвейер или запланируйте его

Перейдите на вкладку "Главная " в верхней части редактора конвейера и нажмите кнопку "Сохранить", чтобы сохранить конвейер. Выберите "Выполнить" , чтобы запустить его напрямую или запланировать выполнение в определенный момент времени или интервалы. Дополнительные сведения о запусках конвейера см. в статье "Планирование запусков конвейера".

снимок экрана: вкладка

После выполнения можно отслеживать выполнение конвейера и просматривать журнал выполнения с вкладки "Выходные данные " под холстом.

Известные проблемы