All Products
Search
Document Center

Hologres:Impor menggunakan Flink

Last Updated:Mar 21, 2026

Alibaba Cloud Realtime Compute for Apache Flink adalah platform enterprise-grade berkinerja tinggi untuk pemrosesan big data real-time yang dibangun di atas Apache Flink. Hologres terintegrasi erat dengan Flink, memungkinkan Anda menulis dan mengkueri data streaming secara real time sehingga dapat membangun gudang data real-time secara efisien.

Jenis layanan

Realtime Compute for Apache Flink tidak menyimpan data, melainkan memproses data dari sistem penyimpanan eksternal dan mendukung jenis penyimpanan data berikut:

  • Tabel Sumber

    Tabel sumber menyediakan data masukan untuk pekerjaan Flink. Ketika tabel Hologres digunakan sebagai tabel sumber, data diimpor dalam mode batch, bukan mode streaming. Hologres melakukan pemindaian tabel penuh, mengirimkan data ke tujuan downstream, lalu pekerjaan selesai.

  • Tabel Dimensi

    Tabel dimensi biasanya digunakan untuk pencarian titik berdasarkan kunci. Oleh karena itu, saat menggunakan tabel Hologres sebagai tabel dimensi, kami merekomendasikan penggunaan Row-oriented Storage. Kondisi JOIN harus menggunakan kunci primer lengkap dari tabel tersebut.

  • Tabel Hasil

    Tabel hasil menerima dan menyimpan data keluaran dari komputasi Flink, serta menyediakan antarmuka baca-tulis untuk konsumsi downstream.

Realtime Compute for Apache Flink terintegrasi secara mendalam dengan Hologres untuk menawarkan fitur-fitur enterprise berikut:

  • Konsumsi Binary Log Hologres

    Fitur ini memungkinkan Anda mengonsumsi log perubahan dari tabel Hologres menggunakan pola antrian pesan (message queue).

  • Flink Catalog

    Anda dapat mengimpor metadata Hologres sebagai katalog di Flink, sehingga dapat membaca metadata Hologres langsung dari Konsol Fully Managed Flink tanpa perlu mendaftarkan tabel secara manual. Kemampuan ini meningkatkan efisiensi pengembangan dan memastikan akurasi skema.

  • Evolusi Skema

    Fully Managed Flink mendukung evolusi skema. Saat Flink membaca data JSON, layanan ini dapat secara otomatis mengurai tipe data dan membuat kolom tabel yang sesuai, memungkinkan evolusi model data secara dinamis.

Tabel berikut menjelaskan jenis layanan Flink yang didukung oleh Hologres beserta fitur-fiturnya.

Jenis layanan

Jenis penyimpanan data

Fitur lanjutan

Deskripsi

Source table

Result table

Dimension table

Hologres binlog

Flink catalog

Schema evolution

Semi-managed Flink

Mendukung Row-oriented Storage dan Column-oriented Storage. Untuk tabel sumber Binary Log, kami merekomendasikan penggunaan Row-oriented Storage atau penyimpanan hibrida baris-kolom.

Mendukung Row-oriented Storage dan Column-oriented Storage.

Kami merekomendasikan penggunaan Row-oriented Storage atau penyimpanan hibrida baris-kolom.

Didukung

Didukung

Didukung

Menggunakan platform pengembangan EMR Studio.

Blink in exclusive mode (tidak dilanjutkan)

Mendukung Row-oriented Storage dan Column-oriented Storage. Untuk tabel sumber Binary Log, kami merekomendasikan penggunaan Row-oriented Storage atau penyimpanan hibrida baris-kolom.

Mendukung Row-oriented Storage dan Column-oriented Storage.

Kami merekomendasikan penggunaan Row-oriented Storage atau penyimpanan hibrida baris-kolom.

Hologres V0.8 hanya mendukung Row-oriented Storage. Hologres V0.9 dan versi selanjutnya mendukung Row-oriented dan Column-oriented Storage. Kami merekomendasikan penggunaan Row-oriented Storage.

Tidak didukung

Tidak didukung

Menggunakan platform pengembangan Bayes.

Kami merekomendasikan penggunaan Fully Managed Flink.

Apache Flink V1.10

Tidak didukung

Mendukung Row-oriented Storage dan Column-oriented Storage.

Tidak didukung

Tidak didukung

Tidak didukung

Tidak didukung

-

Apache Flink V1.11 dan versi selanjutnya

Tidak didukung

Mendukung Row-oriented Storage dan Column-oriented Storage.

Kami merekomendasikan penggunaan Row-oriented Storage.

Tidak didukung

Tidak didukung

Tidak didukung

Kode konektor Hologres telah dibuka sejak Apache Flink V1.11. Untuk detailnya, lihat alibabacloud-hologres-connectors.

Apache Flink V1.13 dan versi selanjutnya

Didukung

Mendukung Row-oriented Storage dan Column-oriented Storage.

Kami merekomendasikan penggunaan Row-oriented Storage.

Tidak didukung

Tidak didukung

