全部产品
Search
文档中心

Realtime Compute for Apache Flink:FAQ tentang kesalahan katalog

更新时间:Jul 02, 2025

Topik ini menjawab beberapa pertanyaan umum terkait kesalahan katalog.

Ketika membaca data dari Hologres melalui Hologres Catalog, Flink secara otomatis mengakhiri pekerjaan tanpa mengonsumsi data secara real time. Apa yang harus saya lakukan?

  • Penyebab

    Secara default, Realtime Compute for Apache Flink membaca data dari Hologres dalam mode batch, bukan secara real time.

  • Solusi

    Untuk mengubah mode eksekusi menjadi mode aliran, tambahkan petunjuk /*+ OPTIONS('binlog'='true') */ di skrip SQL Anda, seperti yang ditunjukkan berikut ini:

    INSERT INTO testfinish
    SELECT 
      col1,
      col2,
      col3
    FROM testsource /*+ OPTIONS ('binlog' = 'true') */
       LEFT JION testdim /*+ OPTIONS ('binlog' = 'true') */
             ON testsource.co11 = testdim.'col1';

Apa yang harus saya lakukan jika pesan kesalahan "CREATE TABLE ... AS TABLE ... statement requires target catalog ... implements org.apache.flink.table.catalog.CatalogTableProvider interface." muncul?

  • Deskripsi Masalah

    org.apache.flink.table.api.ValidationException: Validasi SQL gagal. CREATE TABLE ... AS TABLE ... statement requires target catalog 'XXXXXX' (MongoDBCatalog) implements org.apache.flink.table.catalog.CatalogTableProvider interface. Petunjuk: Silakan lihat dokumen dan gunakan katalog lain yang mendukung evolusi skema sebagai katalog target.
  • Penyebab

    Sistem penyimpanan upstream dan downstream yang digunakan tidak didukung oleh pernyataan CREATE TABLE AS. Sebagai contoh, tabel dari katalog MongoDB tidak dapat digunakan sebagai tabel sink untuk menulis data ketika menggunakan pernyataan CREATE TABLE AS untuk membuat deployment.

  • Solusi

    Gunakan sistem penyimpanan upstream dan downstream yang didukung oleh pernyataan CREATE TABLE AS. Untuk informasi lebih lanjut, lihat CREATE TABLE AS (CTAS). Anda dapat menggunakan tabel sumber dan tabel sink yang didukung oleh pernyataan CREATE TABLE AS.

Apa yang harus saya lakukan jika informasi tentang katalog MySQL diperoleh dengan kecepatan rendah atau pengecualian server dikembalikan selama kueri?

  • Deskripsi Masalah

    Setelah membuat katalog MySQL, informasi tentang katalog MySQL diperoleh dengan kecepatan rendah atau pengecualian server dikembalikan selama kueri. Gambar berikut menunjukkan detail kesalahan.问题实例

  • Penyebab

    Masalah ini mungkin disebabkan oleh latensi jaringan tinggi antara Flink dan MySQL, atau oleh pemutusan koneksi yang sering terjadi.

  • Solusi

    Anda dapat menggunakan salah satu metode berikut untuk menyelesaikan masalah:

    • Periksa apakah bandwidth publik dari Realtime Compute for Apache Flink ke MySQL mencukupi. Sebagai contoh, nilai default bandwidth publik mungkin hanya 2 Mbit/s. Selain itu, periksa apakah Akses lintas wilayah dilakukan. Untuk informasi lebih lanjut, lihat Bagaimana cara melihat bandwidth publik?

    • Jika koneksi jaringan Anda tidak stabil, tingkatkan nilai parameter interactive_timeout dan wait_timeout yang terkait dengan instance MySQL.

    • Tambahkan konfigurasi 'connect.timeout'='120s' ke klausa WITH saat membuat tabel untuk katalog MySQL.

Apa yang harus saya lakukan jika pesan kesalahan "Cannot obtain STS token from EMR meta-service." muncul?

  • Deskripsi Masalah

    Caused by: MetaException(message:Initialize DlfMetaStoreClient failed: Initialize DlfMetaStoreClient failed: Cannot obtain STS token from EMR meta-service. Perhatikan bahwa AK-Mode[dlf.catalog.akMode] hanya dapat digunakan di kluster EMR, jika tidak, Anda harus mengonfigurasi dlf.catalog.accessKeyId dan dlf.catalog.accessKeySecret secara eksplisit.)
      at com.aliyun.datalake.metastore.hive2.ProxyMetaStoreClient.createClient(ProxyMetaStoreClient.java:91)
      at com.aliyun.datalake.metastore.hive2.ProxyMetaStoreClient.<init>(ProxyMetaStoreClient.java:71)
      ... 41 more
  • Penyebab

    File konfigurasi tidak valid, sehingga menyebabkan kesalahan selama inisialisasi katalog Hive.

  • Solusi

    1. Temukan file hive-site.xml di direktori hive-conf-dir dan hapus informasi properti berikut dari file hive-site.xml:

       <property>
         <name>dlf.catalog.akMode</name>
         <value>EMR_AUTO</value>
       </property>
    2. Konfigurasikan ID AccessKey dan Rahasia AccessKey untuk katalog Hive.

      <property>
          <name>dlf.catalog.accessKeyId</name>
          <value>${AccessKeyId}</value>
        </property>
      <property>
          <name>dlf.catalog.accessKeySecret</name>
          <value>${AccessKeySecret}</value>
        </property>