全部产品
Search
文档中心

Realtime Compute for Apache Flink:Skrip

更新时间:Nov 10, 2025

Sebuah skrip dapat berisi perintah CALL dan pernyataan DDL, DQL, serta DML. Anda dapat menggunakan skrip untuk membuat dan mengelola katalog dan tabel, menjalankan kueri data, serta mengelola tabel Apache Paimon. Gunakan pernyataan Explain dalam skrip untuk melihat rencana eksekusi dan menyelesaikan masalah.

Fitur

  • Memverifikasi sintaks SQL. Skrip tidak dapat dijalankan jika verifikasi gagal.

  • Menjalankan semua atau hanya pernyataan terpilih dalam skrip.

  • Mendukung perintah CALL serta pernyataan DDL, DQL, dan DML.

    Penting

    Menjalankan pernyataan DDL atau DML secara langsung dapat memengaruhi metadata atau data Anda. Lanjutkan dengan hati-hati.

  • Secara otomatis menyimpan skrip setiap menit. Anda juga dapat menyimpan kueri sementara secara manual ke dalam folder.

Prosedur

  1. Masuk ke Konsol Manajemen Realtime Compute for Apache Flink.

  2. Pada kolom Actions ruang kerja Anda, klik Console.

  3. Di Konsol Pengembangan, navigasi ke Development > Scripts dan klik tab Scripts.

  4. Klik image.png untuk membuat skrip.

  5. Masukkan kode SQL Anda.

    Potongan kode berikut membuat katalog MySQL:

    • Buat katalog MySQL. Untuk detailnya, lihat Buat katalog MySQL.

      CREATE CATALOG mysql_catalog WITH(
        'type' = 'mysql',
        'hostname' = 'rm-bp1x********.mysql.rds.aliyuncs.com',
        'port' = '3306',
        'username' = 'db_user',
        'password' = '${secret_values.mysqlpw}',
        'default-database' = 'flinktest'
      );
    • Kueri tabel:

      • Batch (Batch): Hanya digunakan untuk set data bounded (volume tetap) dan memberikan efisiensi lebih tinggi.

      • Streaming: Digunakan untuk set data bounded maupun unbounded (ukuran tidak diketahui atau tak hingga). Untuk beralih ke mode streaming, tentukan secara eksplisit pernyataan SET.

        Catatan

        Skrip tidak mendukung variabel.

        SET 'execution.runtime-mode' = 'streaming';
        SELECT * FROM `mysql_catalog`.flinktest.orders;
  6. Pilih atau buat kluster sesi.

    Di pojok kanan bawah halaman, klik Environment dan pilih kluster sesi Ververica Runtime (VVR) 8.0.4 atau yang lebih baru. Jika belum ada kluster sesi, buat kluster sesi.

  7. Pilih potongan kode target dan klik Run di sebelah kiri potongan tersebut.

  8. (Opsional) Di pojok kanan atas, klik Save. Tentukan nama file dan lokasi penyimpanan.

FAQ

Mengapa saya mendapatkan kesalahan "Querying an unbounded table 'XXX' in batch mode is not allowed. The table source is unbounded." saat menjalankan skrip?

Penyebab

Sumbernya adalah aliran unbounded dan memerlukan mode streaming. Jenis aliran data didefinisikan sebagai berikut:

  • Aliran bounded: Ukuran set data bersifat tetap.

  • Aliran unbounded: Ukuran set data tidak diketahui atau tak hingga.

Solusi

  • Gunakan sintaks SET untuk beralih ke mode streaming.

    SET 'execution.runtime-mode' = 'streaming';

Referensi