InputT - type of elements that should be persisted in the destination@PublicEvolving public class KinesisFirehoseSinkBuilder<InputT> extends org.apache.flink.connector.base.sink.AsyncSinkBaseBuilder<InputT,software.amazon.awssdk.services.firehose.model.Record,KinesisFirehoseSinkBuilder<InputT>>
KinesisFirehoseSink.
The following example shows the minimum setup to create a KinesisFirehoseSink that
writes String values to a Kinesis Data Firehose delivery stream named delivery-stream-name.
Properties sinkProperties = new Properties();
sinkProperties.put(AWSConfigConstants.AWS_REGION, "eu-west-1");
KinesisFirehoseSink<String> kdfSink =
KinesisFirehoseSink.<String>builder()
.setElementConverter(elementConverter)
.setDeliveryStreamName("delivery-stream-name")
.setMaxBatchSize(20)
.setFirehoseClientProperties(sinkProperties)
.setSerializationSchema(new SimpleStringSchema())
.build();
If the following parameters are not set in this builder, the following defaults will be used:
maxBatchSize will be 500
maxInFlightRequests will be 50
maxBufferedRequests will be 10000
maxBatchSizeInBytes will be 4 MB i.e. 4 * 1024 * 1024
maxTimeInBufferMS will be 5000ms
maxRecordSizeInBytes will be 1000 KB i.e. 1000 * 1024
failOnError will be false
| Modifier and Type | Method and Description |
|---|---|
KinesisFirehoseSink<InputT> |
build() |
KinesisFirehoseSinkBuilder<InputT> |
setDeliveryStreamName(String deliveryStreamName)
Sets the name of the KDF delivery stream that the sink will connect to.
|
KinesisFirehoseSinkBuilder<InputT> |
setFailOnError(boolean failOnError)
If writing to Kinesis Data Firehose results in a partial or full failure being returned, the
job will fail immediately with a
KinesisFirehoseException if failOnError is set. |
KinesisFirehoseSinkBuilder<InputT> |
setFirehoseClientProperties(Properties firehoseClientProperties)
A set of properties used by the sink to create the firehose client.
|
KinesisFirehoseSinkBuilder<InputT> |
setSerializationSchema(org.apache.flink.api.common.serialization.SerializationSchema<InputT> serializationSchema)
Allows the user to specify a serialization schema to serialize each record to persist to
Firehose.
|
getMaxBatchSize, getMaxBatchSizeInBytes, getMaxBufferedRequests, getMaxInFlightRequests, getMaxRecordSizeInBytes, getMaxTimeInBufferMS, setMaxBatchSize, setMaxBatchSizeInBytes, setMaxBufferedRequests, setMaxInFlightRequests, setMaxRecordSizeInBytes, setMaxTimeInBufferMSpublic KinesisFirehoseSinkBuilder<InputT> setDeliveryStreamName(String deliveryStreamName)
deliveryStreamName - the name of the delivery streamKinesisFirehoseSinkBuilder itselfpublic KinesisFirehoseSinkBuilder<InputT> setSerializationSchema(org.apache.flink.api.common.serialization.SerializationSchema<InputT> serializationSchema)
serializationSchema - serialization schema to useKinesisFirehoseSinkBuilder itselfpublic KinesisFirehoseSinkBuilder<InputT> setFailOnError(boolean failOnError)
KinesisFirehoseException if failOnError is set.failOnError - whether to fail on errorKinesisFirehoseSinkBuilder itselfpublic KinesisFirehoseSinkBuilder<InputT> setFirehoseClientProperties(Properties firehoseClientProperties)
firehoseClientProperties - Firehose client propertiesKinesisFirehoseSinkBuilder itselfpublic KinesisFirehoseSink<InputT> build()
build in class org.apache.flink.connector.base.sink.AsyncSinkBaseBuilder<InputT,software.amazon.awssdk.services.firehose.model.Record,KinesisFirehoseSinkBuilder<InputT>>Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.