Class KafkaSource<OUT>
- java.lang.Object
-
- org.apache.flink.connector.kafka.source.KafkaSource<OUT>
-
- Type Parameters:
OUT- the output type of the source.
- All Implemented Interfaces:
Serializable,org.apache.flink.api.connector.source.Source<OUT,KafkaPartitionSplit,KafkaSourceEnumState>,org.apache.flink.api.connector.source.SourceReaderFactory<OUT,KafkaPartitionSplit>,org.apache.flink.api.java.typeutils.ResultTypeQueryable<OUT>
@PublicEvolving public class KafkaSource<OUT> extends Object implements org.apache.flink.api.connector.source.Source<OUT,KafkaPartitionSplit,KafkaSourceEnumState>, org.apache.flink.api.java.typeutils.ResultTypeQueryable<OUT>
The Source implementation of Kafka. Please use aKafkaSourceBuilderto construct aKafkaSource. The following example shows how to create a KafkaSource emitting records ofStringtype.KafkaSource<String> source = KafkaSource .<String>builder() .setBootstrapServers(KafkaSourceTestEnv.brokerConnectionStrings) .setGroupId("MyGroup") .setTopics(Arrays.asList(TOPIC1, TOPIC2)) .setDeserializer(new TestingKafkaRecordDeserializationSchema()) .setStartingOffsets(OffsetsInitializer.earliest()) .build();KafkaSourceEnumeratoronly supports adding new splits and not removing splits in split discovery.See
KafkaSourceBuilderfor more details on how to configure this source.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <OUT> KafkaSourceBuilder<OUT>builder()Get a kafkaSourceBuilder to build aKafkaSource.org.apache.flink.api.connector.source.SplitEnumerator<KafkaPartitionSplit,KafkaSourceEnumState>createEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<KafkaPartitionSplit> enumContext)org.apache.flink.api.connector.source.SourceReader<OUT,KafkaPartitionSplit>createReader(org.apache.flink.api.connector.source.SourceReaderContext readerContext)org.apache.flink.api.connector.source.BoundednessgetBoundedness()org.apache.flink.core.io.SimpleVersionedSerializer<KafkaSourceEnumState>getEnumeratorCheckpointSerializer()org.apache.flink.api.common.typeinfo.TypeInformation<OUT>getProducedType()org.apache.flink.core.io.SimpleVersionedSerializer<KafkaPartitionSplit>getSplitSerializer()org.apache.flink.api.connector.source.SplitEnumerator<KafkaPartitionSplit,KafkaSourceEnumState>restoreEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<KafkaPartitionSplit> enumContext, KafkaSourceEnumState checkpoint)
-
-
-
Method Detail
-
builder
public static <OUT> KafkaSourceBuilder<OUT> builder()
Get a kafkaSourceBuilder to build aKafkaSource.- Returns:
- a Kafka source builder.
-
getBoundedness
public org.apache.flink.api.connector.source.Boundedness getBoundedness()
- Specified by:
getBoundednessin interfaceorg.apache.flink.api.connector.source.Source<OUT,KafkaPartitionSplit,KafkaSourceEnumState>
-
createReader
@Internal public org.apache.flink.api.connector.source.SourceReader<OUT,KafkaPartitionSplit> createReader(org.apache.flink.api.connector.source.SourceReaderContext readerContext) throws Exception
- Specified by:
createReaderin interfaceorg.apache.flink.api.connector.source.SourceReaderFactory<OUT,KafkaPartitionSplit>- Throws:
Exception
-
createEnumerator
@Internal public org.apache.flink.api.connector.source.SplitEnumerator<KafkaPartitionSplit,KafkaSourceEnumState> createEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<KafkaPartitionSplit> enumContext)
- Specified by:
createEnumeratorin interfaceorg.apache.flink.api.connector.source.Source<OUT,KafkaPartitionSplit,KafkaSourceEnumState>
-
restoreEnumerator
@Internal public org.apache.flink.api.connector.source.SplitEnumerator<KafkaPartitionSplit,KafkaSourceEnumState> restoreEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<KafkaPartitionSplit> enumContext, KafkaSourceEnumState checkpoint) throws IOException
- Specified by:
restoreEnumeratorin interfaceorg.apache.flink.api.connector.source.Source<OUT,KafkaPartitionSplit,KafkaSourceEnumState>- Throws:
IOException
-
getSplitSerializer
@Internal public org.apache.flink.core.io.SimpleVersionedSerializer<KafkaPartitionSplit> getSplitSerializer()
- Specified by:
getSplitSerializerin interfaceorg.apache.flink.api.connector.source.Source<OUT,KafkaPartitionSplit,KafkaSourceEnumState>
-
getEnumeratorCheckpointSerializer
@Internal public org.apache.flink.core.io.SimpleVersionedSerializer<KafkaSourceEnumState> getEnumeratorCheckpointSerializer()
- Specified by:
getEnumeratorCheckpointSerializerin interfaceorg.apache.flink.api.connector.source.Source<OUT,KafkaPartitionSplit,KafkaSourceEnumState>
-
-