Bangun pipeline streaming ujung ke ujung menggunakan Cetak Biru Layanan Terkelola Amazon untuk Apache Flink dengan satu klik. Pelajari selengkapnya.
Umum
Analisis interaktif membantu Anda melakukan streaming eksplorasi data secara waktu nyata. Dengan kueri atau program ad hoc, Anda dapat memeriksa streaming dari Amazon MSK atau Amazon Kinesis Data Streams dan memvisualisasikan seperti apa data dalam streaming tersebut. Misalnya, Anda dapat melihat cara metrik waktu nyata yang menghitung rata-rata selama periode waktu berperilaku dan mengirim data agregat ke tujuan pilihan Anda. Analisis interaktif juga membantu pengembangan berulang aplikasi pemrosesan streaming. Kueri yang Anda buat terus diperbarui saat data baru tiba. Dengan Layanan Terkelola Amazon untuk Apache Flink Studio, Anda dapat melakukan deployment kueri ini agar berjalan terus menerus dengan penskalaan otomatis dan pencadangan status tahan lama diaktifkan.
Memulai
Layanan Terkelola Amazon untuk Apache Flink secara elastis menskalakan aplikasi Anda untuk mengakomodasi throughput data streaming sumber dan kompleksitas kueri untuk sebagian besar skenario. Untuk informasi terperinci tentang batas layanan untuk aplikasi Apache Flink, kunjungi bagian Batasan di Panduan Developer Layanan Terkelola Amazon untuk Apache Flink.
Ya, dengan Konektor Aliran Data Apache Flink, aplikasi Layanan Terkelola Amazon untuk Apache Flink dapat menggunakan Registri Skema AWS Glue, yaitu fitur nirserver AWS Glue. Anda dapat mengintegrasikan Apache Kafka, Amazon MSK, dan Amazon Kinesis Data Streams, sebagai sink atau sumber, dengan beban kerja Layanan Terkelola Amazon untuk Apache Flink. Kunjungi Panduan Developer Registri Skema AWS Glue untuk memulai dan mempelajari selengkapnya.
Konsep utama
- Input: Input adalah sumber streaming untuk aplikasi Anda. Dalam konfigurasi input, Anda memetakan sumber streaming ke aliran data. Data mengalir dari sumber data Anda ke aliran data Anda. Anda memproses data dari aliran data ini menggunakan kode aplikasi Anda, yang mengirimkan data yang diproses ke aliran atau tujuan data berikutnya. Anda menambahkan input di dalam kode aplikasi untuk aplikasi Apache Flink dan notebook Studio serta melalui API untuk aplikasi Layanan Terkelola Amazon untuk Apache Flink.
- Kode aplikasi: Kode aplikasi adalah serangkaian operator Apache Flink yang memproses input dan menghasilkan output. Dalam bentuknya yang paling sederhana, kode aplikasi dapat berupa operator Apache Flink tunggal yang membaca dari aliran data yang terkait dengan sumber streaming dan menulis ke aliran data lain yang terkait dengan output. Untuk notebook Studio, hal ini dapat berupa kueri pemilihan SQL Flink sederhana, dengan hasil yang ditampilkan dalam konteks di notebook. Anda dapat menulis kode Apache Flink dalam bahasa yang didukung untuk aplikasi Layanan Terkelola Amazon untuk Apache Flink atau notebook Studio.
- Output: Anda kemudian dapat secara opsional mengonfigurasi output aplikasi untuk mempertahankan data ke tujuan eksternal. Anda menambahkan output ini di dalam kode aplikasi untuk aplikasi Layanan Terkelola Amazon untuk Apache Flink dan notebook Studio.
T: Kode aplikasi apa yang didukung?
Mengelola aplikasi
- Memantau Layanan Terkelola Amazon untuk Apache Flink di Panduan Developer Layanan Terkelola Amazon untuk Apache Flink.
- Memantau Layanan Terkelola Amazon untuk Apache Flink di Panduan Developer Layanan Terkelola Amazon untuk Apache Flink Studio.
T: Bagaimana cara mengelola dan mengontrol akses ke aplikasi Layanan Terkelola Amazon untuk Apache Flink?
- Memberikan izin di Panduan Developer Layanan Terkelola Amazon untuk Apache Flink.
- Memberikan izin di Panduan Developer Layanan Terkelola Amazon untuk Apache Flink Studio.
T: Bagaimana Layanan Terkelola Amazon untuk Apache Flink menskalakan aplikasi saya?
Layanan Terkelola Amazon untuk Apache Flink menskalakan aplikasi Anda secara elastis untuk mengakomodasi throughput data streaming sumber dan kompleksitas kueri Anda untuk sebagian besar skenario. Layanan Terkelola Amazon untuk Apache Flink menyediakan kapasitas dalam bentuk KPU Amazon. Satu KPU memberi Anda 1 vCPU dan memori 4 GB.
Harga dan penagihan
Anda dikenakan tarif per jam berdasarkan jumlah KPU Amazon yang digunakan untuk menjalankan aplikasi streaming Anda. KPU tunggal adalah seperangkat kapasitas pemrosesan streaming yang meliputi 1 komputasi vCPU dan memori 4 GB. Layanan Terkelola Amazon untuk Apache Flink secara otomatis menskalakan jumlah KPU yang diperlukan oleh aplikasi pemrosesan streaming Anda karena permintaan memori dan komputasi yang bervariasi sebagai respons terhadap kompleksitas pemrosesan dan throughput data streaming yang diproses.
Membangun aplikasi Apache Flink
Menulis kode aplikasi untuk aplikasi menggunakan Apache Flink di IDE Anda
DataStream <GameEvent> rawEvents = env.addSource(
New KinesisStreamSource(“input_events”));
DataStream <UserPerLevel> gameStream =
rawEvents.map(event - > new UserPerLevel(event.gameMetadata.gameId,
event.gameMetadata.levelId,event.userId));
gameStream.keyBy(event -> event.gameId)
.keyBy(1)
.window(TumblingProcessingTimeWindows.of(Time.minutes(1)))
.apply(...) - > {...};
gameStream.addSink(new KinesisStreamSink("myGameStateStream"));
Anda dapat membangun operator khusus jika hal ini tidak memenuhi kebutuhan Anda. Temukan lebih banyak contoh di bagian Operator dari Panduan Developer Layanan Terkelola Amazon untuk Apache Flink. Anda dapat menemukan daftar lengkap operator Apache Flink di dokumentasi Apache Flink.
- Sumber data streaming: Amazon Managed Streaming for Apache Kafka (Amazon MSK), Tujuan Amazon Kinesis Data Streams, atau sink: Amazon Kinesis Data Streams
- Amazon Kinesis Data Firehose, Amazon DynamoDB, Amazon Elasticsearch Service, dan Amazon S3 (melalui integrasi sink file)
T: Dapatkah aplikasi Layanan Terkelola Amazon untuk Apache Flink mereplikasi data di seluruh stream dan topik?
Membangun aplikasi Layanan Terkelola Amazon untuk Apache Flink Studio di notebook terkelola
T: Bagaimana cara mengembangkan aplikasi Studio?
Anda dapat memulai dari Layanan Terkelola Amazon untuk Apache Flink Studio, Amazon Kinesis Data Streams, atau konsol Amazon MSK dalam beberapa langkah untuk meluncurkan notebook nirserver agar segera mengueri aliran data dan melakukan analisis data interaktif.
Analitik data interaktif: Anda dapat menulis kode di notebook dalam SQL, Python, atau Scala untuk berinteraksi dengan data streaming Anda, dengan waktu respons kueri dalam hitungan detik. Anda dapat menggunakan visualisasi bawaan untuk menjelajahi data, melihat wawasan waktu nyata pada data streaming Anda dari dalam notebook Anda, dan mengembangkan aplikasi pemrosesan streaming yang ditenagai oleh Apache Flink.
Setelah kode siap dijalankan sebagai aplikasi produksi, Anda dapat bertransisi dengan satu langkah ke aplikasi pemrosesan streaming yang memproses gigabita data per detik, tanpa server.
Aplikasi pemrosesan streaming: Setelah Anda siap untuk mempromosikan kode ke produksi, Anda dapat membangun kode dengan mengeklik “Lakukan deployment sebagai aplikasi pemrosesan streaming” di antarmuka notebook atau mengeluarkan satu perintah di CLI. Studio menangani semua manajemen infrastruktur yang diperlukan agar Anda dapat menjalankan aplikasi pemrosesan streaming dalam skala besar, dengan penskalaan otomatis dan status tahan lama diaktifkan, seperti dalam aplikasi Layanan Terkelola Amazon untuk Apache Flink.
T: Seperti apa kode aplikasi saya?
Anda dapat menulis kode di notebook dalam bahasa SQL, Python, atau Scala pilihan Anda menggunakan API Tabel milik Apache Flink. API Tabel adalah abstraksi tingkat tinggi dan API relasional yang mendukung superset kemampuan SQL. API Tabel menawarkan operasi yang sudah dikenal, seperti pilih, filter, gabungan, kelompokkan berdasarkan, agregat, dan sebagainya, bersama dengan konsep khusus streaming, seperti windowing. Anda menggunakan % untuk menentukan bahasa yang akan digunakan di bagian notebook dan dapat beralih antar bahasa. Interpreter adalah plugin Apache Zeppelin sehingga Anda dapat menentukan bahasa atau mesin pemrosesan data untuk setiap bagian notebook. Anda juga dapat membangun fungsi yang ditentukan pengguna dan mereferensikannya guna meningkatkan fungsionalitas kode.
T: Operasi SQL apa yang didukung?
Anda dapat melakukan operasi SQL seperti berikut:
- Pindai dan filter (SELECT, WHERE)
- Agregasi (GROUP BY, GROUP BY WINDOW, HAVING)
- Atur (UNION, UNIONALL, INTERSECT, IN, EXISTS)
- Urutkan (ORDER BY, LIMIT)
- Bergabung (INNER, OUTER, Timed Window – BETWEEN, AND, Bergabung dengan Tabel Temporal – tabel yang melacak perubahan dari waktu ke waktu)
- Top-N
- Deduplikasi
- Pengenalan pola
Beberapa kueri ini, seperti GROUP BY, OUTER JOIN, dan Top-N, adalah pembaruan hasil untuk data streaming, yang berarti bahwa hasilnya terus diperbarui saat data streaming diproses. Pernyataan DDL lainnya, seperti CREATE, ALTER, dan DROP, juga didukung. Untuk daftar lengkap kueri dan sampel, lihat dokumentasi Kueri Apache Flink.
T: Bagaimana Python dan Scala didukung?
API Tabel milik Apache Flink mendukung Python dan Scala melalui integrasi bahasa menggunakan string Python dan ekspresi Scala. Operasi yang didukung sangat mirip dengan operasi SQL yang didukung, termasuk pilih, urutkan, kelompokkan, gabungan, filter, dan windowing. Daftar lengkap operasi dan sampel tercantum dalam panduan developer kami.
T: Apa versi Apache Flink dan Apache Zeppelin yang didukung?
Untuk mempelajari selengkapnya tentang versi Apache Flink yang didukung, kunjungi halaman Catatan Rilis Layanan Terkelola Amazon untuk Apache Flink. Halaman ini juga mencakup versi Apache Zeppelin, Apache Beam, Java, Scala, Python, dan AWS SDK yang didukung Layanan Terkelola Amazon untuk Apache Flink.
T: Integrasi apa yang didukung secara default di aplikasi Layanan Terkelola Amazon untuk Apache Flink Studio?
- Sumber data: Amazon Managed Streaming for Apache Kafka (Amazon MSK), Amazon Kinesis Data Streams, Amazon S3
- Tujuan, atau sink: Amazon MSK, Amazon Kinesis Data Streams, dan Amazon S3
T: Apakah integrasi khusus didukung?
Anda dapat mengonfigurasi integrasi tambahan dengan beberapa langkah dan baris kode Apache Flink (Python, Scala, atau Java) untuk menentukan koneksi dengan semua integrasi yang didukung Apache Flink. Hal ini termasuk tujuan, seperti Amazon OpenSearch Service, Amazon ElastiCache for Redis, Amazon Aurora, Amazon Redshift, Amazon DynamoDB, Amazon Keyspaces, dan banyak lagi. Anda dapat melampirkan aplikasi yang dapat dijalankan untuk konektor kustom ini saat Anda membuat atau mengonfigurasi aplikasi Layanan Terkelola Amazon untuk Apache Flink Studio.
Perjanjian Tingkat Layanan
T: Apa yang dijamin SLA Layanan Terkelola Amazon untuk Apache Flink?
Perjanjian tingkat layanan (SLA) kami menjamin Persentase Waktu Aktif Bulanan minimal 99,9% untuk Layanan Terkelola Amazon untuk Apache Flink.
T: Bagaimana saya tahu jika saya memenuhi syarat untuk Kredit Layanan SLA?
Anda berhak mendapatkan Kredit Layanan SLA dari Layanan Terkelola Amazon untuk Apache Flink di bawah SLA Layanan Terkelola Amazon untuk Apache Flink jika lebih dari satu Zona Ketersediaan tempat Anda menjalankan tugas, dalam Wilayah AWS yang sama, memiliki Persentase Waktu Aktif Bulanan kurang dari 99,9% selama siklus penagihan bulanan. Untuk detail lengkap tentang semua syarat dan ketentuan SLA serta detail tentang cara mengajukan klaim, kunjungi halaman detail SLA Layanan Terkelola Amazon untuk Apache Flink.
Mulai menggunakan Amazon Kinesis Data Analytics
Kunjungi halaman harga Amazon Kinesis Data Analytics.
Pelajari cara menggunakan Amazon Kinesis Data Analytics dalam panduan langkah demi langkah untuk SQL atau Apache Flink.
Buat aplikasi streaming pertama Anda dari konsol Amazon Kinesis Data Analytics.