Join operator
FieldMetadata
Bases: NamedTuple
Metadata for tracking field provenance
Source code in blue/operators/join_operator.py
150 151 152 153 154 155 156 157 158 | |
JoinOperator
Bases: Operator
Join operator performs N-way join on JSON array datas.
Attributes:
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
join_on |
list[list[str]] | - | List of join key lists for each data source | |
join_type |
str | "inner" | Type of join: 'inner', 'left', 'right', 'outer' | |
join_suffix |
list[str] | [] | Suffixes for non-key fields | |
keep_keys |
str | "left" | 'left' to keep left keys only, 'both' to keep both |
Source code in blue/operators/join_operator.py
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 | |
join_operator_explainer(output, input_data, attributes)
Generate explanation for join operator execution.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
output
|
Any
|
The output result from the operator execution. |
required |
input_data
|
List[List[Dict[str, Any]]]
|
The input data that was processed. |
required |
attributes
|
Dict[str, Any]
|
The attributes used for the operation. |
required |
Returns:
| Type | Description |
|---|---|
Dict[str, Any]
|
Dictionary containing explanation of the operation. |
Source code in blue/operators/join_operator.py
92 93 94 95 96 97 98 99 100 101 102 103 | |
join_operator_function(input_data, attributes, properties=None)
Perform N-way join on multiple JSON array data sources.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input_data
|
List[List[Dict[str, Any]]]
|
List of JSON arrays (List[List[Dict[str, Any]]]) to join, requires at least 2 data sources. |
required |
attributes
|
Dict[str, Any]
|
Dictionary containing join parameters including join_on, join_type, join_suffix, and keep_keys. |
required |
properties
|
Dict[str, Any]
|
Optional properties dictionary. Defaults to None. |
None
|
Returns:
| Type | Description |
|---|---|
List[List[Dict[str, Any]]]
|
List containing the joined records from all data sources. |
Source code in blue/operators/join_operator.py
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | |
join_operator_validator(input_data, attributes, properties=None)
Validate join operator attributes.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input_data
|
List[List[Dict[str, Any]]]
|
List of JSON arrays (List[List[Dict[str, Any]]]) to validate. |
required |
attributes
|
Dict[str, Any]
|
Dictionary containing operator attributes to validate. |
required |
properties
|
Dict[str, Any]
|
Optional properties dictionary. Defaults to None. |
None
|
Returns:
| Type | Description |
|---|---|
bool
|
True if attributes are valid, False otherwise. |
Source code in blue/operators/join_operator.py
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | |