Terapkan sebagai aplikasi dengan status tahan lama - 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.

Terapkan sebagai aplikasi dengan status tahan lama

Anda dapat membangun kode Anda dan mengekspornya ke Amazon S3. Anda dapat mempromosikan kode yang Anda tulis dalam catatan Anda ke aplikasi pemrosesan streaming yang terus berjalan. Ada dua mode menjalankan aplikasi Apache Flink pada Managed Service untuk Apache Flink: Dengan notebook Studio, Anda memiliki kemampuan untuk mengembangkan kode Anda secara interaktif, melihat hasil kode Anda secara real time, dan memvisualisasikannya dalam catatan Anda. Setelah Anda menerapkan catatan untuk dijalankan dalam mode streaming, Managed Service for Apache Flink membuat aplikasi untuk Anda yang berjalan terus menerus, membaca data dari sumber Anda, menulis ke tujuan Anda, mempertahankan status aplikasi yang berjalan lama, dan skala otomatis secara otomatis berdasarkan throughput aliran sumber Anda.

catatan

Bucket S3 tempat Anda mengekspor kode aplikasi harus berada dalam Wilayah yang sama dengan notebook Studio Anda.

Anda hanya dapat men-deploy catatan dari notebook Studio jika memenuhi kriteria berikut:

  • Paragraf harus disusun secara berurutan. Saat Anda menerapkan aplikasi Anda, semua paragraf dalam catatan akan dieksekusi secara berurutan (left-to-right, top-to-bottom) seperti yang muncul di catatan Anda. Anda dapat memeriksa urutan ini dengan memilih Run All Paragraphs (Jalankan Semua Paragraf) di catatan Anda.

  • Kode Anda adalah kombinasi dari Python dan SQL atau Scala dan. SQL Kami tidak mendukung Python dan Scala bersama saat ini untuk. deploy-as-application

  • Catatan Anda sebaiknya hanya memiliki interpreter berikut: %flink, %flink.ssql, %flink.pyflink, %flink.ipyflink, %md.

  • Penggunaan objek konteks Zeppelin z tidak didukung. Metode yang tidak mengembalikan apa pun tidak akan melakukan apa pun kecuali mencatat peringatan. Metode lain akan meningkatkan pengecualian Python atau gagal untuk mengompilasi di Scala.

  • Catatan harus menghasilkan satu tugas Apache Flink.

  • Catatan dengan formulir dinamis tidak didukung untuk men-deploy sebagai aplikasi.

  • %md (Markdown) akan dilewati dalam deployment sebagai aplikasi, karena ini diprediksi berisi dokumentasi yang dapat dibaca manusia yang tidak cocok untuk dijalankan sebagai bagian dari aplikasi yang dihasilkan.

  • Paragraf yang dinonaktifkan untuk berjalan dalam Zeppelin akan dilewati dalam deployment sebagai aplikasi. Bahkan jika paragraf yang dinonaktifkan menggunakan interpreter yang tidak kompatibel, misalnya, %flink.ipyflink dalam catatan dengan interpreter %flink and %flink.ssql, paragraf akan dilewati saat men-deploy catatan sebagai aplikasi, dan tidak akan mengakibatkan kesalahan.

  • Harus ada setidaknya satu paragraf yang hadir dengan kode sumber (FlinkSQL, PyFlink atau Flink Scala) yang diaktifkan untuk berjalan agar penerapan aplikasi berhasil.

  • Mengatur paralelisme di direktif interpreter dalam paragraf (misalnya %flink.ssql(parallelism=32)) akan diabaikan dalam aplikasi yang di-deploy dari catatan. Sebagai gantinya, Anda dapat memperbarui aplikasi yang diterapkan melalui AWS Management Console, AWS Command Line Interface atau AWS API untuk mengubah Parallelism dan/atau ParallelismPer KPU pengaturan sesuai dengan tingkat paralelisme yang dibutuhkan aplikasi Anda, atau Anda dapat mengaktifkan penskalaan otomatis untuk aplikasi yang Anda gunakan.

  • Jika Anda menerapkan sebagai aplikasi dengan status tahan lama, Anda VPC harus memiliki akses internet. Jika Anda VPC tidak memiliki akses internet, lihatTerapkan sebagai aplikasi dengan status tahan lama di a VPC tanpa akses internet.

Kriteria Scala/Python

  • Dalam kode Scala atau Python Anda, gunakan Perencana Blink (senv, stenv untuk Scala; s_env, st_env untuk Python) dan bukan perencana "Flink" yang lebih lama (stenv_2 untuk Scala, st_env_2 untuk Python). Proyek Apache Flink merekomendasikan penggunaan perencana Blink untuk kasus penggunaan produksi, dan ini adalah perencana default di Zeppelin dan di Flink.

  • Paragraf Python Anda tidak boleh menggunakan pemanggilan/tugas shell menggunakan atau perintah IPython ajaib seperti ! %timeit atau %conda dalam catatan yang dimaksudkan untuk digunakan sebagai aplikasi.

  • Anda tidak dapat menggunakan kelas kasus Scala sebagai parameter fungsi yang diteruskan ke operator aliran data susunan yang lebih tinggi seperti map dan filter. Untuk informasi tentang kelas kasus Scala, lihat CASECLASSESdi dokumentasi Scala.

SQLkriteria

  • SELECTPernyataan sederhana tidak diizinkan, karena tidak ada tempat yang setara dengan bagian keluaran paragraf tempat data dapat dikirimkan.

  • Dalam paragraf tertentu, DDL pernyataan (USE,,CREATE,ALTER, DROPSET,RESET) harus mendahului DML (INSERT) pernyataan. Ini karena DML pernyataan dalam paragraf harus diserahkan bersama sebagai pekerjaan Flink tunggal.

  • Harus ada paling banyak satu paragraf yang memiliki DML pernyataan di dalamnya. Ini karena, untuk deploy-as-application fitur tersebut, kami hanya mendukung pengiriman satu pekerjaan ke Flink.

Untuk informasi selengkapnya dan contoh, lihat Menerjemahkan, menyunting, dan menganalisis data streaming menggunakan SQL fungsi dengan Amazon Managed Service untuk Apache Flink, Amazon Translate, dan Amazon Comprehend.