Tidak didukung

Kode konektor Hologres telah dibuka sejak Apache Flink V1.11. Untuk detailnya, lihat alibabacloud-hologres-connectors.

Catatan rilis konektor Hologres

Versi Flink

Versi VVR

Versi Hologres

Informasi pembaruan

Referensi

1.20

11.6

3.2.x

4.0.x

4.1.x

Source table:

  • Menambahkan mode startup LATEST_OFFSET untuk mengonsumsi data Binlog dari offset terbaru.

  • Menambahkan dukungan untuk tipe array VARCHAR dalam langganan Binlog.

Catalog:

  • Hologres Catalog kini mengekspos indeks global dan kunci pemindaian awalan sebagai indeks katalog.

Umum:

  • Menambahkan cache permintaan probe JDBC untuk mencegah SQL Gateway timeout dalam skenario multi-tabel.

Hologres

1.20

11.5

3.2.x

4.0.x

4.1.x

Source table:

  • Menambahkan parameter scan.binlog.prefer.physical-column.over.metadata untuk memprioritaskan kolom fisik ketika namanya bertentangan dengan kolom metadata.

  • Tabel sumber batch tidak lagi melakukan reshuffle secara default.

Dimension table:

  • Menambahkan validasi lookup untuk tabel kolom. Anda harus mengatur parameter lookup.read.column-table.enabled ke true untuk menggunakan tabel kolom sebagai tabel dimensi.

Umum:

  • Menambahkan dukungan untuk autentikasi Access Key V4 (AKV4).

Perbaikan bug:

  • Memperbaiki NullPointerException (NPE) yang terjadi saat menerima catatan DELETE selama operasi check-and-put.

  • Memperbarui holo-client untuk memperbaiki pembacaan kolom yang salah saat pemangkasan kolom diaktifkan untuk Binlog.

Hologres

1.20

11.4

3.2.x

4.0.x

4.1.x

Sink table:

  • Menambahkan parameter sink.ignore-null-when-update-by-expr.enabled untuk mengabaikan nilai null selama pembaruan yang menggunakan ekspresi insert.

  • Menambahkan dukungan untuk ekspresi konflik insert (conflict expr) untuk penanganan konflik kustom.

  • Mode copy streaming kini mendukung format baris biner, meningkatkan performa penulisan.

Dimension table:

  • Menambahkan dukungan untuk filter pushdown pada tabel dimensi.

Perbaikan bug:

  • Memperbarui holo-client untuk memperbaiki bug yang mencegah koneksi tabel dimensi one-to-many ditutup saat pekerjaan dihentikan.

Hologres

1.20

11.3

3.1.x

3.2.x

4.0.x

Source table:

  • Menambahkan dukungan untuk kompresi data dan pemangkasan kolom dalam konsumsi Binlog, mengurangi network traffic dan penggunaan memori.

  • Menambahkan dukungan untuk filter pushdown dalam Binlog, mengurangi transfer data yang tidak perlu.

Sink table:

  • Memperbaiki konflik antara sufiks partisi dan partisi dinamis selama pembuatan.

  • Menambahkan dukungan untuk menulis ke kolom yang dihasilkan (generated columns).

Umum:

  • Koneksi kini secara otomatis beralih ke frontend (FE) saat Anda memilih tipe data yang tidak didukung oleh FE tetap.

  • Memperbarui holo-client untuk memperbaiki kegagalan koneksi saat nama database mengandung @warehouse.

Perbaikan bug:

  • Memperbaiki masalah di mana konektor tidak dapat pulih dari checkpoint jika tabel telah dihapus.

  • Memperbaiki masalah di mana LSN status partisi diinisialisasi salah ke 0 untuk shard kosong saat mengonsumsi dari tabel induk partisi.

  • Memperbaiki kegagalan saat membaca data RoaringBitmap melalui JDBC Binlog.

Hologres

1.20

11.2

3.1.x

3.2.x

4.0.x

Sink table:

  • Menambahkan pengaturan tingkat tabel, sink.not-generate-binlog.enabled, untuk mencegah pembuatan Binlog selama penulisan. Ini mencegah loop konsumsi Binlog.

  • Kebijakan data kotor kini hanya berlaku untuk pengecualian data kotor yang sebenarnya.

Umum:

  • Metadata tabel tidak lagi diakses saat membuat HologresDynamicTableSink, mempercepat pengiriman pekerjaan.

Perbaikan bug:

  • Memperbaiki masalah kompatibilitas mundur dengan konfigurasi sumber Binlog dan upsert.

  • Memperbaiki masalah kompatibilitas mundur dengan parameter konfigurasi Hologres.

  • Memperbaiki masalah kompatibilitas dengan parameter yang sudah tidak digunakan.

  • Memperbaiki NPE yang terjadi saat menulis array TEXT yang berisi elemen null.

Hologres

1.20

11.1

3.1.x

3.2.x

Source table:

  • Menambahkan dukungan untuk menentukan nilai partisi guna berlangganan Binlog tabel partisi Hologres.

