Topik ini menjelaskan cara mengembangkan pekerjaan Realtime Compute for Apache Flink yang menggunakan DataStream API untuk menulis data ke katalog Data Lake Formation (DLF) melalui Paimon REST.
Prasyarat
Anda memiliki ruang kerja fully managed untuk Realtime Compute for Apache Flink. Jika belum membuatnya, lihat Aktifkan Realtime Compute for Apache Flink.
Katalog DLF telah dibuat. Untuk informasi selengkapnya, lihat Memulai dengan DLF.
Ruang kerja Flink dan katalog DLF berada di Wilayah yang sama.
VPC ruang kerja Flink Anda berada dalam daftar putih VPC DLF. Untuk informasi selengkapnya, lihat Konfigurasikan daftar putih VPC.
CatatanDLF mengaktifkan akses VPC secara default. Untuk mengaktifkan akses jaringan publik, lihat Aktifkan dan konfigurasikan akses jaringan publik.
Persiapan
Unduh file JAR terbundle Paimon
paimon-flink-*.jarversi 1.1 atau lebih baru dari website Apache Paimon.Unduh
paimon-oss-*.jarversi 1.1 atau lebih baru dari Apache Paimon Filesystems.
Pilih metode dependensi
Lingkungan runtime Flink tidak menyertakan konektor Paimon atau sistem file OSS. Anda harus menggunakan salah satu metode berikut untuk memastikan bahwa file paimon-flink-*.jar dan paimon-oss-*.jar tersedia saat pekerjaan dijalankan.
Metode 1: Unggah file tambahan di Konsol
Anda tidak perlu mengubah file pom.xml. Saat membuat pekerjaan JAR di Konsol pengembangan Realtime Compute for Apache Flink, unggah file paimon-flink-*.jar dan paimon-oss-*.jar yang telah Anda unduh pada bagian Persiapan sebagai file dependensi tambahan.
Metode 2: Paket dependensi ke dalam fat JAR dengan Maven
Tambahkan dependensi dan properti berikut ke file pom.xml proyek Anda.
<properties>
<!-- Versi Paimon. Tentukan 1.1 atau lebih baru. -->
<paimon.version>1.1.0</paimon.version>
<!-- Versi utama Flink. Atur berdasarkan versi VVR Anda. Lihat tabel berikut. -->
<flink.main.version>1.20</flink.main.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.paimon</groupId>
<artifactId>paimon-flink-${flink.main.version}</artifactId>
<version>${paimon.version}</version>
</dependency>
<dependency>
<groupId>org.apache.paimon</groupId>
<artifactId>paimon-oss</artifactId>
<version>${paimon.version}</version>
</dependency>
</dependencies>Nilai ${flink.main.version} adalah sebagai berikut.
Versi VVR |
|
VVR 8.x | 1.17 |
VVR 11.x | 1.20 |
Dengan metode ini, dependensi dikemas ke dalam fat JAR, sehingga Anda tidak perlu mengunggah file JAR tambahan saat penerapan.
Langkah 1: Tulis kode pekerjaan
Pada metode main() pekerjaan DataStream Anda, gunakan kode berikut untuk membuat instans katalog DLF.
Options options = new Options();
options.set("type", "paimon");
options.set("metastore", "rest");
options.set("uri", "http://<region-id>-vpc.dlf.aliyuncs.com");
options.set("warehouse", "your-catalog-name");
options.set("token.provider", "dlf");
options.set("dlf.access-key-id", "your-access-key-id");
options.set("dlf.access-key-secret", "your-access-key-secret");
Catalog catalog = FlinkCatalogFactory.createPaimonCatalog(options);Parameter wajib:
Parameter | Deskripsi | Contoh |
| Jenis katalog, diurai secara otomatis dari JAR kustom. Jangan ubah nilai ini. |
|
| Jenis metastore untuk DLF. Atur nilai ini ke |
|
| Titik akhir VPC server katalog REST DLF. Formatnya adalah |
|
| Nama katalog Paimon. |
|
| Penyedia token. Atur nilai ini ke |
|
| ID AccessKey Anda untuk otentikasi. Untuk informasi selengkapnya, lihat Lihat informasi AccessKey Pengguna RAM. | |
| Rahasia AccessKey Anda untuk otentikasi. |
Setelah katalog dibuat, Anda dapat mendaftarkan dan menggunakannya dalam pekerjaan DataStream Anda untuk membaca dan menulis tabel Paimon.
Langkah 2: Paket dan terapkan pekerjaan
Paket pekerjaan DataStream Anda ke dalam file JAR.
Unggah file JAR pekerjaan di Konsol Realtime Compute for Apache Flink dan kirimkan pekerjaan tersebut.
Jika Anda memilih Metode 1 (mengunggah file tambahan di Konsol), tambahkan
paimon-flink-*.jardanpaimon-oss-*.jarke dependensi tambahan saat mengirimkan pekerjaan.
Untuk informasi selengkapnya tentang cara mengembangkan dan men-debug pekerjaan JAR Flink, lihat Kembangkan pekerjaan JAR.