Встроенные операторы в конструкторе Lakeflow

Конструктор Lakeflow включает встроенные операторы для общих задач подготовки и преобразования данных. Откройте меню оператора в боковой области слева, чтобы просмотреть операторы по категориям или использовать поиск оператора... в верхней части области. Поиск операторов предлагает операторы на основе вашего намерения. Например, ввод average by month возвращает оператор Агрегата . Чтобы настроить оператор после добавления на холст, дважды щелкните его или наведите указатель мыши на него и щелкните значок карандаша. (Изменить оператор), чтобы открыть панель конфигурации.

Меню оператора LFD, в котором отображается поле поиска оператора и операторы, сгруппированные по категориям.

Каждый оператор отображает созданное ИИ описание того, что он делает. Описание также выступает в качестве редактора для оператора: изменение описания перенастройки оператора для сопоставления описания.

Сведения о создании собственных пользовательских операторов см. в разделе "Определяемые пользователем операторы" в конструкторе Lakeflow.

Источник и выходные данные

Source

Импортирует данные в конструктор из таблицы каталога Unity или другого поддерживаемого источника. Чтобы выбрать источник, найдите таблицу или файл по имени или перейдите по каталогу и схеме. Вы также можете создать новую таблицу на этой панели.

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

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

Полный спектр параметров приема данных, включая назначение всего тома каталога Unity или папки, см. в конструкторе Lakeflow для приема данных.

Ввод данных

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

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

Выходные данные

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

Тип выходных данных Description
Table Записывает результаты в управляемую таблицу каталога Unity. Задайте имя таблицы и расположение вывода (каталог и схема), а затем выберите режим записи.
Материализованное представление Публикует результаты в виде материализованного представления в каталоге Unity, которое обновляется при запуске предварительной подготовки визуальных данных.
File Записывает результаты в файл в том каталога Unity. Выберите тип файла CSV, Excel или JSON, а затем задайте целевой том и имя файла.

Для выходных данных таблицы или файла выберите способ выполнения каждой операции записи в место назначения с помощью режима записи:

Режим записи Description
Перезаписать Заменяет существующее содержимое результатами текущего выполнения. Это значение по умолчанию.
Добавить Добавляет результаты текущего запуска в существующие строки.
Merge Строки upserts в целевую таблицу, сопоставляя указанные ключи слияния. Доступно для выходных данных таблицы.

Нажмите кнопку "Выполнить" , чтобы запустить предварительную подготовку визуальных данных и записать результаты. Для выходных данных таблицы, если таблица не существует, оператор создает его. Запланированные запуски записи в место назначения используют тот же режим записи.

Функция ИИ

Выполняет встроенную операцию искусственного интеллекта для данных. В области конфигурации откройте функцию и выберите одну из функций в следующей таблице. Каждая функция предоставляет параметры в области входных данных (например, столбцы, запросы, метки или языки) и выходные данные.

Function Description
ai_analyze_sentiment Выполняет анализ тональности для входного текста.
ai_classify Классифицирует текстовые или проанализированные документы с помощью предоставленных меток.
ai_extract Извлекает структурированные данные из текста или синтаксического анализа документов с помощью заданных полей.
ai_fix_grammar Исправляет грамматические ошибки в тексте.
ai_forecast Прогнозирование данных временных рядов до заданного горизонта. ai_forecast — это табличная функция, которая обрабатывает всю входную таблицу.
ai_gen Ответы на запрос, предоставленный пользователем, против входных данных.
ai_mask Маскирует указанные сущности в тексте (например, для деиденирования).
ai_parse_document Извлекает текст, таблицы и макет из неструктурированных документов.
ai_prep_search Преобразует проанализированные выходные данные документа в блоки, готовые к поиску, для конвейеров векторного поиска и получения дополненного поколения (RAG).
ai_query Ответы на запрос с помощью любой поддерживаемой базовой модели для обеспечения гибкости задач общего назначения и модели.
ai_similarity Сравнивает две строки и возвращает семантический показатель сходства.
ai_summarize Создает сводку текста.
ai_translate Преобразует текст в указанный целевой язык.

Для подробностей каждой функции см. раздел «Преобразование неструктурированных данных с использованием функций ИИ».

Transformations

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

Aggregate

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