Sink table:

  • Menambahkan dukungan untuk partisi berformat tanggal.

Dimension table:

  • Menambahkan metrik untuk hit dan miss cache.

Umum:

  • Konektor kini secara otomatis memilih mode koneksi optimal berdasarkan isu yang diketahui.

  • Memperbaiki masalah di mana opsi dengan format non-standar dalam Petunjuk SQL gagal mengganti opsi katalog.

Hologres

1.20

11.0

3.1.x

3.2.x

Umum:

  • Menghapus semua kode dan dependensi terkait RPC dan HoloHub. Konektor kini secara eksklusif menggunakan mode JDBC. Nama parameter telah direfaktor.

Source table:

  • Tabel sumber untuk data lengkap dan inkremental: Setelah pembacaan snapshot lengkap selesai, konsumsi inkremental dimulai dari LSN maksimum saat ini untuk mencegah kehilangan data.

Hologres

1.17

8.0.11

2.1.x

2.2.x

3.0.x

Source table:

  • Menambahkan dukungan untuk membaca Binlog tabel partisi.

  • Menambahkan dukungan untuk kolom metadata dalam tabel sumber.

  • Tipe desimal dalam JDBC Binlog kini menggunakan skala dari tipe Flink.

  • Tabel sumber untuk data lengkap dan inkremental: Setelah pembacaan snapshot selesai, konsumsi inkremental kini dimulai dari LSN maksimum saat ini.

Sink table:

  • Menambahkan kemampuan check-and-put untuk penulisan kondisional.

  • Menambahkan dukungan untuk flushing agresif, mengurangi latensi visibilitas data.

  • Mode penulisan copy kini mendukung tipe data TIME.

  • Menambahkan parameter ukuran buffer sel maksimum untuk mode penulisan copy.

  • Menambahkan idle-session-timeout dalam mode penulisan copy untuk mencegah koneksi idle berkepanjangan.

Umum:

  • Mengubah nilai default parameter remove-u0000-in-text.enabled menjadi true.

  • Menambahkan dukungan untuk kompatibilitas status dalam skenario peningkatan dan penurunan spesifikasi.

  • Pabrik tidak lagi memvalidasi parameter Binlog saat tabel dimensi katalog digunakan, mencegah error positif palsu.

  • Pekerjaan kini hanya mencoba ulang tiga kali sebelum gagal cepat selama penerapan untuk mencegah penantian lama.

Perbaikan bug:

  • Memperbarui holo-client untuk memperbaiki masalah penguraian URL JDBC.

  • Memperbaiki masalah di mana konsumsi JDBC Binlog untuk tabel sumber data lengkap dan inkremental dimulai dari LSN+1 setelah checkpoint.

  • Memperbaiki kesalahan normalisasi tipe dalam skenario CTAS saat penghapusan kolom dan perubahan tipe terjadi bersamaan.

Hologres

1.17

8.0.9~8.0.10

2.1.x

2.2.x

3.0.x

  • Memperbaiki potensi masalah deadlock saat klien baru didaftarkan dalam kolam koneksi bersama.

  • ID tabel tidak lagi diperiksa secara paksa saat pekerjaan konsumsi Binlog dilanjutkan dari status tersimpan.

Hologres

1.17

8.0.8

2.1.x

2.2.x

Sink table:

  • Menambahkan parameter sink.delete-strategy untuk memberikan lebih banyak opsi dalam menangani catatan UPDATE_BEFORE, melengkapi opsi ignoredelete yang sudah ada.

Hologres

1.17

8.0.7

2.1.x

Dimension table:

  • Memperbaiki masalah di mana pengambilan metadata yang sering untuk tabel dimensi dengan banyak bidang menyebabkan timeout penerapan pekerjaan.

Umum:

  • Memperbaiki kesalahan izin tidak mencukupi yang terjadi saat tabel berbeda menggunakan pengguna berbeda dalam kolam koneksi bersama.

Hologres

1.17

8.0.6

2.1.x

Source table:

  • Konektor kini secara otomatis beralih dari mode HoloHub ke mode JDBC untuk Hologres V2.1 atau versi selanjutnya, karena mode HoloHub sudah tidak digunakan lagi di versi tersebut. Untuk informasi lebih lanjut, lihat Replikasi binlog dengan Flink atau Blink.

Umum:

  • Menambahkan dukungan untuk parameter type-mapping.timestamp-converting.legacy untuk membaca dan menulis tipe data Flink TIMESTAMP_LTZ dengan benar. Untuk informasi lebih lanjut, lihat Hologres.

1.17

8.0.5

2.0.x

2.1.x

Source table:

  • Untuk Hologres V2.1 dan versi selanjutnya, Anda tidak perlu lagi membuat slot untuk mengonsumsi data Binlog melalui JDBC. Untuk informasi lebih lanjut, lihat Consume Binlog via JDBC. Akibatnya, mulai dari versi ini, publikasi dan slot tidak lagi dibuat secara otomatis jika instans Hologres adalah V2.1 atau versi selanjutnya.

