Flink yang sepenuhnya dikelola adalah layanan komputasi real-time dari Alibaba Cloud, dibangun berdasarkan Apache Flink. Hologres sangat kompatibel dengan Flink yang sepenuhnya dikelola, memungkinkan Anda menggunakan tabel sumber, tabel dimensi, tabel hasil, dan katalog Hologres di dalamnya. Hal ini memungkinkan pembuatan gudang data real-time terpadu. Topik ini menjelaskan cara menggunakan instance Hologres sebagai penyimpanan hulu dan hilir untuk data di Flink yang sepenuhnya dikelola.
Tabel sumber Hologres, tabel dimensi, dan tabel hasil
Flink yang sepenuhnya dikelola mendukung tabel sumber Hologres, tabel dimensi, dan tabel hasil. Untuk informasi lebih lanjut, lihat Konektor Hologres.
Konsumsi real-time log biner
Realtime Compute for Apache Flink mengonsumsi data log biner secara real-time menggunakan konektor Hologres. Versi yang menggunakan Ververica Runtime (VVR) 6.0.3 atau lebih baru mendukung tabel sumber aliran dalam mode Java Database Connectivity (JDBC). Mode JDBC mendukung lebih banyak tipe data dibandingkan mode HoloHub serta mendukung akun kustom. Untuk informasi lebih lanjut, lihat Gunakan Realtime Compute for Apache Flink untuk mengonsumsi log biner secara real-time.
Katalog Hologres
Realtime Compute for Apache Flink mendukung katalog Hologres, memungkinkan Anda membaca metadata Hologres di konsol pengembangan tanpa perlu mendaftarkan tabel Hologres. Ini meningkatkan efisiensi pengembangan dan penyebaran serta memastikan akurasi skema tabel. Untuk informasi lebih lanjut, lihat Kelola Katalog Hologres.
Realtime Compute for Apache Flink juga mendukung evolusi skema dan sinkronisasi database berdasarkan katalog Hologres. Untuk informasi lebih lanjut, lihat CREATE TABLE AS (CTAS) dan CREATE DATABASE AS (CDAS).
Konektor DataStream Hologres
Untuk membaca atau menulis data ke Hologres menggunakan Realtime Compute for Apache Flink, Anda perlu menggunakan Konektor DataStream Hologres. Untuk informasi lebih lanjut, lihat Konektor DataStream Hologres.
Pemetaan antara tipe data
Untuk informasi lebih lanjut tentang pemetaan antara tipe data di Realtime Compute for Apache Flink dan Hologres, lihat Tipe Data.
Saat menerapkan rancangan SQL di Realtime Compute for Apache Flink, Anda harus mendefinisikan tipe data ke tipe yang didukung oleh Realtime Compute for Apache Flink, baik untuk tabel sumber, tabel dimensi, maupun tabel hasil Hologres. Definisi tipe data ke tipe yang didukung oleh Hologres hanya dapat dilakukan saat membuat tabel internal di Hologres.
Untuk menulis data JSON dari Realtime Compute for Apache Flink ke Hologres, definisikan tipe data kolom untuk tabel sumber dan tabel hasil menjadi VARCHAR, serta atur tipe data kolom untuk tabel internal Hologres menjadi JSONB.
Tabel Internal Hologres: Atur tipe data pesan menjadi JSONB.
BEGIN ; DROP TABLE IF EXISTS holo_internal_table; CREATE TABLE IF NOT EXISTS holo_internal_table ( id BIGINT NOT NULL, message JSONB NOT NULL ); CALL set_table_property('holo_internal_table', 'distribution_key', 'id'); COMMIT ;Penerapan Flink: Atur tipe data pesan di tabel sumber dan tabel hasil menjadi VARCHAR.
CREATE TEMPORARY TABLE randomSource ( id BIGINT, message VARCHAR ) WITH ('connector' = 'datagen'); CREATE TEMPORARY TABLE sink_holo ( id BIGINT, message VARCHAR ) WITH ( 'connector' = 'hologres', 'endpoint' = '', 'username' = '', 'password' = '', 'dbname' = '', 'tablename' = 'holo_internal_table' ); INSERT INTO sink_holo SELECT 1, '{"k":"v"}' FROM randomSource;
Catatan Rilis Konektor
Untuk informasi lebih lanjut tentang catatan rilis konektor, lihat Catatan Rilis Konektor Hologres.
FAQ
Untuk informasi lebih lanjut tentang masalah umum dan solusinya saat menggunakan Realtime Compute for Apache Flink, lihat Pemecahan Masalah Blink dan Flink.