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


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

ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics

Совет

Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !

В этом руководстве вы используете интерфейс пользователя Azure Data Factory для создания пайплайна, который копирует и преобразует данные из источника Azure Data Lake Storage (ADLS) 2-го поколения в приемник ADLS 2-го поколения с использованием сопоставления потока данных. Шаблон конфигурации, приведенный в этом кратком руководстве, можно расширить при преобразовании данных с использованием функции сопоставления потоков данных

Данное руководство предназначено для отображения потоков данных в целом. Потоки данных доступны как в Фабрике данных Azure, так и в Synapse Pipelines. Если вы не знакомы с потоками данных в Azure Synapse Pipelines, следуйте инструкциям по потоку данных с помощью Azure Synapse Pipelines.

В этом руководстве вы выполните следующие шаги:

  • Создали фабрику данных.
  • Создайте конвейер с активностью потока данных.
  • Постройте карту потока данных с четырьмя преобразованиями.
  • тестовый запуск конвейера;
  • Мониторинг активности потока данных

Предварительные условия

  • Подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.
  • Учетная запись Azure Data Lake Storage 2-го поколения. Хранилище ADLS используется в качестве хранилища данных источника и приемника. Если у вас нет учетной записи хранения, создайте ее, следуя действиям в этом разделе.
  • Скачайте MoviesDB.csv здесь. Чтобы извлечь файл из GitHub, скопируйте его содержимое в любой текстовый редактор, а затем сохраните его на локальном компьютере в виде CSV-файла. Отправьте файл в учетную запись хранения в контейнере с именем sample-data.

Создание фабрики данных

На этом этапе вы создадите фабрику данных и откроете пользовательский интерфейс службы "Фабрика данных" для создания конвейера в фабрике данных.

  1. Откройте Microsoft Edge или Google Chrome. Сейчас пользовательский интерфейс Фабрики данных поддерживают только браузеры Microsoft Edge и Google Chrome.

  2. В верхнем меню выберите Создать ресурс>Аналитика>Фабрика данных :

    Выбор фабрики данных в панели

  3. На странице Новая фабрика данных в поле Имя введите ADFTutorialDataFactory.

    Имя фабрики данных Azure должно быть глобально уникальным. Если вы увидите сообщение об ошибке касающееся значения имени, введите другое имя для фабрики данных. (Например, используйте yournameADFTutorialDataFactory.) Для получения информации о правилах именования артефактов фабрики данных см. правила именования фабрики данных.

    Новое сообщение об ошибке в фабрике данных о дублирующемся имени.

  4. Выберите подписку Azure, в рамках которой вы хотите создать фабрику данных.

  5. Для группы ресурсов выполните одно из следующих действий:

    1. Выберите Использовать существующуюи укажите существующую группу ресурсов в раскрывающемся списке.

    2. Выберите Создать новуюи укажите имя группы ресурсов.

    Чтобы узнать о группах ресурсов, см. статью Использование групп ресурсов для управления ресурсами Azure.

  6. В качестве версии выберите V2.

  7. В разделе "Регион" выберите расположение фабрики данных. В раскрывающемся списке отображаются только поддерживаемые местоположения. Хранилища данных (например, служба хранилища Azure и База данных SQL) и вычислительные ресурсы (например, Azure HDInsight), используемые фабрикой данных, могут располагаться в других регионах.

  8. Выберите Просмотр + Создание, а затем выберите Создать.

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

  10. Выберите "Запустить студию" , чтобы запустить студию Фабрики данных на отдельной вкладке.

Создание конвейера с помощью действия "Поток данных"

На этом этапе вы создаете конвейер, включающий действие потока данных.

  1. На домашней странице пользовательского интерфейса Фабрики данных выберите элемент Оркестрация.

    Снимок экрана: домашняя страница Фабрики данных Azure.

  2. Теперь открылась возможность для нового трубопровода. На вкладке "Общие " для свойств конвейера введите TransformMovies для имени конвейера.

  3. В области Действия разверните аккордеон Перемещение и преобразование. Перетащите активность Поток данных из панели на холст конвейера.

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

  4. Назовите действие потока данных DataFlow1.

  5. На верхней панели холста конвейера продвиньте ползунок Отладка потока данных. Режим отладки позволяет в интерактивном режиме тестировать логику преобразования в динамическом кластере Spark. Подготовка кластеров Потоков данных занимает 5–7 минут, поэтому пользователям рекомендуем сначала включить отладку, если планируется разработка Потока данных. Дополнительные сведения см. в статье Режим отладки.

    Снимок экрана: переключатель для включения отладки потока данных.