Sink table:

  • Parameter baru deduplication.enabled ditambahkan. Nilai default adalah true. Saat parameter ini diatur ke false, tabel hasil dapat melewati deduplikasi selama proses agregasi dan penulisan. Fitur ini berguna untuk skenario seperti replay penuh aliran CDC upstream.

  • Tabel tanpa kunci primer kini mendukung penulisan bulk load, yang mengonsumsi lebih sedikit resource Hologres dibanding metode copy JDBC sebelumnya.

Umum:

  • Menambahkan dukungan untuk mengaktifkan enkripsi dalam transit dengan menggunakan parameter connection.ssl.mode dan connection.ssl.root-cert.location.

  • Menambahkan parameter timeout untuk koneksi JDBC internal untuk mencegah koneksi klien tidak responsif dalam skenario seperti restart server yang tidak terduga.

1.17

8.0.4

2.0.x

2.1.x

Source table:

  • Memperbaiki masalah di mana publikasi sisa dapat mencegah konsumsi Binlog setelah pembangunan ulang tabel. Konektor kini secara otomatis menghapus publikasi lama.

Umum:

  • Tabel dimensi Hologres dan tabel sink dalam pekerjaan yang sama kini berbagi kolam koneksi, yang meningkatkan batas koneksi efektif.

1.17

8.0.3

2.0.x

2.1.x

Umum:

  • Terlepas dari versi instans Hologres, tabel dimensi dan tabel sink tidak lagi mendukung mode RPC. Jika Anda memilih mode RPC, mode tersebut secara otomatis beralih ke mode jdbc_fixed. Kami merekomendasikan agar Anda meningkatkan instans jika menggunakan versi awal.

Hologres

1.15

6.0.7

  • 1.3.x

  • 2.0.x

  • Source table:

    Menambahkan kompatibilitas dengan Hologres V2.0. Jika konektor mendeteksi koneksi ke instans Hologres V2.0 atau versi selanjutnya, mode Binlog HoloHub secara otomatis beralih ke mode Binlog JDBC.

  • Dimension table:

    Menambahkan kompatibilitas dengan Hologres V2.0. Jika konektor mendeteksi koneksi ke instans Hologres V2.0 atau versi selanjutnya, mode RPC secara otomatis beralih ke mode jdbc_fixed.

  • Sink table:

    • Menambahkan kompatibilitas dengan Hologres V2.0. Jika konektor mendeteksi koneksi ke instans Hologres V2.0 atau versi selanjutnya, mode RPC secara otomatis beralih ke mode jdbc_fixed.

    • Menambahkan dukungan untuk pembaruan kolom parsial. Anda hanya dapat memasukkan bidang yang dideklarasikan dalam pernyataan INSERT Flink. Fitur ini menyederhanakan skenario merge tabel lebar.

  • Umum:

    Saat terjadi pengecualian konversi catatan, konektor kini mencatat data sumber dan hasil konversi untuk membantu troubleshooting masalah data kotor.

  • Perbaikan bug:

    • Memperbaiki masalah di mana penggunaan connectionPoolName yang sama untuk instans atau database berbeda dalam pekerjaan yang sama tidak menimbulkan error.

    • Memperbaiki pengecualian null pointer di versi 6.0.6 yang terjadi saat tipe string dalam tabel dimensi memiliki nilai null.

Hologres

1.15

6.0.6

1.3.x

Source table:

  • Parameter nama slot tidak lagi diperlukan saat Anda mengonsumsi data Binlog Hologres dalam mode JDBC. Slot default dapat dibuat untuk memungkinkan peralihan lebih lancar dari mode HoloHub.

  • Parameter baru enable_filter_push_down ditambahkan. Tabel sumber batch tidak lagi mendorong kondisi filter secara default. Atur parameter ini ke true untuk mengaktifkan filter pushdown.

Hologres

1.15

6.0.5

1.3.x

  • Umum: Saat pekerjaan dimulai, semua informasi parameter dicetak ke log TaskManager untuk mempermudah troubleshooting.

  • CTAS/CDAS: Menambahkan mode toleran untuk tipe data bidang. Dalam mode ini, jika terjadi perubahan tipe data di sumber, perubahan tersebut dianggap berhasil selama tipe asli dan baru dapat dinormalisasi ke tipe yang sama.

  • Hologres Catalog: Meningkatkan sintaks ALTER TABLE untuk mendukung modifikasi properti tabel fisik Hologres, termasuk mengubah nama tabel, menambah kolom, mengganti nama kolom, dan memodifikasi komentar kolom.

1.15

6.0.3~6.0.4

1.3.x

Source table:

  • Menambahkan mode JDBC untuk mengonsumsi data Binlog Hologres. Mode ini mendukung lebih banyak tipe data dan memungkinkan akun kustom.

  • Menambahkan dukungan untuk filter pushdown untuk tabel sumber batch dan fase lengkap tabel sumber data lengkap dan inkremental.

Sink table:

