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


Оператор serialize

Область применения: ✅Microsoft Fabric

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

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

Синтаксис

serialize [Name1=Expr1 [,Name2=Expr2]...]

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Description
Имя string Имя столбца для добавления или обновления. Если опущено, имя выходного столбца создается автоматически.
Expr string ✔️ Вычисление для выполнения входных данных.

Примеры

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

Примеры, приведенные в этой статье, используют общедоступные таблицы в кластера, например таблицу StormEvents в базе данных Samples.

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

Сериализация подмножества строк по условию

Этот запрос извлекает все записи журнала из таблицы traceLogs TraceLogs, которая имеет определенную ClientRequestId и сохраняет порядок этих записей во время обработки.

TraceLogs
| where ClientRequestId == "5a848f70-9996-eb17-15ed-21b8eb94bf0e"
| serialize

выходных

В этой таблице отображаются только первые 5 результатов запроса.

Метка времени Узел Компонент ClientRequestId Сообщение
2014-03-08T12:24:55.5464757Z Engine0000000000757 INGESTOR_GATEWAY 5a848f70-9996-eb17-15ed-21b8eb94bf0e $$IngestionCommand table=fogEvents format=json
2014-03-08T12:24:56.0929514Z Engine0000000000757 ЗАГРУЗЧИК 5a848f70-9996-eb17-15ed-21b8eb94bf0e Скачивание пути к файлу: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_0.json.gz""
2014-03-08T12:25:40.3574831Z Engine0000000000341 INGESTOR_EXECUTER 5a848f70-9996-eb17-15ed-21b8eb94bf0e IngestionCompletionEvent: завершен путь к файлу приема: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_0.json.gz""
2014-03-08T12:25:40.9039588Z Engine0000000000341 ЗАГРУЗЧИК 5a848f70-9996-eb17-15ed-21b8eb94bf0e Скачивание пути к файлу: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_1.json.gz""
2014-03-08T12:26:25.1684905Z Engine00000000000057 INGESTOR_EXECUTER 5a848f70-9996-eb17-15ed-21b8eb94bf0e IngestionCompletionEvent: завершен путь к файлу приема: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_1.json.gz""
... ... ... ... ...

Добавление номера строки в сериализованную таблицу

Чтобы добавить номер строки в сериализованную таблицу, используйте функцию row_number().

TraceLogs
| where ClientRequestId == "5a848f70-9996-eb17-15ed-21b8eb94bf0e"
| serialize rn = row_number()

выходных

В этой таблице отображаются только первые 5 результатов запроса.

Метка времени rn Узел Компонент ClientRequestId Сообщение
2014-03-08T13:00:01.6638235Z 1 Engine0000000000899 INGESTOR_EXECUTER 5a848f70-9996-eb17-15ed-21b8eb94bf0e IngestionCompletionEvent: завершен путь к файлу приема: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_46.json.gz""
2014-03-08T13:00:02.2102992Z 2 Engine0000000000899 ЗАГРУЗЧИК 5a848f70-9996-eb17-15ed-21b8eb94bf0e Скачивание пути к файлу: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_47.json.gz""
2014-03-08T13:00:46.4748309Z 3 Engine0000000000584 INGESTOR_EXECUTER 5a848f70-9996-eb17-15ed-21b8eb94bf0e IngestionCompletionEvent: завершен путь к файлу приема: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_47.json.gz""
2014-03-08T13:00:47.0213066Z 4 Engine0000000000584 ЗАГРУЗЧИК 5a848f70-9996-eb17-15ed-21b8eb94bf0e Скачивание пути к файлу: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_48.json.gz""
2014-03-08T13:01:31.2858383Z 5 Engine0000000000380 INGESTOR_EXECUTER 5a848f70-9996-eb17-15ed-21b8eb94bf0e IngestionCompletionEvent: завершен путь к файлу приема: ""https://benchmarklogs3.blob.core.windows.net/benchmark/2014/IMAGINEFIRST0_1399_48.json.gz""
... ... ... ... ...

Поведение сериализации операторов

Выходной набор строк следующих операторов помечается как сериализованный.

Выходной набор строк следующих операторов помечается как несериализированный.

Все остальные операторы сохраняют свойство сериализации. Если входной набор строк сериализуется, выходной набор строк также сериализуется.