Combine Nodes
Combine nodes merge multiple datasets by matching values, stacking rows, finding similar records, generating all possible combinations, or grouping related elements in a network.
Some combine nodes are not in Flowfile Lite
The browser-only Flowfile Lite build supports Join, Cross Join, and Union Data. Fuzzy Match and Graph Solver require the full desktop/server build.
Node Details
Join
The Join node merges two datasets based on matching values in selected columns.
Key Features
- Supports seven join types: inner, left, right, full, semi, anti, and cross
- Join on one or more columns
- Handles duplicate column names with automatic renaming
Usage
- Connect two input datasets (left and right).
- Select a join type (see the table below).
- Choose columns to join on (not needed for
cross). - Select which columns to keep from each dataset.
Configuration Options
| Parameter | Description |
|---|---|
| Join Type | inner, left, right, full, semi, anti, or cross. |
| Join Columns | Columns used to match records between datasets. Not required for a cross join. |
Join types:
| Type | Result |
|---|---|
inner |
Only rows with a match in both inputs. |
left |
Every left row; matched right columns, nulls where there is no match. |
right |
Every right row; matched left columns, nulls where there is no match. |
full |
Every row from both inputs, matched where possible. |
semi |
Left rows that have a match on the right — right columns are not added. |
anti |
Left rows that have no match on the right. |
cross |
Every combination of left and right rows (Cartesian product). |
full vs outer
The Join node's dropdown labels the full outer join full. The programmatic API also accepts outer as an alias for the same strategy. For a Cartesian product with no keys, the dedicated Cross Join node is usually clearer than the cross type here.
Fuzzy Match
The Fuzzy Match node joins datasets based on similar values instead of exact matches, using various matching algorithms.
Key Features
- Six string-similarity algorithms:
levenshtein,jaro,jaro_winkler,hamming,damerau_levenshtein, andindel - Configurable similarity threshold
- Calculates match scores
- Joins datasets based on approximate values
Usage
- Connect two datasets (left and right).
- Select columns to match on.
- Choose a fuzzy matching algorithm.
- Set a similarity threshold (0-100; defaults to
80).
Configuration Options
| Parameter | Description |
|---|---|
| Join Columns | Columns used for fuzzy matching. |
| Fuzzy Algorithm | One of levenshtein, jaro, jaro_winkler, hamming, damerau_levenshtein, or indel. |
| Threshold Score | Minimum similarity score for a match, on a scale of 0-100. Defaults to 80. |
Union Data
The Union Data node merges multiple datasets by stacking rows together.
Key Features
- Combines multiple datasets into one
- Automatically aligns columns based on names
- Uses diagonal relaxed mode, allowing flexible column matching
Usage
- Connect multiple input datasets.
- The node will automatically align and stack the data.
Cross Join
The Cross Join node creates all possible combinations between two datasets.
Key Features
- Generates a Cartesian product of two datasets
- Automatically aligns columns
- Handles duplicate column names
Usage
- Connect two datasets (left and right).
- Select the columns that you would like to keep and their output names
- The node will generate all possible row combinations.
Graph Solver
The Graph Solver node groups related records based on connections in a graph-structured dataset.
Key Features
- Identifies connected components in graph-like data
- Groups related nodes into the same category
- Supports custom output column names
Usage
- Select From and To columns to define relationships.
- The node assigns a group identifier to connected nodes.
Configuration Options
| Parameter | Description |
|---|---|
| From Column | Defines the starting point of each connection. |
| To Column | Defines the endpoint of each connection. |
| Output Column | Stores the assigned group identifier. |
Run Flow
The Run Flow node executes another, catalog-registered flow inside the current one — the calling side of a subflow. Its input and output handles are shaped by the child flow's Flow Input and Flow Output nodes, and its settings map values into the child's parameters, including running the child once per row of a driving table.
| Parameter | Description |
|---|---|
| Flow | The catalog-registered child flow to run |
| Parameter bindings | Default, constant, or column-mapped value per child parameter |
| Iteration mode | Run once with the first row's values, or once per row (capped at 1000) |
See Subflows for registration, wiring, and error handling.