Все ноды/Data/DataFrame Ops

DF: соединение

SQL JOIN двух DataFrame: inner/left/right/outer/cross. Подключите левую таблицу к ``left``, правую — к ``right``.

DF: соединение
LeftSuccess
RightError

Тип в графе: df_merge

Exec

Можно включить ветку ошибки (expose_error_output) и обработать сбой отдельным путём.

Порты можно разделить на исполнение и данные (split ports).

Как попробовать

Минимальный рабочий воркфлоу

Вход
DF: соединение
Выход
  • Исполнение + данные
Нажмите «Скопировать ноды», откройте редактор и нажмите Ctrl+V на холсте.

Запускается сразу

Как применять

Соединяет две таблицы по общим ключам — SQL JOIN: к строкам заказов подтягиваются данные клиентов, к выгрузке из CRM — цены из прайса. Если таблицы одинаковы по смыслу и их надо просто поставить одну под другую, это df_concat.

Два входа устроены по-разному. «Left» принимает и выполнение, и значение: приход по нему запускает ноду. «Right» — только значение, он ничего не запускает, а лишь читает то, что уже посчитано.

Как это работает

«Тип» задаёт семантику: inner оставляет только строки с парой, left и right сохраняют все строки соответствующей стороны, outer — все с обеих, cross соединяет каждую строку слева с каждой справа.

«Ключи объединения» — колонки, которые обязаны совпадать в обеих таблицах и называться одинаково. У cross ключей нет по определению, поэтому в этом режиме поле скрывается.

Одноимённые неключевые колонки не конфликтуют: к левой добавляется _left, к правой _right. Суффиксы можно поменять в дополнительных настройках.

Частые ошибки

  • Правая ветка не успела посчитаться. Порт «Right» ноду не запускает, поэтому ветка, готовящая правую таблицу, должна отработать раньше по цепочке выполнения. Иначе нода падает, сообщая, что на входе не таблица.
  • Ключ называется по-разному. client_id слева и id справа не соединятся — переименуйте колонку через df_select перед соединением.
  • Разные типы ключа. Число слева и текст справа: pandas отказывается соединять такие колонки и роняет ноду.
  • Пустые ключи при типе, отличном от cross. Граф не пройдёт проверку.

Входы

ПортПроводДанныеПримечания
LeftleftИсполнение + данныеexecute_datadataframe
RightrightДанныеdatadataframe

Выходы

ПортПроводДанныеПримечания
SuccessoutputИсполнение + данныеexecute_datadataframe
Erroron_errorИсполнение + данныеexecute_data

показывается, когда expose_error_output = true

Настройки

ПолеТипПо умолчаниюОписание
Типhowstringinner

Семантика объединения. ``cross`` соединяет каждую строку слева с каждой строкой справа.

Варианты: inner, left, right, outer, cross

Ключи объединенияonarray<string>

Столбцы, которые должны совпадать в обеих таблицах.

показывается при how = inner | left | right | outer

Дополнительно
Суффикс для коллизий слеваleft_suffixstring_left

Добавляется к столбцу левой таблицы, имя которого встречается и в правой.

Суффикс для коллизий справаright_suffixstring_right

Добавляется к столбцу правой таблицы, имя которого встречается и в левой.

Общие поля

Эти три поля есть у каждой ноды: платформа добавляет их сама, а не автор ноды.

  • expose_error_output — Если включено, показывает выход выполнения для подключения нод, которые запускаются при сбое этого шага.
  • split_ports_in — Показывать отдельные порты входа для выполнения и данных вместо одного объединённого.
  • split_ports_out — Показывать отдельные порты выхода для выполнения и данных вместо одного объединённого.