Поле Description
Агрегировать по Выберите столбец, выберите функцию агрегирования и укажите имя выходного столбца. Нажмите кнопку +Добавить агрегирование , чтобы добавить дополнительные сведения. Поддерживаемые функции: AVG, COUNT, COUNT DISTINCT, MAXMEAN, MEDIAN, . MINPERCENTILESTDDEVSUMVARIANCE
Группировать по Выберите столбцы для группировки по. Нажмите кнопку +Добавить группирование , чтобы добавить дополнительные сведения. Столбцы, используемые в группе , автоматически включаются в выходные данные.

Объединить

Объединяет данные из нескольких таблиц с сопоставлением схем в один выход.

Поле Description
Набор операций Выберите "Объединение", "Пересекаться" или "Кроме".
Стратегия слияния Выберите "Отдельный" , чтобы исключить повторяющиеся строки из выходных данных или все , чтобы сохранить все строки, включая повторяющиеся.

Unique

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

Поле Description
Уникальное от Выберите «Все столбцы », чтобы удалить одинаковые строки для каждого столбца, или «Выбранные столбцы » — чтобы убрать дублирующиеся строки только в выбранных вами столбцах в качестве ключа.
Заказ по Необязательно: выберите один или несколько столбцов и направление сортировки, чтобы определить, какая строка сохраняется для каждого набора дубликатов. Если вы не задаёте порядок, оператор сохраняет первую очередь, которую встречает.

Фильтр

Разбивает строки на основе того, соответствуют ли они одному или нескольким условиям с помощью графического построителя условий.

Поле Description
Condition Для каждого условия выберите столбец, тип условия и значение для условного сопоставления. Поддерживаемые типы условий:
  • Равно / не равен
  • Является одним из / не является одним из
  • Содержит / не содержит
  • Начинается с / Не начинается с
  • Заканчивается с / Не заканчивается
  • Больше / Меньше
  • Имеет значение NULL / не имеет значения NULL

Для условий столбцов дат средство выбора дат поддерживает навигацию по годам и месяцам.
Когда условие совпадает со значениями столбца (например, Is одно из них), список значений показывает выборку различных значений столбца на основе входных данных. Выберите «Загрузить больше », чтобы получить дополнительные значения по требованию.

Оператор фильтра имеет два выходных данных, чтобы можно было ветвить данные в зависимости от того, соответствуют ли они условиям:

Выходные данные Description
Included Строки, соответствующие условиям фильтра.
Исключено Строки, которые не соответствуют условиям фильтра, включая строки, в которых условие оценивается как null.

Join

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

Поле Description
Входные таблицы Выберите две входные таблицы для соединения.
Условие соединения Укажите хотя бы одно условие соединения, выбрав соответствующие столбцы из двух таблиц. Нажмите кнопку +Добавить выражение соединения , чтобы добавить дополнительные условия. Необязательно. Щелкните стрелку между таблицами влево и вправо, чтобы добавить настраиваемое условие соединения, а затем измените описание, созданное ИИ, или напишите SQL.
Совпадение регистра Если ключи соединения по умолчанию отключены (по умолчанию), ключи соединения строк соответствуют регистру без учета (и пропускают начальный и конечный пробел). Включите регистр match для сопоставления строковых ключей точно. Этот параметр применяется к ключам соединения, а не к пользовательским условиям соединения.
Тип соединения Выберите тип соединения. По умолчанию оператор join разделяет результаты по трем выходным данным (см. следующий раздел). Выберите полное соединение, внутреннее соединение, левое соединение или правое соединение , чтобы создать один объединенный результат.
Выходные столбцы Необязательный параметр: выберите, какие столбцы необходимо включить. По умолчанию все столбцы из обеих таблиц включены. Повторяющиеся имена столбцов получают префикс имени таблицы.
Столбцы настраиваемых выражений Необязательно. Добавьте столбцы настраиваемых выражений на основе присоединенного результата.

По умолчанию оператор join имеет три выходных данных, чтобы вы могли ветвить рабочий процесс на основе результатов соединения:

Выходные данные Description
Осталось несоответветным Строки из левых входных данных, которые не совпадают в правом входе.
Соответствует Строки, соответствующие обоим входным данным.
Право несоответветно Строки из правых входных данных, которые не соответствуют левому входу.

При выборе определенного типа соединения (полный, внутренний, левый или правый) оператор создает один присоединенный результат вместо трех разбиений выходных данных.

