Amazon Managed Service untuk Apache Flink sebelumnya dikenal sebagai Amazon Kinesis Data Analytics untuk Apache Flink.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Apache Flink menyediakan konektor untuk membaca dari file, soket, koleksi, dan sumber kustom. Dalam kode aplikasi Anda, Anda menggunakan sumber Apache Flink
Gunakan aliran data Kinesis
KinesisStreamsSource
Menyediakan data streaming ke aplikasi Anda dari aliran data Amazon Kinesis.
Buat KinesisStreamsSource
Contoh kode berikut mendemonstrasikan pembuatan KinesisStreamsSource
:
// Configure the KinesisStreamsSource
Configuration sourceConfig = new Configuration();
sourceConfig.set(KinesisSourceConfigOptions.STREAM_INITIAL_POSITION, KinesisSourceConfigOptions.InitialPosition.TRIM_HORIZON); // This is optional, by default connector will read from LATEST
// Create a new KinesisStreamsSource to read from specified Kinesis Stream.
KinesisStreamsSource<String> kdsSource =
KinesisStreamsSource.<String>builder()
.setStreamArn("arn:aws:kinesis:us-east-1:123456789012:stream/test-stream")
.setSourceConfig(sourceConfig)
.setDeserializationSchema(new SimpleStringSchema())
.setKinesisShardAssigner(ShardAssignerFactory.uniformShardAssigner()) // This is optional, by default uniformShardAssigner will be used.
.build();
Untuk informasi selengkapnya tentang penggunaanKinesisStreamsSource
, lihat Konektor Amazon Kinesis Data
Buat KinesisStreamsSource
yang menggunakan konsumen EFO
KinesisStreamsSource
Sekarang mendukung Enhanced Fan-Out (EFO
Jika konsumen Kinesis menggunakan EFO, layanan Kinesis Data Streams memberikan bandwidth khusus miliknya sendiri, bukan meminta konsumen berbagi bandwidth aliran tetap dengan konsumen lain yang membaca dari aliran.
Untuk informasi selengkapnya tentang penggunaan EFO dengan konsumen Kinesis, lihat FLIP-128: Enhanced Fan Out
Anda mengaktifkan konsumen EFO dengan mengatur parameter berikut pada konsumen Kinesis:
READER_TYPE: Setel parameter ini ke EFO agar aplikasi Anda menggunakan konsumen EFO untuk mengakses data Kinesis Data Stream.
EFO_CONSUMER_NAME: Atur parameter ini ke nilai string yang unik di antara konsumen aliran ini. Menggunakan kembali nama konsumen di Kinesis Data Stream yang sama akan menyebabkan konsumen sebelumnya yang menggunakan nama tersebut dihentikan.
Untuk mengonfigurasi KinesisStreamsSource
untuk menggunakan EFO, tambahkan parameter berikut ke konsumen:
sourceConfig.set(KinesisSourceConfigOptions.READER_TYPE, KinesisSourceConfigOptions.ReaderType.EFO);
sourceConfig.set(KinesisSourceConfigOptions.EFO_CONSUMER_NAME, "my-flink-efo-consumer");
Untuk contoh aplikasi Managed Service for Apache Flink yang menggunakan konsumen EFO, lihat contoh Konektor Kinesis publik
Gunakan Amazon MSK
Sumber KafkaSource
menyediakan data streaming ke aplikasi Anda dari topik Amazon MSK.
Buat KafkaSource
Contoh kode berikut mendemonstrasikan pembuatan KafkaSource
:
KafkaSource<String> source = KafkaSource.<String>builder()
.setBootstrapServers(brokers)
.setTopics("input-topic")
.setGroupId("my-group")
.setStartingOffsets(OffsetsInitializer.earliest())
.setValueOnlyDeserializer(new SimpleStringSchema())
.build();
env.fromSource(source, WatermarkStrategy.noWatermarks(), "Kafka Source");
Untuk informasi selengkapnya tentang cara menggunakan KafkaSource
, lihat Replikasi MSK.