Модуль 2. Преобразование данных с помощью потока данных в Фабрике данных
Создание потока данных, применение преобразований и перемещение необработанных данных из таблицы Bronze в таблицу Gold Lakehouse занимает около 25 минут.
Важно!
Microsoft Fabric в настоящее время находится на этапе предварительной версии. Эта информация относится к предварительной версии продукта, который может быть существенно изменен перед выпуском. Корпорация Майкрософт не дает никаких гарантий, явных или подразумеваемых, в отношении информации, представленной здесь. См. Фабрика данных Azure документацию по службе в Azure.
С помощью необработанных данных, загруженных в таблицу Bronze Lakehouse из последнего модуля, вы можете подготовить эти данные и обогатить их, объединив их с другой таблицей, содержащей скидки для каждого поставщика и его поездок в течение определенного дня. Эта окончательная таблица Gold Lakehouse загружена и готова к употреблению.
Ниже приведены общие шаги в потоке данных.
- Получите необработанные данные из таблицы Lakehouse, созданной действие Copy в модуле 1. Создание конвейера с помощью фабрики данных.
- Преобразуйте данные, импортированные из таблицы Lakehouse.
- Подключитесь к CSV-файлу с данными о скидках.
- Преобразование данных о скидках.
- Объединение данных о поездках и скидках.
- Загрузите выходной запрос в таблицу Gold Lakehouse.
Получение данных из таблицы Lakehouse
На боковой панели выберите Создать, а затем Поток данных 2-го поколения (предварительная версия), чтобы создать новый поток данных 2-го поколения.
В меню нового потока данных выберите Получить данные, а затем — Дополнительно....
Найдите и выберите соединитель Lakehouse .
Откроется диалоговое окно Подключение к источнику данных , и для вас автоматически создается новое подключение с учетом текущего пользователя, выполнившего вход. Выберите Далее.
Откроется диалоговое окно Выбор данных . В области навигации найдите объект Lakehouse, созданный для назначения в предыдущем модуле, и выберите таблицу данных nyc_taxi.
(Необязательно) После заполнения холста данными можно задать сведения о профиле столбца , так как это полезно для профилирования данных. Вы можете применить правильное преобразование и нацелить на него правильные значения данных.
Для этого выберите Параметры на панели ленты, выберите первые три параметра в разделе Профиль столбца и нажмите кнопку ОК.
Преобразование данных, импортированных из Lakehouse
Щелкните значок типа данных в заголовке столбца второго столбца IpepPickupDatetime, чтобы отобразить раскрывающееся меню, и выберите тип данных в меню, чтобы преобразовать столбец из типа Date/Time в тип Date .
(Необязательно) На вкладке Главная ленты выберите параметр Выбрать столбцы в группе Управление столбцами .
(Необязательно) В диалоговом окне Выбор столбцов отмените выбор некоторых столбцов, перечисленных здесь, а затем нажмите кнопку ОК.
- lpepDropoffDatetime
- puLocationId
- doLocationId
- pickupLongitude
- pickupLatitude
- dropoffLongitude
- dropoffLatitude
- rateCodeID
Выберите раскрывающееся меню фильтра и сортировки столбца storeAndFwdFlag . (Если отображается предупреждение Список может быть неполным, выберите Загрузить больше , чтобы просмотреть все данные.)
Выберите "Y", чтобы отобразить только строки, в которых была применена скидка, а затем нажмите кнопку ОК.
Выберите раскрывающееся меню Ipep_Pickup_Datetime сортировки и фильтрации столбцов, выберите Фильтры даты и выберите фильтр Между... , предоставленный для типов даты и даты и времени.
В диалоговом окне Фильтрация строк выберите даты между 1 января 2015 г. и 31 января 2015 г., а затем нажмите кнопку ОК.
Подключение к CSV-файлу с данными о скидках
Теперь, когда данные из поездок на месте, мы хотим загрузить данные, содержащие соответствующие скидки на каждый день и VendorID, и подготовить данные, прежде чем объединять их с данными о поездках.
На вкладке Главная в меню редактора потока данных выберите параметр Получить данные , а затем выберите Текст/CSV.
В диалоговом окне Подключение к источнику данных укажите следующие сведения:
- Путь к файлу или URL-адрес - https://raw.githubusercontent.com/ekote/azure-architect/master/Generated-NYC-Taxi-Green-Discounts.csv
- Тип проверки подлинности — анонимный
Нажмите кнопку Далее.
В диалоговом окне Предварительный просмотр данных файла выберите Создать.
Преобразование данных о скидках
При просмотре данных мы видим, что заголовки отображаются в первой строке. Повысьте их до заголовков, выбрав контекстное меню таблицы в левом верхнем углу области сетки предварительного просмотра, чтобы выбрать Использовать первую строку в качестве заголовков.
Примечание
После повышения уровня заголовков вы увидите новый шаг, добавленный в область Примененные шаги в верхней части редактора потока данных для типов данных столбцов.
Щелкните правой кнопкой мыши столбец VendorID и в появиющемся контекстном меню выберите параметр Отменить свертывание других столбцов. Это позволяет преобразовывать столбцы в пары "атрибут-значение", где столбцы становятся строками.
Не свернув таблицу, переименуйте столбцы Атрибут и Значение , дважды щелкнув их и изменив значение Атрибут на Дата , а Значение — на Скидка.
Измените тип данных столбца Date, выбрав меню типа данных слева от имени столбца и выбрав Дата.
Выберите столбец Скидка , а затем перейдите на вкладку Преобразование в меню. Выберите Числовой столбец, а затем выберите Стандартные числовые преобразования из подменю и нажмите кнопку Разделить.
В диалоговом окне Деление введите значение 100.
Объединение данных о поездках и скидках
Следующим шагом является объединение обеих таблиц в одну таблицу со скидкой, которая должна применяться к поездке, и скорректированным итогом.
Сначала переключите кнопку Представление диаграммы , чтобы просмотреть оба запроса.
Выберите запрос nyc_taxi , а затем на вкладке Главная откройте меню Объединить и выберите Объединить запросы, а затем — Объединить запросы как новые.
В диалоговом окне Слияние выберите Generated-NYC-Taxi-Green-Discounts в раскрывающемся списке Right table for merge (Правая таблица для слияния ), а затем щелкните значок "Лампочка" в правом верхнем углу диалогового окна, чтобы увидеть предлагаемое сопоставление столбцов между двумя таблицами.
Выберите каждое из двух предлагаемых сопоставлений столбцов, по одному, сопоставляя столбцы VendorID и date из обеих таблиц. При добавлении обоих сопоставлений соответствующие заголовки столбцов выделяются в каждой таблице.
Появится сообщение с просьбой разрешить объединение данных из нескольких источников данных для просмотра результатов. Нажмите кнопку ОК в диалоговом окне Слияние .
В области таблицы вы увидите предупреждение о том, что "Оценка была отменена, так как объединение данных из нескольких источников может отобразить данные из одного источника в другой. Выберите Продолжить, если возможность раскрытия данных в порядке". Нажмите кнопку Продолжить , чтобы отобразить объединенные данные.
Обратите внимание, что в представлении диаграммы был создан новый запрос, показывающий связь нового запроса слиянием с двумя ранее созданными запросами. В области таблицы редактора прокрутите вправо от списка Столбец запроса слияние, чтобы увидеть новый столбец со значениями таблицы. Это столбец "Generated NYC Taxi-Green-Discounts" (Созданные NYC Taxi-Green-Discounts) и его типом [Таблица]. В заголовке столбца есть значок с двумя стрелками, которые идут в противоположных направлениях, что позволяет выбирать столбцы из таблицы. Отмените выбор всех столбцов, кроме скидки, а затем нажмите кнопку ОК.
Теперь, когда значение скидки на уровне строки, можно создать новый столбец, чтобы вычислить общую сумму после скидки. Для этого выберите вкладку Добавить столбец в верхней части редактора и выберите Настраиваемый столбец в группе Общие .
В диалоговом окне Настраиваемый столбец можно использовать язык формул Power Query (также известный как M), чтобы определить способ вычисления нового столбца. Введите TotalAfterDiscount в поле Имя нового столбца, выберите Валюта в поле Тип данных и укажите следующее выражение M для формулы Настраиваемого столбца:
if [totalAmount] > 0 then [totalAmount] * ( 1 -[Discount] ) else [totalAmount]
Нажмите кнопку ОК.
Выберите только что созданный столбец TotalAfterDiscount и перейдите на вкладку Преобразование в верхней части окна редактора. В группе столбцов Число выберите раскрывающийся список Округление и выберите Округление....
В диалоговом окне Округление введите 2 для числа десятичных разрядов и нажмите кнопку ОК.
Измените тип данных IpepPickupDatetime с Date на Date/Time.
Наконец, разверните панель Параметры запроса в правой части редактора, если она еще не развернута, и переименуйте запрос с Merge на Output.
Загрузка выходного запроса в таблицу в Lakehouse
Теперь, когда выходной запрос полностью подготовлен и данные готовы к выводу, можно определить назначение выходных данных для запроса.
Выберите созданный ранее запрос на объединение выходных данных . Затем выберите вкладку Главная в редакторе и добавить назначение данных из группирования запросов , чтобы выбрать назначение Lakehouse .
В диалоговом окне Подключение к назначению данных подключение уже должно быть выбрано. Нажмите кнопку Далее, чтобы продолжить.
В диалоговом окне Выбор целевого объекта назначения перейдите в lakehouse, куда вы хотите загрузить данные, и присвойте новой таблице имя nyc_taxi_with_discounts, а затем нажмите кнопку Далее еще раз.
В диалоговом окне Выбор параметров назначения оставьте значение по умолчанию Заменить метод обновления, дважды проверка правильность сопоставления столбцов и выберите Сохранить параметры.
В окне редактора main убедитесь, что вы видите назначение выходных данных на панели Параметры запроса для таблицы Выходные данные, а затем выберите Опубликовать.
(Необязательно) На странице рабочей области можно переименовать поток данных, щелкнув многоточие справа от имени потока данных, которое отображается после выбора строки, и выбрав Свойства.
Щелкните значок обновления для потока данных после выбора его строки, и по завершении вы увидите новую таблицу Lakehouse, созданную в соответствии с настройками в параметрах назначения данных .
Проверьте Lakehouse, чтобы просмотреть новую таблицу, загруженную в нее.
Дальнейшие действия
В этом втором модуле для нашего комплексного руководства по первой интеграции данных с помощью Фабрики данных в Microsoft Fabric вы узнали, как выполнять следующие действия:
- Создайте новый поток данных 2-го поколения.
- Импорт и преобразование примеров данных.
- Импорт и преобразование текстовых и CSV-данных.
- Объедините данные из обоих источников данных в новый запрос.
- Преобразование данных и создание новых столбцов в запросе.
- Настройка источника назначения выходных данных для запроса.
- Переименуйте и обновите новый поток данных.
Перейдите к следующему разделу, чтобы интегрировать конвейер данных.