Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ПРИМЕНИМО К:
Фабрика данных Azure
Azure Synapse Analytics
Совет
Data Factory в Microsoft Fabric — это следующее поколение Фабрика данных Azure с более простой архитектурой, встроенным ИИ и новыми функциями. Если вы не знакомы с интеграцией данных, начните с Fabric Data Factory. Существующие рабочие нагрузки ADF могут обновляться до Fabric для доступа к новым возможностям в области обработки и анализа данных, аналитики в режиме реального времени и отчетов.
Потоки данных доступны как в конвейерах Фабрика данных Azure, так и в Azure Synapse Analytics конвейерах. Эта статья относится к сопоставлению потоков данных. Если вы не знакомы с преобразованиями, ознакомьтесь с вводной статьей "Преобразование данных с помощью сопоставления потоков данных".
Совет
Эквивалентное преобразование (группирование по) в Dataflow 2-го поколения см. в руководстве по потоку данных 2-го поколения для сопоставления пользователей потока данных.
Агрегационное преобразование определяет агрегирование столбцов в ваших потоках данных. С помощью построителя выражений можно определять различные виды статистических выражений, например SUM, MIN, MAX и COUNT, с группировкой по существующим или вычисляемым столбцам.
Группировать по
Выберите существующий столбец или создайте новый вычисляемый столбец для использования в предложении GROUP BY для вашей агрегации. Существующий столбец можно выбрать из раскрывающегося списка. Чтобы создать новый вычисляемый столбец, наведите указатель мыши на нужное место и щелкните Вычисляемый столбец. Откроется построитель выражений потока данных. Создав вычисляемый столбец, введите имя выходного столбца в поле Имя. Если нужно добавить еще одну клаузулу GROUP BY, наведите указатель мыши на уже имеющуюся клаузулу и щелкните значок "плюс".
В агрегатном преобразовании предложение GROUP BY является необязательным.
Агрегированные столбцы
Для построения статистических выражений перейдите на вкладку Статистические выражения. Можно либо перезаписать данные в существующем столбце с помощью агрегирования, либо создать новое поле с новым именем. Агрегирующее выражение вводится в поле ввода справа от селектора имени столбца. Чтобы изменить выражение, щелкните в этом текстовом поле и откройте построитель выражений. Чтобы добавить дополнительные статистические столбцы, нажмите кнопку Добавить над списком столбцов или значок "плюс" рядом с существующим статистическим столбцом. Выберите Добавить столбец или Добавить шаблон столбца. Каждое статистическое выражение должно содержать по крайней мере одну агрегатную функцию.
Примечание.
В режиме отладки построитель выражений не поддерживает предварительный просмотр данных с агрегатными функциями. Для предварительного просмотра данных агрегатных преобразований закройте построитель выражений и просмотрите данные на вкладке "Предварительный просмотр данных."
Шаблоны столбцов
Чтобы применить одинаковое агрегирование к набору столбцов, можно использовать шаблоны столбцов. Это полезно, если нужно сохранить на постоянной основе много столбцов из входной схемы, так как по умолчанию они удаляются. Чтобы входные столбцы сохранялись в ходе статистической обработки, используйте эвристики, например first().
Повторное соединение строк и столбцов
Агрегатные преобразования похожи на агрегатные SQL запросы SELECT. Столбцы, не входящие в предложение GROUP BY или агрегатные функции, не будут переданы на выход агрегатного преобразования. Если вы хотите включить в результаты преобразования другие столбцы, действуйте одним из следующих способов.
- Используйте для включения нужного дополнительного столбца агрегатную функцию, например
last()илиfirst(). - Повторно присоедините столбцы к выходному потоку, используя шаблон самосоединения.
Удаление дублирующихся строк
Часто преобразование статистической обработки используется для удаления или выявления повторяющихся записей в исходных данных. Это называется дедупликацией. Для определения, какую из дублирующихся строк следует сохранить, на основе набора ключей сортировки используйте выбранную вами эвристику. Распространенные эвристики — first(), last()max() и min(). Чтобы применить правило к каждому столбцу, за исключением столбцов в предложении GROUP BY, используйте шаблоны столбцов.
В приведенном выше примере группировка производится по столбцам ProductID и Name. Если в двух строках значения этих двух столбцов одинаковы, строки считаются дубликатами. В этом преобразовании статистической обработки значения, соответствующие первой строке, будут сохранены, а все остальные будут удалены. Синтаксис шаблона столбцов определяет, что все столбцы, имена которых отличаются от ProductID и Name, сопоставляются с их существующими именами и получают значение из первых совпавших строк. Выходная схема такая же, как и входная.
В сценариях проверки данных функцию count() можно использовать для подсчета дубликатов.
Скрипт потока данных
Синтаксис
<incomingStream>
aggregate(
groupBy(
<groupByColumnName> = <groupByExpression1>,
<groupByExpression2>
),
<aggregateColumn1> = <aggregateExpression1>,
<aggregateColumn2> = <aggregateExpression2>,
each(
match(matchExpression),
<metadataColumn1> = <metadataExpression1>,
<metadataColumn2> = <metadataExpression2>
)
) ~> <aggregateTransformationName>
Пример
В приведенном ниже примере строки из входящего потока MoviesYear группируются по столбцу year. Преобразование создает статистический столбец avgrating, результирующее значение которого — среднее значение столбца Rating. Этому агрегатному преобразованию присвоено имя AvgComedyRatingsByYear.
В пользовательском интерфейсе это преобразование выглядит следующим образом:
Скрипт потока данных для этого преобразования представлен в следующем фрагменте кода:
MoviesYear aggregate(
groupBy(year),
avgrating = avg(toInteger(Rating))
) ~> AvgComedyRatingByYear
MoviesYear: производный столбец, определяющий столбцы года и названия; AvgComedyRatingByYear: преобразование агрегации для среднего рейтинга комедий, сгруппированных по годам; avgrating: имя нового столбца, создаваемого для хранения агрегированного значения.
MoviesYear aggregate(groupBy(year),
avgrating = avg(toInteger(Rating))) ~> AvgComedyRatingByYear
Связанный контент
- Определение оконной агрегации с помощью трансформации окна.