RecordDeAggregationProcessor

class aws_cdk.aws_kinesisfirehose.RecordDeAggregationProcessor(*, sub_record_type, delimiter=None)

Bases: object

The data processor for multi record deaggrecation.

Record deaggregation by JSON or by delimiter is capped at 500 per record.

See:

https://docs.aws.amazon.com/firehose/latest/dev/dynamic-partitioning-multirecord-deaggergation.html

ExampleMetadata:

infused

Example:

# bucket: s3.Bucket

s3_destination = firehose.S3Bucket(bucket,
    dynamic_partitioning=firehose.DynamicPartitioningProps(enabled=True),
    processors=[
        firehose.RecordDeAggregationProcessor.json()
    ]
)
Parameters:
  • sub_record_type (SubRecordType) – The sub-record type to deaggregate input records.

  • delimiter (Optional[str]) – The custom delimiter when subRecordType is DELIMITED. Must be specified in the base64-encoded format. Default: - No delimiter

Methods

bind(scope, *, role, dynamic_partitioning_enabled=None, prefix=None)

Binds this processor to a destination of a delivery stream.

Implementers should use this method to grant processor invocation permissions to the provided stream and return the necessary configuration to register as a processor.

Parameters:
  • scope (Construct)

  • role (IRole) – The IAM role assumed by Amazon Data Firehose to write to the destination that this DataProcessor will bind to.

  • dynamic_partitioning_enabled (Optional[bool]) – Whether the dynamic partitioning is enabled. Default: false

  • prefix (Optional[str]) – S3 bucket prefix. Default: - No prefix

Return type:

DataProcessorConfig

Attributes

props

The constructor props of the DataProcessor.

Static Methods

classmethod delimited(delimiter)

Perform deaggregation based on a specified custom delimiter.

Parameters:

delimiter (str) – The custom delimiter.

Return type:

RecordDeAggregationProcessor

classmethod json()

Perform deaggregation from JSON objects on a single line with no delimiter or newline-delimited (JSONL).

Return type:

RecordDeAggregationProcessor