Menambahkan dukungan untuk menulis data dalam mode Fixed Copy. Fixed Copy adalah fitur baru di Hologres V1.3. Dibanding mode JDBC, mode Fixed Copy memberikan throughput lebih tinggi dan latensi data lebih rendah melalui streaming, serta mengurangi konsumsi memori klien dengan menghilangkan batching.

Hologres Catalog:

  • Menambahkan dukungan untuk mengatur properti tabel default saat membuat katalog.

Parameter sdkMode: Mode berbeda tersedia untuk jenis tabel berbeda di Hologres. Parameter sdkMode kini digunakan untuk mengonsolidasikan pemilihan mode.

1.13

4.0.18

1.1 dan versi selanjutnya

Memperbaiki masalah di mana pelaporan metrik untuk tabel sink menurunkan performa penulisan.

1.13 dan 1.15

4.0.15 dan 6.0.2

1.1 dan versi selanjutnya

Source table:

  • Tabel sumber batch kini case-sensitive secara default.

  • Menambahkan dukungan untuk mengonfigurasi timeout transaksi untuk operasi Scan pada tabel sumber batch.

  • Memperbaiki masalah di mana penguraian string kompleks dalam tabel sumber batch bisa gagal.

  • Menambahkan mode Upsert untuk tabel sumber data lengkap dan inkremental.

Dimension table:

Menambahkan dukungan untuk mengonfigurasi timeout permintaan asinkron (asyncTimeoutMs) untuk tabel dimensi Hologres.

Sink table:

  • Menambahkan dukungan untuk sintaks PARTITION BY untuk mendefinisikan tabel partisi saat membuat tabel sink Hologres dengan CTAS.

  • Metrik mendukung metrik currentSendTime.

1.13

4.0.13

1.1 dan versi selanjutnya

  • Menambahkan dukungan untuk tabel sumber data lengkap dan inkremental.

  • Menambahkan dukungan untuk DataStream API.

1.13

4.0.11

0.10 dan versi selanjutnya

Menambahkan dukungan untuk CTAS dan CDAS.

1.13

4.0.8

0.10 dan versi selanjutnya

Menambahkan dukungan untuk Hologres Catalog untuk tabel sink, tabel sumber, dan tabel dimensi.

Manage Hologres catalogs

1.13

3.0.0

0.9 dan versi selanjutnya

Menambahkan dukungan untuk konsumsi data real-time dari Hologres.

Fully managed Flink

Isu yang diketahui dan perbaikannya

  • Catatan tentang isu dan perbaikan

    • Versi yang terpengaruh untuk setiap isu telah ditentukan dengan jelas. Versi di luar rentang yang tercantum tidak terpengaruh.

    • Jika versi yang terpengaruh ditandai sebagai "N/A", isu tersebut kemungkinan merupakan cacat pada mesin Hologres, bukan pada konektor.

  • Tingkat keparahan

    • P0 (Kritis): Peningkatan segera direkomendasikan. Memunculkan isu ini dapat memengaruhi operasi produksi, seperti kebenaran kueri atau tingkat keberhasilan penulisan.

    • P1 (Tinggi): Peningkatan direkomendasikan untuk mencegah potensi masalah.

    • P2 (Sedang): Peningkatan opsional. Isu-isu ini terjadi secara intermiten dan dapat diselesaikan dengan solusi sementara atau restart pekerjaan.

Tingkat keparahan

Deskripsi

Versi yang terpengaruh

Versi perbaikan

Solusi

P0

Saat menulis ke subset kolom dalam tabel hasil, jika bidang yang tidak ditulis memiliki nilai default terkait waktu (seperti current_timestamp atau now()), nilai yang diisi mungkin salah. Hal ini terjadi karena mode FixedFE tidak menangani nilai default terkait waktu dengan benar.

11.0-11.5

N/A

Gunakan fungsi now() di sisi Flink untuk meneruskan nilai ke bidang yang sesuai dalam tabel hasil. Atau, atur parameter connection.fixed.enabled ke false.

P0

Saat mengonsumsi Binlog, jika kolom fisik dan kolom metadata memiliki nama yang sama, seperti table_name, konektor salah membaca nilai dari kolom metadata alih-alih kolom fisik, yang mengakibatkan data salah.

8.0.11, 11.0-11.4

11.5

Tingkatkan ke versi 11.5 atau versi selanjutnya dan atur scan.binlog.prefer.physical-column.over.metadata ke true. Atau, hindari mendeklarasikan kolom fisik dengan nama yang sama dengan kolom metadata dalam DDL tabel sumber Binlog.

P1

Saat mengonsumsi Binlog, pemangkasan kolom dapat membaca data ke kolom yang salah. Hal ini terjadi karena holo-client mungkin mengambil kolom yang tidak diharapkan saat menangani pemangkasan kolom.

11.3-11.5

Hotfix telah dirilis untuk semua versi yang terpengaruh (11.3-11.5).

Hotfix mengatasi isu ini, sehingga Anda tidak mungkin mengalaminya. Untuk pekerjaan DataStream, gunakan versi konektor terbaru.