Построение логики преобразования в интерфейсе потока данных

На этом шаге создается поток данных, который принимает moviesDB.csv в хранилище ADLS и объединяет средний рейтинг комедий с 1910 по 2000 год. Затем вы записываете этот файл обратно в хранилище ADLS.

  1. На панели под холстом перейдите к параметрам действия потока данных и выберите "Создать", расположенный рядом с полем потока данных. Откроется холст потока данных.

    Снимок экрана: открытие редактора потока данных из редактора конвейера.

  2. В области "Свойства " в разделе "Общие" назовите поток данных: TransformMovies.

  3. На холсте потока данных добавьте источник, выбрав поле "Добавить источник ".

    Снимок экрана с кнопкой

  4. Присвойте источнику имя MoviesDB. Выберите Создать, чтобы создать исходный набор данных.

    Снимок экрана, на котором показано, как выбрать

  5. Выберите Azure Data Lake Storage 2-го поколения. Нажмите Продолжить.

    Снимок экрана, показывающий, где находится плитка Azure Data Lake Storage Gen2.

  6. Выберите DelimitedText. Нажмите Продолжить.

    Снимок экрана, где показан элемент DelimitedText.

  7. Присвойте набору данных имя MoviesDB. В раскрывающемся списке "Связанная служба" выберите Создать.

    Снимок экрана, на котором показан раскрывающийся список связанных служб.

  8. На экране создания связанной службы присвойте имя связанной службе ADLS 2-го поколения ADLSGen2 и укажите метод проверки подлинности. Затем введите учетные данные подключения. В этом руководстве мы используем ключ учетной записи для подключения к нашей учетной записи хранения. Чтобы проверить правильность ввода учетных данных, можно выбрать тестовое подключение . Нажмите кнопку "Создать" по завершении.

    Снимок экрана: панель создания связанной службы для Azure Data Lake Storage.

  9. Вернитесь на экран создания набора данных и в поле Путь к файлу введите расположение файла. В этом кратком руководстве файл moviesDB.csv находится в контейнере sample-data. Так как файл содержит заголовки, установите флажок Первая строка в качестве заголовка. Выберите Из подключения/хранилища, чтобы импортировать схему заголовка напрямую из файла, находящегося в хранилище. После завершения нажмите кнопку "ОК".

    Снимок экрана: панель создания набора данных.

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

    Снимок экрана, на котором показано, где можно просмотреть данные, чтобы убедиться, что преобразование настроено правильно.

  11. Выберите значок "плюс" рядом с узлом источника на холсте потока данных, чтобы добавить новое преобразование. Первое добавляемое преобразование — Фильтр.

    Снимок экрана: холст потока данных.

  12. Назовите преобразование фильтра FilterYears. Выберите поле выражения рядом с Фильтр и затем Открыть построитель выражений. Здесь вы указываете условие фильтрации.

    Снимок экрана, на котором отображается поле

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

    В этом кратком руководстве будут отфильтрованы фильмы в жанре комедия, которые вышли между 1910 и 2000 годами. В связи с тем, что в настоящее время год является строкой, ее необходимо преобразовать в целое число с помощью функции toInteger(). Используйте операторы "больше или равно" (>=) и "меньше или равно" (<=) для сравнения значений года с литералами 1910 и 2000. Объедините эти выражения с помощью оператора AND (&&). Выражение будет выглядеть следующим образом:

    toInteger(year) >= 1910 && toInteger(year) <= 2000

    Чтобы узнать, какие фильмы являются комедиями, можно использовать функцию rlike(), позволяющую найти слово "комедия" в жанрах столбца. Объедините выражение rlike с выражением сравнения года и получите следующее выражение:

    toInteger(year) >= 1910 && toInteger(year) <= 2000 && rlike(genres, 'Comedy')

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

    Снимок экрана: построитель выражений фильтра.

    После завершения работы с выражением нажмите кнопку "Сохранить и готово ".

  14. Нажмите Предварительный просмотр данных, чтобы убедиться, что фильтр работает правильно.

    Снимок экрана, на котором показан

  15. Следующее преобразование, которое необходимо добавить — это преобразование Агрегат в разделе Модификатор схемы.

    Снимок экрана, на котором показан модификатор схемы

  16. Назовите агрегатное преобразование AggregateComedyRatings. На вкладке Группировка выберите год из раскрывающегося списка, чтобы сгруппировать агрегаты по году, в котором вышел фильм.

    Снимок экрана, показывающий параметр year на вкладке

  17. Перейдите на вкладку Статистическая обработка. В левом текстовом поле присвойте столбцу имя AverageComedyRating. Выберите правое поле выражения, чтобы ввести статистическое выражение с помощью построителя выражений.

    Скриншот, демонстрирующий параметр

  18. Чтобы получить среднее значение столбца Оценка, используйте агрегатную функцию avg(). Так как оценка является строковым значением, а avg() принимает числовые входные данные, необходимо преобразовать значение в число с помощью функции toInteger(). Это выражение выглядит следующим образом:

    avg(toInteger(Rating))

    Нажмите кнопку "Сохранить" и "Готово " после завершения.

    Снимок экрана, на котором показано сохраненное выражение.

  19. Откройте вкладку Предварительный просмотр данных, чтобы просмотреть выходные данные преобразования. Обратите внимание, что здесь есть только два столбца: year и AverageComedyRating.

    Снимок экрана, на котором показан общий предварительный просмотр.

  20. Затем необходимо добавить преобразование Слив под Назначение.

    Снимок экрана, где добавляется преобразование

  21. Назовите раковину Sink. Выберите Новое, чтобы создать набор данных приемника.

    Снимок экрана, на котором показано, как присвоить имя приемнику и создать новый набор данных приемника.

  22. Выберите Azure Data Lake Storage 2-го поколения. Нажмите Продолжить.

    Снимок экрана, показывающий элемент

  23. Выберите DelimitedText. Нажмите Продолжить.

    Снимок экрана: панель для выбора типа набора данных.

  24. Назовите набор данных приемника MoviesSink. В качестве связанной службы выберите связанную службу ADLS 2-го поколения, созданную на шаге 6. Введите выходную папку для записи данных. В этом кратком руководстве мы записываем данные в папку output в контейнере sample-data. Папка не обязательно должна существовать заранее и может быть создана динамически. Задайте для параметра Использовать первую строку в качестве заголовка значение "истина" и выберите значение Нет для параметра Импорт схемы. Нажмите кнопку "Готово".

    Снимок экрана: страница создания приемника с первой строкой в качестве заголовка.

Теперь создание потока данных завершено. Все готово для его запуска в конвейере.

Запуск и отслеживание Потока данных

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

  1. Перейдите на холст конвейера. Нажмите кнопку Отладка, чтобы запустить отладку.

    Снимок экрана, на котором показан холст конвейера с выделенным пунктом

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

    Снимок экрана: состояние завершенной конвейерной цепочки с выделенными действиями на выходе.

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

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

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

  4. Щелкните преобразование, чтобы получить подробные сведения о столбцах и секционировании данных.

    Снимок экрана области мониторинга преобразований.

Если все действия в этом кратком руководстве выполнены правильно, то в папку приемника должны быть записаны 83 строки и 2 столбца. Данные можно проверить, проверив хранилище BLOB-объектов.

Процесс в этом руководстве обрабатывает поток данных, который вычисляет средний рейтинг комедий с 1910 по 2000 год и записывает данные в ADLS. Вы научились выполнять следующие задачи:

  • Создали фабрику данных.
  • Создайте конвейер с использованием действия Потока данных.
  • создание потока данных для сопоставления с четырьмя преобразованиями;
  • тестовый запуск конвейера;
  • Мониторинг активности Потока данных

Дополнительные сведения о языке выражений потока данных.