Ограничение

Ограничивает количество строк путем передачи только до максимального числа указанных строк.

Поле Description
Максимальное количество строк Укажите максимальное количество строк для передачи.

Pivot

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

Строки → столбцы (сводная таблица)

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

Поле Description
Столбец разворота Выберите столбец, уникальные значения которого становятся новыми заголовками.
Значение и агрегирование Выберите столбец, значения которого заполняют сводные ячейки, и выберите функцию агрегирования (например, , SUM, AVGCOUNTMINMAXили ). Настройте, как обрабатываются отсутствующие значения (например, null или ноль), если они доступны в области.

Столбцы → строки (unpivot)

Сворачивать один или несколько столбцов в строки.

Поле Description
Отмена сводных столбцов Выберите столбцы для отмены сводных данных.
Столбцы ключей и значений Задайте имена для столбцов выходных ключей и значений.

Включение столбцов

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

Sort

Упорядочивает строки для одного или нескольких столбцов.

Поле Description
Порядок сортировки Выберите ASC (возрастание) или DESC (убывание) для каждого столбца. Нажмите кнопку +Добавить выражение сортировки для сортировки по дополнительным столбцам. Сортировка соответствует стандартному лексическому порядку.

SQL

Записывает пользовательский код SQL для любого преобразования, не охватываемого другими операторами.

Поле Description
Редактор SQL Введите инструкцию SQL SELECT . Чтобы ссылаться на выходные данные оператора ввода, используйте это имя оператора в качестве имени таблицы в запросе. Рассмотрим пример.
SELECT COUNT(*)
FROM aggregate_2
WHERE 1 = 1
Нажмите значок кода. Нажмите кнопку, чтобы открыть полную область кода SQL и узнать, как ваша инструкция вписывается в полный рабочий процесс.
Parameters Чтобы ссылаться на параметр подготовки визуальных данных, используйте синтаксис маркера именованных параметров, например :environment. Конструктор показывает пример над редактором при открытии оператора для редактирования. См. параметры.

Выбрать

Выбирает, переименовывает и переупорядочения столбцов из входных данных.

Поле Description
Включение или исключение столбцов Выберите "Начать со всех столбцов" или "Пуск"без столбцов, а затем установите флажки для включения или исключения отдельных столбцов. Перетащите столбцы, чтобы изменить порядок их.
Переименование столбца Введите новое имя в поле "Переименовать " рядом с любым столбцом.
Динамически выбирайте столбцы Вместо того чтобы выбирать столбцы по отдельности, выбирайте столбцы по правилу, чтобы вывод адаптировался по мере изменения входной схемы. Выберите Сохранить сопоставимые столбцы или Удалить соответствующие столбцы, затем сопоставьте столбцы по:
  • Тип данных столбца: Выберите один или несколько типов, таких как булевый, целочисленный, плавающий/двойной, десятичный, строковый (decimal), строка, дата, временная метка или бинарный.
  • Название столбца: Сопоставьте имена, которые начинаются, заканчиваются, содержат или совпадают с регулярным выражением. Включите регистр с чувствительностью, чтобы точно совпасть с регистром.
  • Формула: Напишите булевое выражение, которое оценивается для каждого столбца по его метаданным, используя поля, Nameтакие как , Type, и IsNumeric. Например, IsNumeric AND Name LIKE '%_id' совпадает с числовыми столбцами, название которых заканчивается на _id.

Prepare

Очищает и наследует столбцы путем цепочки одного или нескольких действий по входным данным. Нажмите кнопку +Добавить действие и выберите действие. Добавьте столько действий, сколько вам нужно. Они применяются в порядке.

Действие Description
Формула Создайте столбец или перезаписите существующий столбец с помощью естественного языка или выражения SQL.
Тип изменения Преобразование столбца в другой тип данных.
Заменить значение Поиск и замена значений в столбце.
Заполнение значений NULL Замените значения NULL константой.
Текстовый регистр Измените регистр на нижний, верхний или заголовок.
Trim Удалите пробелы из одного или обоих концов.
Замена регулярных выражений Замените текст, соответствующий шаблону regex.
извлечение Извлеките подстроку, соответствующую группе regex.
Дата синтаксического анализа Анализ строки в метку даты или времени.

