Tambahkan sumber data streaming ke Layanan Terkelola untuk Apache Flink - Layanan Terkelola untuk Apache Flink

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.

Tambahkan sumber data streaming ke Layanan Terkelola untuk Apache Flink

Apache Flink menyediakan konektor untuk membaca dari file, soket, koleksi, dan sumber kustom. Dalam kode aplikasi Anda, Anda menggunakan sumber Apache Flink untuk menerima data dari aliran. Bagian ini menjelaskan sumber yang tersedia untuk layanan Amazon

Gunakan aliran data Kinesis

Sumber FlinkKinesisConsumer menyediakan data streaming ke aplikasi Anda dari Amazon Kinesis data stream.

Buat FlinkKinesisConsumer

Contoh kode berikut mendemonstrasikan pembuatan FlinkKinesisConsumer:

Properties inputProperties = new Properties(); inputProperties.setProperty(ConsumerConfigConstants.AWS_REGION, region); inputProperties.setProperty(ConsumerConfigConstants.STREAM_INITIAL_POSITION, "LATEST"); DataStream<string> input = env.addSource(new FlinkKinesisConsumer<>(inputStreamName, new SimpleStringSchema(), inputProperties));

Untuk informasi selengkapnya tentang cara menggunakan FlinkKinesisConsumer, lihat Unduh dan periksa kode Java streaming Apache Flink.

Buat FlinkKinesisConsumer yang menggunakan EFO konsumen

FlinkKinesisConsumer Sekarang mendukung Enhanced Fan-Out () EFO.

Jika konsumen Kinesis menggunakanEFO, layanan Kinesis Data Streams memberikan bandwidth khusus sendiri, daripada memiliki konsumen berbagi bandwidth tetap dari aliran dengan konsumen lain yang membaca dari aliran.

Untuk informasi lebih lanjut tentang penggunaan EFO dengan konsumen Kinesis, lihat FLIP-128: Enhanced Fan Out untuk Konsumen AWS Kinesis.

Anda mengaktifkan EFO konsumen dengan menetapkan parameter berikut pada konsumen Kinesis:

  • RECORD_ PUBLISHER _TYPE: Setel parameter ini EFOagar aplikasi Anda dapat menggunakan EFO konsumen untuk mengakses data Kinesis Data Stream.

  • EFO_ CONSUMER _NAME: Setel 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 mengkonfigurasi FlinkKinesisConsumer untuk digunakanEFO, tambahkan parameter berikut ke konsumen:

consumerConfig.putIfAbsent(RECORD_PUBLISHER_TYPE, "EFO"); consumerConfig.putIfAbsent(EFO_CONSUMER_NAME, "basic-efo-flink-app");

Untuk contoh aplikasi Managed Service for Apache Flink yang menggunakan EFO konsumen, lihat. EFOKonsumen

Gunakan Amazon MSK

KafkaSourceSumber menyediakan data streaming ke aplikasi Anda dari MSK topik Amazon.

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 MSKReplikasi.