Поделиться через


Запуск обновления в конвейере Разностных динамических таблиц

В этой статье объясняется, что такое обновление конвейера Delta Live Tables и как запустить его.

После создания конвейера и готовности к его запуску вы запустите обновление. Обновление конвейера выполняет следующее:

  • Запускает кластер с правильной конфигурацией.
  • Обнаруживает все определенные таблицы и представления и проверяет любые ошибки анализа, такие как недопустимые имена столбцов, отсутствующие зависимости и синтаксические ошибки.
  • Создает или обновляет таблицы и представления, используя самые актуальные доступные данные.

Вы можете проверка проблемы в исходном коде конвейера, не ожидая создания или обновления таблиц с помощью обновления проверки. Эта Validate функция полезна при разработке или тестировании конвейеров, позволяя быстро находить и устранять ошибки в конвейере, например неправильные имена таблиц или столбцов.

Сведения о создании конвейера см. в руководстве . Запуск первого конвейера Delta Live Tables.

Запуск обновления конвейера

Azure Databricks предоставляет несколько вариантов запуска обновлений конвейера, включая следующие:

  • В пользовательском интерфейсе разностных динамических таблиц доступны следующие параметры:
    • Нажмите кнопку на странице сведений о Значок запуска разностных динамических таблиц конвейере.
    • В списке конвейеров щелкните Значок стрелки вправо столбец "Действия ".
  • Чтобы запустить обновление записной книжки, щелкните Delta Live Tables > Start на панели инструментов записной книжки. См . статью "Открыть" или запустить конвейер Delta Live Tables из записной книжки.
  • Конвейеры можно активировать программным способом с помощью API или ИНТЕРФЕЙСА командной строки. См . руководство по API разностных динамических таблиц.
  • Конвейер можно запланировать как задание с помощью пользовательского интерфейса разностных динамических таблиц или пользовательского интерфейса заданий. Дополнительные сведения см. в подразделе Создание расписания конвейера.

Как разностные динамические таблицы обновляют таблицы и представления

Обновленные таблицы и представления и способ обновления этих таблиц зависят от типа обновления:

  • Обновить все: все динамические таблицы обновляются в соответствии с текущим состоянием источников входных данных. Для всех таблиц потоковой передачи новые строки добавляются в таблицу.
  • Полностью обновить все: все динамические таблицы обновляются в соответствии с текущим состоянием источников входных данных. Для всех таблиц потоковой передачи Delta Live Table пытается очистить все данные из каждой таблицы, а затем загрузить все данные из источника потоковой передачи.
  • Обновить выбранное: поведение refresh selection идентично refresh all, но позволяет обновить только выбранные таблицы. Выбранные динамические таблицы обновляются в соответствии с текущим состоянием источников входных данных. Для выбранных таблиц потоковой передачи новые строки добавляются в таблицу.
  • Полностью обновить выбранное: поведение full refresh selection идентично full refresh all, но позволяет полностью обновить только выбранные таблицы. Выбранные динамические таблицы обновляются в соответствии с текущим состоянием источников входных данных. Для выбранных таблиц потоковой передачи Delta Live Table пытается очистить все данные из каждой таблицы, а затем загрузить все данные из источника потоковой передачи.

Для существующих динамических таблиц обновление аналогично операции SQL REFRESH в материализованном представлении. Для новых динамических таблиц поведение аналогично операции SQL CREATE.

Запуск обновления конвейера для выбранных таблиц

Вам может потребоваться повторно обработать данные только для выбранных таблиц в конвейере. Например, во время разработки вы измените только одну таблицу и захотите сократить время тестирования, или обновление конвейера завершится сбоем, и вам нужно будет обновить только таблицы с ошибками.

Примечание.

Выборочное обновление можно использовать только с активированными конвейерами.

Чтобы запустить обновление только выбранных таблиц, на странице Сведения о конвейере:

  1. Щелкните Выбрать таблицы для обновления. Откроется диалоговое окно Выбор таблиц для обновления.

    Если вы не видите таблиц для обновления, убедитесь, что на странице сведений о конвейере отображается последнее обновление, а обновление завершено. Если daG не отображается для последнего обновления, например из-за сбоя обновления, кнопка "Выбрать таблицы для обновления " не отображается.

  2. Чтобы выбрать таблицы, которые нужно обновить, щелкните каждую из них. Выбранные таблицы будут выделены и помечены. Чтобы не удалить таблицу из числа обновляемых, снова щелкните ее.

  3. Нажмите Обновить выбор.

    Примечание.

    На кнопке Обновить выбор отображается количество выбранных таблиц в круглых скобках.

Чтобы повторно обработать данные, которые уже были приняты для выбранных таблиц, щелкните Синий вниз caret рядом с кнопкой "Обновить выбор " и нажмите кнопку "Полное обновление".

Запуск обновления конвейера для таблиц со сбоями

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

Примечание.

Исключенные таблицы не обновляются, даже если они зависят от таблицы со сбоем.

Чтобы обновить таблицы со сбоями, на странице Сведения о конвейере нажмите кнопку Обновить со сбоями таблицы.

Чтобы обновить только выбранные таблицы со сбоями:

  1. Нажмите Кнопка рядом с кнопкой "Обновить неудачные таблицы " и нажмите кнопку " Выбрать таблицы для обновления". Откроется диалоговое окно Выбор таблиц для обновления.

  2. Чтобы выбрать таблицы, которые нужно обновить, щелкните каждую из них. Выбранные таблицы будут выделены и помечены. Чтобы не удалить таблицу из числа обновляемых, снова щелкните ее.

  3. Нажмите Обновить выбор.

    Примечание.

    На кнопке Обновить выбор отображается количество выбранных таблиц в круглых скобках.