P2

Pemindai untuk tabel dimensi one-to-many tidak ditutup dengan benar saat Anda menghentikan pekerjaan. Hal ini dapat menyebabkan kebocoran resource atau timeout pekerjaan saat shutdown. Masalah ini disebabkan oleh logika shutdown pemindai internal holo-client yang bermasalah.

Versi sebelum 11.3

11.4

Tingkatkan ke versi 11.4 atau versi selanjutnya.

P1

Saat menggunakan fitur check-and-put, memproses catatan hapus melemparkan NullPointerException (NPE) dan menyebabkan pekerjaan gagal.

8.0.11-11.4

11.5

Tingkatkan ke versi 11.5 atau versi selanjutnya. Atau, hindari menggunakan check-and-put pada stream yang memiliki operasi hapus.

P2

Konektor gagal melanjutkan dari checkpoint jika tabel dihapus dan dibuat ulang saat pekerjaan berjalan.

11.0-11.2

11.3

Di lingkungan pengujian, Anda dapat meningkatkan ke versi 11.3 atau versi selanjutnya untuk menghindari isu ini. Catatan: Menghapus tabel selama konsumsi Binlog memengaruhi kebenaran data. Oleh karena itu, hindari membangun ulang tabel selama konsumsi Binlog di lingkungan produksi.

P1

Membaca data RoaringBitmap melalui JDBC Binlog gagal dan melemparkan pengecualian penguraian.

11.0-11.2

11.3

Tingkatkan ke versi 11.3 atau versi selanjutnya.

P1

Saat mengonsumsi dari tabel partisi fisik, jika shard tidak memiliki data, konektor salah menginisialisasi Log Sequence Number (LSN) status ke 0. Hal ini menyebabkan kehilangan data saat pekerjaan dilanjutkan dari status ini.

Versi sebelum 8.0.10, 11.0-11.2

8.0.11, 11.3

Tingkatkan ke versi 8.0.11, atau 11.3 atau versi selanjutnya.

P1

Menulis array TEXT yang berisi elemen null melemparkan NPE dan menyebabkan operasi penulisan gagal.

11.0-11.1

11.2

Tingkatkan ke versi 11.2 atau versi selanjutnya. Atau, pastikan array TEXT upstream tidak berisi elemen null.

P1

Konflik antara sufiks pembuatan partisi dan partisi dinamis menyebabkan pembuatan partisi gagal.

11.0-11.2

11.3

Tingkatkan ke versi 11.3 atau versi selanjutnya.

P2

Pengecualian yang tidak terkait data kotor dapat memicu kebijakan data kotor, menyebabkan pengecualian valid ditangani secara salah (misalnya, dibuang diam-diam).

11.0-11.1

11.2

Tingkatkan ke versi 11.2 atau versi selanjutnya.

P1

Untuk tabel sumber Integrasi Lengkap dan Inkremental, JDBC Binlog mulai mengonsumsi di LSN+1. Jika LSN saat ini sudah ada di checkpoint, melanjutkan darinya mungkin melewatkan satu catatan.

8.0.10 dan versi sebelumnya

8.0.11

Tingkatkan ke versi 8.0.11.

P2

Dalam skenario CTAS, jika penghapusan kolom dan perubahan tipe terjadi dalam operasi yang sama, kesalahan normalisasi tipe menyebabkan perubahan skema gagal.

8.0.10 dan versi sebelumnya

8.0.11

Tingkatkan ke versi 8.0.11. Atau, hindari menghapus kolom dan mengubah tipe dalam operasi yang sama.

P2

Saat menggunakan tabel dimensi katalog, validasi parameter Binlog oleh factory menyebabkan pengecualian positif palsu.

8.0.10 dan versi sebelumnya

8.0.11

Tingkatkan ke versi 8.0.11.

P2

Dalam skenario multi-tabel, jumlah permintaan polling JDBC yang berlebihan menyebabkan SQL Gateway timeout.

11.0-11.5

11.6

Tingkatkan ke versi 11.6. Atau, kurangi jumlah tabel Hologres dalam satu pekerjaan.

P2

Saat mode FixedFE dipilih, jika tabel berisi tipe data yang tidak didukung oleh FixedFE, koneksi tidak secara otomatis menurunkan spesifikasi ke koneksi FE, menyebabkan pengecualian penulisan atau kueri.

11.0-11.2

11.3

Tingkatkan ke versi 11.3 atau versi selanjutnya. Atau, tentukan secara manual mode koneksi FE.

P1

Saat mengonsumsi Binlog dalam mode JDBC, pengecualian "Binlog Convert Failed" mungkin terjadi, atau pembacaan data dari beberapa shard bisa macet. Hal ini terjadi karena gateway instans Hologres memiliki masalah saat mengembalikan pengecualian timeout backend ke klien, menyebabkan operasi baca hang atau gagal dengan kesalahan penguraian.

N/A

N/A

Isu ini lebih mungkin terjadi saat tekanan balik pekerjaan tinggi. Jika pembacaan data macet, restart pekerjaan dan lanjutkan dari checkpoint terbaru.