Чтобы удалить действие, наведите указатель мыши на строку и щелкните значок Dash..

Настраиваемые столбцы

Действие формулы открывает редактор выражений, где можно создать новый столбец или перезаписать существующий столбец с помощью естественного языка или кода SQL. Редактор имеет два поля ввода и двунаправленный:

  • Описание. Введите описание естественного языка о том, что нужно сделать в столбце. Конструктор использует Genie для создания соответствующего выражения кода ниже.
  • Выражение. Если вы предпочитаете напрямую писать или редактировать код, нажмите кнопку "Изменить выражение". Изменение выражения автоматически создает описание естественного языка.

В редакторе выражений откройте @ меню с входными столбцами оператора и встроенными SQL-функциями. Введите после @ для фильтрации списка, затем выберите запись для её вставки: колонка вставляет своё имя, а функция вставляет свой вызов с курсором, помещённым в скобки. То же @ меню доступно в редакторах выражений других операторов, например, в пользовательских условиях фильтра и присоединения.

Python

Выполняет пользовательские Python (PySpark) для входных данных.

Поле Description
result Назначьте одному кадру resultданных, который становится выходными данными оператора.
inputs["data"] Список входных кадров данных в порядке вышестоящего потока. В области сведений о операторе отображается имя каждого входного элемента в порядке. Например: Available inputs: inputs["data"][0] (customers), inputs["data"][1] (sales).
Parameters Вызовите dbutils.widgets.get(), например dbutils.widgets.get("environment"), ссылку на параметр подготовки визуальных данных. Конструктор показывает пример над редактором при открытии оператора для редактирования. См. параметры.

Минимальный шаблон — использовать первые входные данные при наличии или пустой кадр данных в противном случае:

# inputs["data"] is a list of input DataFrames

result = inputs["data"][0] if inputs["data"] else spark.createDataFrame([], "col: string")

Оттуда можно выполнить цепочку операций DataFrame (например, select, filterwithColumnили присоединений) result до окончания назначения или заменить result новым кадром данных, построенным изinputs["data"].

Во время предварительного просмотра выходные данные оператора поступают в панель вывода по мере их производства, включая всё, что вы рендерите display() , и текст, который вы печатаете, чтобы вы могли увидеть результаты до завершения запуска.

Режим предварительного просмотра Python

При создании визуальной подготовки данных Designer постоянно просматривает результаты каждого оператора на выборке ваших данных. Эти превью запускают ваш код на Python так же, как и полный запуск. Это проблема, когда код вызывает побочные эффекты, такие как вызов внешнего API, отправка уведомлений или запись в систему вне Unity Catalog. Обычно не хочется, чтобы эти побочные эффекты проявлялись на каждом превью.

Чтобы ваш код мог отличить эти вещи, прочитайте config["is_preview"], для вас набор булевого дизайнера:

  • True Во время предварительного просмотра, чтобы можно было пропустить побочные эффекты.
  • False во время полного забега, например, при нажатии Run или во время запланированного забега.

Например, защитить побочные эффекты так, чтобы они действовали только вне превью:

result = inputs["data"][0] if inputs["data"] else spark.createDataFrame([], "col: string")

# Side effects run only on a full run or scheduled job, not during previews.
if not config["is_preview"]:
    write_results_to_external_system(result)

Организации

Note

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

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

Group

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

Поле Description
Добавление в группу Перетащите один или несколько операторов в группу, чтобы добавить их в нее.
Создание из выделенного фрагмента Выберите один или несколько операторов, откройте контекстное меню (щелкните правой кнопкой мыши) и выберите команду "Создать группу ", чтобы упаковать выбор в новую группу.
Name Присвойте группе описательное имя.
Свернуть или развернуть Щелкните свернуть или развернуть , чтобы показать или скрыть содержимое группы на холсте.
Включить/отключить Кликните правой кнопкой мыши по заголовку группы и выберите «Отключить », чтобы исключить всех операторов из запусков, или включить их снова. Отключённые операторы не дают выходных строк, поэтому операторы по следующей линии получают пустой результат, пока вы их не включите. Вы также можете включить или отключить отдельного оператора. См. Включить или отключить операторов.

Visualization

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

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

Поле Description
Visualization Тип диаграммы для отрисовки, например линейчатой, области или счетчика.

Дополнительные ресурсы