Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Проект dlt-meta из Databricks Labs предоставляет средства для создания конвейеров из метаданных, которые вы поддерживаете.
Замечание
Проект dlt-meta с открытым кодом, как и все проекты в учетной записи GitHub databrickslabs, существует только для целей изучения. Azure Databricks не поддерживает его или предоставляет соглашения об уровне обслуживания (SLA) для него. Не отправляйте запросы в службу поддержки Azure Databricks для проблем, связанных с этим проектом. Вместо этого создайте GitHub issue, который будет рассмотрен по мере возможности.
Что такое dlt-meta?
Конвейеры Lakeflow позволяют декларативно указывать таблицу и генерировать поток в конвейере, который создает таблицу и сохраняет его в актуальном состоянии при изменении исходных данных. Однако если в вашей организации есть сотни таблиц, создание и управление этими конвейерами занимает много времени и может привести к несогласованным методикам.
Проект dlt-meta — это платформа метапрограммирования на основе метаданных, предназначенная для работы с конвейерами Lakeflow. Эта платформа обеспечивает автоматизацию конвейеров бронзовых и серебряных данных путем использования метаданных, записанных в наборе файлов JSON и YAML. Модуль dlt-meta использует код Python для динамического создания кода конвейера для потоков, описанных в метаданных. Вы создаете метаданные о конвейерах, а dlt-meta создает конвейеры.
Благодаря тому, что вся логика централизована в одном месте — в метаданных, ваша система работает быстрее, её можно повторно использовать, и её легче поддерживать.
Замечание
Проект dlt-meta был назван для более старой функции Delta Live Tables в Azure Databricks. Delta Live Tables были заменены на конвейеры Lakeflow, а dlt-meta работает с конвейерами Lakeflow.
Преимущества dlt-meta
Существует два основных варианта использования dlt-meta:
- Легко загружайте и очищайте большое количество таблиц.
- Обеспечьте соблюдение стандартов проектирования и обработки данных в нескольких конвейерах и для разных пользователей.
Преимущества использования подхода на основе метаданных:
- Обслуживание метаданных можно сделать без знания кода Python или SQL.
- Обслуживание метаданных, а не кода, требует меньше накладных расходов и уменьшает ошибки.
- Код создается dlt-meta, поэтому он остается согласованным и имеет меньше пользовательского кода в конвейерах и опубликованных таблицах.
- Таблицы можно легко группировать в конвейеры в метаданных, создавая количество конвейеров, необходимых для наиболее эффективного обновления данных.
Как работает dlt-meta
На следующем рисунке показан обзор системы dlt-meta:
- Файлы метаданных создаются в качестве входных данных для dlt-meta, чтобы указать исходные файлы и выходные данные, правила качества и необходимую обработку.
- Подсистема dlt-meta компилирует файлы подключения в спецификацию потока данных с именем DataflowSpec и сохраняет его для последующего использования.
- Модуль dlt-meta использует DataflowSpec для создания конвейеров, которые генерируют ваши таблицы bronze. Это использует файлы метаданных для чтения исходных данных и применения правильных ожиданий данных в соответствии с правилами качества.
- Затем модуль dlt-meta использует DataflowSpec для создания дополнительных конвейеров, которые создают ваши таблицы Silver. В этом случае файлы метаданных используются для применения соответствующих преобразований и другой обработки для системы.
Вы запускаете конвейеры, созданные dlt-meta, чтобы поддерживать выходные данные в актуальном состоянии по мере обновления исходных данных.
Начало работы
Чтобы использовать dlt-meta, необходимо:
- Разверните и настройте решение dlt-meta.
- Подготовьте метаданные для таблиц бронзового и серебряного слоя.
- Создайте задание для подключения метаданных.
- Используйте метаданные для создания конвейеров для таблиц.
В документации по dlt-meta на GitHub есть учебник, который поможет вам приступить к работе с этим процессом. Дополнительные сведения см. в статье о начале работы с dlt-meta на GitHub.