

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Memulai Amazon Managed Service untuk Apache Flink untuk Python
<a name="gs-python"></a>

Bagian ini memperkenalkan Anda pada konsep dasar Managed Service untuk Apache Flink menggunakan Python dan Table API. Ini menjelaskan opsi yang tersedia untuk membuat dan menguji aplikasi Anda. Ini juga memberikan petunjuk untuk menginstal alat yang diperlukan untuk menyelesaikan tutorial dalam panduan ini dan untuk membuat aplikasi pertama Anda. 

**Topics**
+ [Tinjau komponen Layanan Terkelola untuk aplikasi Apache Flink](#gs-python-table-components)
+ [Memenuhi prasyarat](#gs-python-prerequisites)
+ [Membuat dan menjalankan Managed Service untuk Apache Flink untuk aplikasi Python](gs-python-createapp.md)
+ [Bersihkan AWS sumber daya](gs-python-cleanup.md)

## Tinjau komponen Layanan Terkelola untuk aplikasi Apache Flink
<a name="gs-python-table-components"></a>

**catatan**  
Amazon Managed Service untuk Apache Flink mendukung semua [Apache](https://nightlies.apache.org/flink/flink-docs-release-1.19/docs/concepts/overview/#flinks-apis) Flink API. Tergantung pada API yang Anda pilih, struktur aplikasi sedikit berbeda. Salah satu pendekatan populer ketika mengembangkan aplikasi Apache Flink di Python adalah untuk mendefinisikan aliran aplikasi menggunakan SQL tertanam dalam kode Python. Ini adalah pendekatan yang kita ikuti dalam tutorial Gettgin Started berikut.

Untuk memproses data, Layanan Terkelola untuk aplikasi Apache Flink Anda menggunakan skrip Python untuk menentukan aliran data yang memproses input dan menghasilkan output menggunakan runtime Apache Flink. 

Layanan Terkelola khas untuk aplikasi Apache Flink memiliki komponen-komponen berikut:
+ **Properti runtime:** Anda dapat menggunakan *properti runtime* untuk mengonfigurasi aplikasi Anda tanpa mengompilasi ulang kode aplikasi Anda. 
+ **Sumber:** Aplikasi mengkonsumsi data dari satu atau lebih *sumber*. Sumber menggunakan [konektor](https://nightlies.apache.org/flink/flink-docs-release-1.19/docs/connectors/table/overview/) untuk membaca data dari sistem eksternal seperti aliran data Kinesis, atau topik MSK Amazon. Anda juga dapat menggunakan konektor khusus untuk menghasilkan data dari dalam aplikasi. *Bila Anda menggunakan SQL, aplikasi mendefinisikan sumber sebagai tabel sumber.* 
+ **Transformasi:** Aplikasi memproses data dengan menggunakan satu atau lebih *transformasi* yang dapat menyaring, memperkaya, atau mengumpulkan data. Bila Anda menggunakan SQL, aplikasi mendefinisikan transformasi sebagai query SQL. 
+ **Tenggelam:** Aplikasi mengirimkan data ke sumber eksternal melalui *sink*. Wastafel menggunakan [konektor](https://nightlies.apache.org/flink/flink-docs-release-1.19/docs/connectors/table/overview/) untuk mengirim data ke sistem eksternal seperti aliran data Kinesis, topik MSK Amazon, bucket Amazon S3, atau database relasional. Anda juga dapat menggunakan konektor khusus untuk mencetak output untuk tujuan pengembangan. Saat Anda menggunakan SQL, aplikasi mendefinisikan *sink sebagai tabel sink* tempat Anda menyisipkan hasil. Untuk informasi selengkapnya, lihat [Menulis data menggunakan sink di Managed Service untuk Apache Flink](how-sinks.md).

Aplikasi Python Anda mungkin juga memerlukan dependensi eksternal, seperti pustaka Python tambahan atau konektor Flink apa pun yang digunakan aplikasi Anda. Ketika Anda mengemas aplikasi Anda, Anda harus menyertakan setiap ketergantungan yang dibutuhkan aplikasi Anda. Tutorial ini menunjukkan cara menyertakan dependensi konektor dan cara mengemas aplikasi untuk penyebaran di Amazon Managed Service untuk Apache Flink.

## Memenuhi prasyarat
<a name="gs-python-prerequisites"></a>

Untuk menyelesaikan tutorial ini, Anda harus memiliki yang berikut:
+ **Python 3.11** [https://docs.conda.io/en/latest/](https://docs.conda.io/en/latest/)
+  [Klien Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) - instal klien Git jika Anda belum melakukannya.
+ [Java Development Kit (JDK) versi 11](https://www.oracle.com/java/technologies/downloads/#java11) - instal Java JDK 11 dan atur variabel `JAVA_HOME` lingkungan untuk menunjuk ke lokasi instalasi Anda. Jika Anda tidak memiliki JDK 11, Anda dapat menggunakan [Amazon Corretto](https://docs.aws.amazon.com/corretto)atau JDK standar pilihan kami. 
  + Untuk memverifikasi bahwa Anda telah menginstal JDK dengan benar, jalankan perintah berikut. Outputnya akan berbeda jika Anda menggunakan JDK selain Amazon Corretto 11. Pastikan versinya 11.x.

    ```
    $ java --version
    
    openjdk 11.0.23 2024-04-16 LTS
    OpenJDK Runtime Environment Corretto-11.0.23.9.1 (build 11.0.23+9-LTS)
    OpenJDK 64-Bit Server VM Corretto-11.0.23.9.1 (build 11.0.23+9-LTS, mixed mode)
    ```
+ [Apache Maven](https://maven.apache.org/) - instal Apache Maven jika Anda belum melakukannya. Untuk informasi selengkapnya, lihat [Menginstal Apache Maven](https://maven.apache.org/install.html).
  + Untuk menguji instalasi Apache Maven Anda, gunakan perintah berikut:

    ```
    $ mvn -version
    ```

**catatan**  
Meskipun aplikasi Anda ditulis dengan Python, Apache Flink berjalan di Java Virtual Machine (JVM). Ini mendistribusikan sebagian besar dependensi, seperti konektor Kinesis, sebagai file JAR. Untuk mengelola dependensi ini dan untuk mengemas aplikasi dalam file ZIP, gunakan [Apache](https://maven.apache.org/) Maven. Tutorial ini menjelaskan cara melakukannya. 

**Awas**  
Kami menyarankan Anda menggunakan Python 3.11 untuk pengembangan lokal. Ini adalah versi Python yang sama yang digunakan oleh Amazon Managed Service untuk Apache Flink dengan runtime Flink 1.19.   
Menginstal pustaka Python Flink 1.19 pada Python 3.12 mungkin gagal.  
Jika Anda memiliki versi Python lain yang diinstal secara default pada mesin Anda, kami sarankan Anda membuat lingkungan mandiri seperti menggunakan VirtualEnv Python 3.11.

**IDE untuk pengembangan lokal**

Kami menyarankan Anda menggunakan lingkungan pengembangan seperti [PyCharm](https://www.jetbrains.com/pycharm/)atau [Visual Studio Code](https://code.visualstudio.com/) untuk mengembangkan dan mengkompilasi aplikasi Anda.

Kemudian, selesaikan dua langkah pertama dari[Memulai Layanan Terkelola Amazon untuk Apache Flink (API) DataStream](getting-started.md):
+ [Siapkan AWS akun dan buat pengguna administrator](setting-up.md)
+ [Mengatur AWS Command Line Interface (AWS CLI)](setup-awscli.md)

Untuk memulai, lihat [Membuat aplikasi](gs-python-createapp.md).