HoistField¶
The following provides usage information for the Apache Kafka® SMT org.apache.kafka.connect.transforms.HoistField
.
Description¶
If the data has a schema, wrap data using the specified field name in a Struct; if the data does not have a schema, wrap data using the specified field name in a Map.
Use the concrete transformation type designed for the record key (org.apache.kafka.connect.transforms.HoistField$Key
) or value (org.apache.kafka.connect.transforms.HoistField$Value
).
Example¶
The configuration snippet below shows how to use HoistField
to wrap the
field name in a Struct.
"transforms": "HoistField",
"transforms.HoistField.type": "org.apache.kafka.connect.transforms.HoistField$Value",
"transforms.HoistField.field": "line"
Messages sent:
Foo
Bar
Topic result:
{"line":"Foo"}
{"line":"Bar"}
Tip
For additional examples, see Hoist Field for managed connectors.
Properties¶
Name | Description | Type | Default | Valid Values | Importance |
---|---|---|---|---|---|
field |
Field name for the single field that will be created in the resulting Struct or Map. | string | non-empty list | medium |
Predicates¶
Transformations can be configured with predicates so that the transformation is applied only to records which satisfy a condition. You can use predicates in a transformation chain and, when combined with the Filter (Apache Kafka), predicates can conditionally filter out specific records. For details and examples, see Predicates.