Untuk menyelesaikan isu ini sepenuhnya, tingkatkan instans Hologres Anda ke versi 2.2.21 atau versi selanjutnya.

P2

Pekerjaan diterapkan dengan lambat atau timeout. Analisis thread dump menunjukkan bahwa proses terjebak di GetTableSchema.

N/A

N/A

Isu ini dapat memiliki berbagai penyebab. Anda dapat melakukan troubleshooting dengan mengikuti langkah-langkah berikut:

  1. Verifikasi konektivitas jaringan antara kluster Flink dan instans Hologres.

  2. Atur parameter jdbcRetryCount ke 1 untuk memastikan akar penyebab pengecualian tidak disembunyikan oleh retry internal.

  3. Di Hologres V2.0 dan versi sebelumnya, operasi DDL yang sering dapat menyebabkan keterlambatan pembersihan metadata, yang mungkin memperlambat kueri metadata tabel. Kami merekomendasikan peningkatan instans Hologres Anda ke V2.1 atau versi selanjutnya.

P0

Saat menulis data TEXT, JSON, atau JSONB ke Hologres dalam mode FixedFE (yang sesuai dengan mode jdbc_fixed konektor), karakter tidak valid dalam sumber data dapat melemparkan pengecualian tak terduga. Hal ini dapat menyebabkan node FE yang terhubung restart, mengganggu koneksi.

N/A

N/A

Jika Anda tidak dapat menjamin validitas string upstream, Anda harus menulis data dalam mode JDBC dan mengaktifkan pengaturan untuk tabel hasil.

Parameter remove-u0000-in-text.enabled.

Atau, tingkatkan instans Hologres Anda ke versi 3.0 atau versi selanjutnya untuk terus menggunakan mode jdbc_fixed.

P1

Saat melakukan join one-to-many pada tabel dimensi JDBC, tugas Flink mungkin mengalami penggunaan memori tinggi atau kesalahan Out Of Memory (OOM).

N/A

N/A

Di Hologres V1.3, jika Anda menggunakan prefix scan dan jumlah hasil kueri melebihi nilai jdbcScanFetchSize, kueri batch mungkin tidak berhenti. Sebagai solusi sementara, atur jdbcScanFetchSize ke nilai besar, seperti 100000.

Untuk menyelesaikan isu ini sepenuhnya, tingkatkan instans Hologres Anda ke V2.0 atau versi selanjutnya.

P1

Pekerjaan Binlog melemparkan pengecualian the table id parsed from checkpoint is different from the current table id selama pemulihan stateful. Alasannya adalah pekerjaan melakukan operasi TRUNCATE atau membuat ulang tabel selama eksekusi sebelumnya. Checkpoint menyimpan ID tabel dari startup awal pekerjaan, yang tidak sesuai dengan ID tabel saat ini.

8.0.4

8.0.9

Mulai dari versi 8.0.9, pemeriksaan ID tabel tidak lagi diberlakukan. Sebagai gantinya, peringatan dicatat, yang memungkinkan pekerjaan dilanjutkan dari status terbaru. Namun, hindari membangun ulang tabel saat pekerjaan Binlog sedang berjalan, karena operasi ini menyebabkan semua data Binlog sebelumnya hilang.

P2

Tekanan balik terjadi saat pekerjaan berjalan. Thread dump menunjukkan bahwa pool eksekusi terjebak di metode close() atau start(). Hal ini dapat terjadi jika beberapa klien berbagi kolam koneksi yang sama, yang mungkin menyebabkan deadlock yang mencegah kolam koneksi ditutup dengan benar.

8.0.5

8.0.9

Tingkatkan versi konektor.

P2

Jika Anda menjalankan pekerjaan untuk konsumsi lengkap dan inkremental setelah melakukan operasi DELETE FROM pada tabel sumber, fase konsumsi lengkap mengonsumsi ulang semua data Binlog dari awal karena tidak ada data yang tersedia dalam fase inkremental.

8.0.6 dan versi sebelumnya

8.0.7

Tingkatkan versi konektor atau tentukan waktu mulai untuk konsumsi inkremental.

P1

Jika tabel dimensi berisi banyak bidang, penerapan pekerjaan timeout.

8.0.6

8.0.7

Tingkatkan versi konektor.

P0

Saat parameter enable_filter_push_down diaktifkan untuk tabel sumber batch, filter tidak berlaku. Akibatnya, konektor tetap membaca data yang seharusnya difilter.

Catatan

Isu ini tidak memengaruhi tabel sumber untuk Integrasi Lengkap dan Inkremental atau tabel sumber Binlog.

8.0.5 dan versi sebelumnya

8.0.6

Tingkatkan versi konektor.

P0

Saat menulis data JSON atau JSONB ke Hologres dalam mode FixedFE (yang sesuai dengan mode jdbc_fixed konektor), jika data sumber berisi bidang JSON atau JSONB yang tidak valid, node FE yang terhubung restart dan koneksi FE terputus.

