Объяснение Azure Data Factory Mapping Data Flows
Сегодня, с концентрацией на data science, инжиниринге данных и созданием озер и хранилищ данных в облаке, меняющим правила игры, все основные облачные провайдеры продолжают совершенствовать свои услуги и инструменты, связанные с данными.
На этом фронте Microsoft проделала невероятную работу по обновлению и расширению службы Azure Data Factory (ADF) с момента ее первого выпуска. Версия 2 ADF расширила возможности оркестровки, количество поддерживаемых источников и приемников, гибкость планирования и многое другое. Теперь они вводят новую захватывающую функцию в ADF, которая называется Mapping Data Flows (MDF).
Что такое Mapping Data Flows?
Mapping Data Flows (MDF) - это новый способ выполнения операций преобразования данных внутри фабрики данных Azure (ADF) без использования кода. До MDF у ADF действительно не было возможностей трансформации внутри сервиса, это был скорее ELT, чем ETL. Идея заключалась в том, чтобы использовать ADF для перемещения данных, а затем использовать вычислительную мощность приемников данных для выполнения преобразования.
С помощью MDF у нас теперь есть способ создать настоящий ETL с преобразованием, определенным и выполненным из ADF. За кулисами ADF использует службу баз данных Azure для вращения кластеров вверх и вниз, необходимых для выполнения преобразований. Эти потоки данных могут быть интегрированы как один вид деятельности более крупного конвейера, расширяя возможности того, что может быть построено и управляться изнутри ADF, не имея дело с большим количеством внешних сервисов.
Основное ценностное предложение заключается в том, что кодирование не требуется, поэтому инженеры по обработке данных могут просто выполнить быструю работу через дружественный интерфейс, а фактические преобразования могут быть поняты и обработаны другим разработчиком без необходимости знания общего языка программирования.
Интересные функции MDF
Теперь, когда MDF теперь в предварительном просмотре, у нас есть хорошее представление о возможностях и способах работы этой функции, и есть некоторые интересные примечательные характеристики этой функции:
Режим отладки (Debug Mode): это интерактивный способ запуска преобразования с использованием образцов данных. Он не генерирует фактический вывод данных, поэтому он полезен для итеративной разработки без очистки.
Дрейф схемы (Schema Drift): эта функция предлагает некоторые параметры для обработки дрейфа схемы от источников к приемнику, включая опцию сопоставления с образцом столбца.
Панель проверки (Inspect Pane): Эта функция позволяет отслеживать, как меняется ваша схема данных по мере прохождения потока данных, а также визуализировать предварительный просмотр данных, показывающий, как эти данные изменяются.
Оптимизация секционирования (Partitioning optimization): эта функция позволяет вам конфигурировать схемы секционирования и значения для вашего преобразования, чтобы обеспечить локальность данных в узлах кластера Databricks и повысить производительность.
Построитель выражений (Expression Builder): позволяет создавать и преобразовывать столбцы с помощью простого «Excel-подобного» языка функций.
Это лишь некоторые из основных, и скорее всего, по мере развития предложения к этой функции будут добавлены более интересные возможности.
Ценовая модель
Стоимость использования MDF - это стоимость базового кластера Databricks, который фактически будет выполнять вычисления преобразования. Эти кластеры создаются и динамически уничтожаются службой, когда преобразование находится в режиме «отладки» или когда оно фактически выполняется внутри конвейера. Эти расходы исчисляются поминутно, с фиксированной ценой за vcore в кластере.
На данный момент предлагается три различных типа узлов: оптимизированные для вычислений (Compute Optimized), общего назначения (General Purpose) или оптимизированные для памяти (Memory Optimized). Выбор того, какой из них выбрать, будет зависеть от конкретного преобразования и от того, выиграет ли он от большего количества ЦП, большего объема ОЗУ или от простой конфигурации общего назначения.