Чтобы повторно обработать данные, которые уже были приняты для выбранных таблиц, щелкните Синий вниз caret рядом с кнопкой "Обновить выбор " и нажмите кнопку "Полное обновление".

Проверка конвейера ошибок без ожидания обновления таблиц

Внимание

Функция обновления разностных динамических таблиц Validate доступна в общедоступной предварительной версии.

Чтобы проверка, является ли исходный код конвейера допустимым без выполнения полного обновления, используйте проверку. Обновление Validate разрешает определения наборов данных и потоков, определенных в конвейере, но не материализует или не публикует наборы данных. Ошибки, обнаруженные во время проверки, например неправильные имена таблиц или столбцов, сообщаются в пользовательском интерфейсе.

Чтобы запустить обновление, на странице сведений о Validate конвейере нажмите кнопку "Синий вниз caretПуск" и нажмите кнопку "Проверить".

Validate После завершения обновления журнал событий отображает события, связанные только с Validate обновлением, и метрики не отображаются в DAG. Если обнаружены ошибки, сведения доступны в журнале событий.

Результаты можно просмотреть только для последнего Validate обновления. Validate Если обновление было последним, вы можете просмотреть результаты, выбрав его в журнале обновлений. Если после обновления выполняется другое Validate обновление, результаты больше не доступны в пользовательском интерфейсе.

Непрерывное выполнение конвейера и активация

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

Если конвейер использует непрерывное выполнение, Delta Live Tables обрабатывает новые данные по мере поступления в источники данных для сохранения таблиц во всем конвейере.

Режим выполнения не зависит от типа вычисляемой таблицы. Материализованные представления и таблицы потоковой передачи можно обновлять в любом режиме выполнения. Чтобы избежать ненужной обработки в непрерывном режиме выполнения, конвейеры автоматически отслеживают зависимые таблицы Delta и выполняют обновление только при изменении содержимого этих зависимых таблиц.

Сравнение таблиц режимов выполнения конвейера данных

В следующей таблице выделены различия между этими режимами выполнения.

Активируемые Непрерывные
Когда обновление останавливается? Автоматически после завершения. Выполняется непрерывно до тех пор, пока не будет остановлено вручную.
Какие данные обрабатываются? Данные, доступные при запуске обновления. Все данные по мере поступления в настроенные источники.
Какие требования к свежести данных лучше всего подходить? Обновления данных выполняются каждые 10 минут, почасовой или ежедневно. Обновления данных, необходимые каждые 10 секунд до нескольких минут.

Активируемые конвейеры могут снизить потребление ресурсов и расходы, поскольку кластер работает только в течение времени, достаточного для выполнения конвейера. Однако новые данные не будут обрабатываться до тех пор, пока конвейер не будет запущен. Для непрерывных конвейеров требуется постоянно работающий кластер, который дороже, но снижает задержку обработки.

Режим выполнения можно настроить с параметром режима конвейера в параметрах.

Выбор границ конвейера

Конвейер Разностных динамических таблиц может обрабатывать обновления одной таблицы, многие таблицы с зависимыми связями, многие таблицы без связей или несколько независимых потоков таблиц с зависимыми связями. В этом разделе содержатся рекомендации, которые помогут определить, как разбить конвейеры.

Более крупные конвейеры динамических таблиц delta имеют ряд преимуществ. следующие основные параметры.

  • Более эффективно используйте ресурсы кластера.
  • Уменьшите количество конвейеров в рабочей области.
  • Уменьшите сложность оркестрации рабочих процессов.

Ниже приведены некоторые распространенные рекомендации по разделу конвейеров обработки:

  • Разделение функциональных возможностей в границах группы. Например, команда данных может поддерживать конвейеры для преобразования данных, а аналитики данных поддерживают конвейеры, которые анализируют преобразованные данные.
  • Разделение функциональных возможностей на границах, связанных с приложением, чтобы уменьшить связь и упростить повторное использование общих функциональных возможностей.

Разработка и применение в рабочей среде

Можно оптимизировать выполнение конвейера, переключаясь между режимами разработки и рабочей среды. Используйте кнопки Значок переключателя среды разностных динамических таблиц в пользовательском интерфейсе Pipelines для переключения между этими двумя режимами. По умолчанию конвейеры работают в режиме разработки.

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

  • Повторно использует кластер, чтобы избежать дополнительных расходов на перезапуски. По умолчанию кластеры выполняются в течение двух часов при включении режима разработки. Это можно изменить с pipelines.clusterShutdown.delay помощью параметра в разделе "Настройка параметров вычислений".
  • Отключает повторные попытки конвейера, чтобы можно было немедленно обнаруживать и исправлять ошибки.

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

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

Примечание.

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

Создание расписания конвейера

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

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

  1. Выберите Расписание > Добавить расписание. Кнопка Расписание обновится и покажет количество существующих расписаний, если конвейер включен в одно или несколько запланированных заданий, например, Расписание (5).
  2. Введите имя задания в поле Имя задания.
  3. Установите для параметра Расписание значение По расписанию.
  4. Укажите период, время начала и часовой пояс.
  5. Настройте один или несколько адресов электронной почты, на которые будут отправляться оповещения о запуске конвейера и об его успешном или неуспешном выполнении.
  6. Нажмите кнопку Создать.