8.0.5 dan versi sebelumnya

Tidak ada

Jika validitas string JSON atau JSONB upstream tidak dapat dijamin, gunakan mode JDBC untuk menulis data.

P1

Saat melakukan join one-to-many pada tabel dimensi JDBC, pengecualian internal seperti kegagalan koneksi tidak dilemparkan dengan benar. Hal ini dapat muncul sebagai tekanan balik pada node join asinkron, menyebabkan aliran data berhenti. Isu ini jarang terjadi.

6.0.7 dan versi sebelumnya

8.0.3

Tingkatkan versi konektor. Anda juga dapat me-restart pekerjaan sebagai solusi sementara.

P1

Terjadi kebocoran memori saat mengonsumsi data Binlog dalam mode JDBC. Hal ini mungkin muncul sebagai laju konsumsi tinggi di awal pekerjaan, yang kemudian terus menurun.

6.0.7 dan versi sebelumnya

6.0.7

Tingkatkan versi konektor. Untuk pekerjaan DataStream, Anda harus menggunakan dependensi versi 6.0.7-1.

P0

Saat menulis dalam mode JDBC, pengecualian yang ditangkap selama flush terjadwal (dikontrol oleh parameter jdbcWriteFlushInterval) tidak dilemparkan hingga catatan data berikutnya diproses. Jika trafik penulisan rendah, checkpoint mungkin berhasil dibuat meskipun pengecualian telah ditangkap tetapi belum dilemparkan. Jika kegagalan berikutnya terjadi, pekerjaan akan dilanjutkan dari checkpoint tidak valid ini, yang dapat menyebabkan kehilangan data.

6.0.6 dan versi sebelumnya

6.0.7

Isu ini lebih mungkin terjadi dengan trafik rendah. Tingkatkan versi konektor, atau atur jdbcWriteFlushInterval lebih lama dari interval checkpoint.

P2

Saat mengonsumsi data Binlog dalam mode JDBC tanpa menyetel nama slot, sistem secara otomatis membuatnya. Jika nama tabel atau skema berisi karakter khusus, nama slot yang dihasilkan secara otomatis tidak valid dan menyebabkan kesalahan sintaks.

6.0.6

6.0.7

Tingkatkan versi konektor. Untuk pekerjaan DataStream, Anda harus menggunakan dependensi versi 6.0.7-1.

P1

Jika instans atau database Hologres berbeda dalam pekerjaan yang sama menggunakan connectionPoolName yang sama, pengecualian seperti "table not found" dapat terjadi.

6.0.6 dan versi sebelumnya

6.0.7

Gunakan connectionPoolName yang berbeda untuk setiap instans atau database Hologres yang digunakan dalam pekerjaan yang sama.

P1

NPE dilemparkan jika tabel dimensi berisi bidang string dengan nilai null.

6.0.6

6.0.7

Tingkatkan versi konektor.

P0

Filter pushdown diaktifkan secara default untuk tabel sumber Hologres. Namun, jika pekerjaan juga menggunakan tabel dimensi Hologres, dan DML penulisan berisi filter pada bidang non-kunci primer tabel dimensi, filter tersebut juga salah didorong ke tabel dimensi. Hal ini dapat menyebabkan hasil join tabel dimensi salah.

6.0.3-6.0.5

6.0.6

Tingkatkan versi konektor.

P0

Jika beberapa tabel hasil memiliki pengaturan mutatetype berbeda tetapi berbagi connectionPoolName yang sama untuk menggunakan kembali kolam koneksi, pengaturan mutatetype dapat ditimpa, sehingga tidak berlaku.

6.0.2 dan versi sebelumnya

6.0.3

Atur mutatetype untuk semua tabel hasil ke InsertOrUpdate. Atau, gunakan connectionPoolName yang berbeda untuk tabel dengan pengaturan mutatetype berbeda.

P1

NPE dilemparkan jika bidang hg_binlog_timestamp_us dideklarasikan dalam DDL tabel sumber Binlog.

6.0.2

6.0.3

Jangan gunakan bidang ini, atau tingkatkan versi konektor.

P1

Pelaporan metrik memengaruhi performa penulisan tabel hasil. thread dump dari node sink menunjukkan bahwa proses terjebak di reportWriteLatency.

4.0.15-4.0.17

4.0.18

Gunakan versi yang tidak terpengaruh oleh isu ini.

P2

Saat membaca data tipe STRING atau STRING ARRAY dari tabel sumber batch, penguraian gagal jika data berisi karakter khusus.

4.0.14 dan versi sebelumnya

4.0.15

Hapus data kotor dari tabel sumber, atau tingkatkan versi konektor.

P2

Jika Anda mendeklarasikan bidang khusus Binlog, seperti hg_binlog, dalam DDL tabel sumber untuk Integrasi Lengkap dan Inkremental, data lengkap tidak dapat dikonsumsi.

4.0.13

4.0.14

Hindari menggunakan fitur Integrasi Lengkap dan Inkremental, atau tingkatkan versi konektor.