Функции окна в сопоставлении потоков данных

ПРИМЕНИМО К: Azure Data Factory Azure Synapse Analytics

Tip

фабрика Data в Microsoft Fabric — это следующее поколение Azure Data Factory с более простой архитектурой, встроенным ИИ и новыми функциями. Если вы не знакомы с интеграцией данных, начните с Fabric фабрики данных. Существующие рабочие нагрузки ADF могут обновляться до Fabric для доступа к новым возможностям в области обработки и анализа данных, аналитики в режиме реального времени и отчетов.

Потоки данных доступны как в конвейерах Azure Data Factory, так и в Azure Synapse Analytics конвейерах. Эта статья относится к потокам данных для сопоставления. Если вы не знакомы с преобразованиями, ознакомьтесь с вводной статьей "Преобразование данных с помощью сопоставления потоков данных".

В этой статье содержатся сведения о функциях окон, поддерживаемых Azure Data Factory и Azure Synapse Analytics в потоках данных сопоставления.

Список функций окна

Следующие функции доступны только в преобразованиях окна.

Функция окна Task
cumeDist Вычисляет положение значения относительно всех значений в разделе. Результатом является число строк, предшествующих или равных текущей строке в порядке секции, разделенной на общее количество строк в секции окна. Все равнозначные значения в порядке занимают одну и ту же позицию.
denseRank Вычисляет ранг значения в группе значений, указанных в предложении упорядочивания окна. Результатом является число, равное единице плюс количество строк, которые предшествуют текущей строке или равны ей в порядке раздела. Значения не создают пробелы в последовательности. Функция denseRank работает, даже если данные не сортируются и ищут изменения значений.
lag Возвращает значение первого параметра, вычисляемого n строк до текущей строки. Второй параметр — это количество строк для обратного поиска, и значение по умолчанию 1. Если не так много строк, возвращается значение null , если не указано значение по умолчанию.
lead Возвращает значение первого параметра, вычисляемого через n строки после текущей строки. Второй параметр — это число строк, которые нужно просмотреть, а значение по умолчанию — 1. Если не так много строк, возвращается значение null , если не указано значение по умолчанию.
nTile Делит строки для каждой секции окна на n контейнеры, начиная от 1 максимума n. Значения контейнеров отличаются не более чем на 1. Если количество строк в секции не делится равномерно на количество контейнеров, остальные значения распределяются по одному на контейнер, начиная с первого контейнера. Эта NTile функция полезна для вычисления tertiles, квартилей, децилей и других общих статистических данных.

Функция вычисляет две переменные во время инициализации. Размер обычного ведра увеличен на один дополнительный ряд. Обе переменные основаны на размере текущего раздела. В процессе вычисления функция отслеживает текущий номер строки, текущий номер контейнера и номер строки, в котором изменяется контейнер (bucketThreshold). Когда текущий номер строки достигает порогового значения для группы, значение группы увеличивается на единицу. Пороговое значение увеличивается на размер контейнера (плюс один дополнительный, если текущий контейнер заполнен).
rank Вычисляет ранг значения в группе значений, указанных в предложении упорядочивания окна. Результатом является число, равное единице плюс количество строк, которые предшествуют текущей строке или равны ей в порядке раздела. Значения создают пробелы в последовательности. Функция rank работает, даже если данные не сортируются и ищут изменения значений.
rowNumber Назначает последовательное нумерирование строк для строк в окне, начиная с 1.