Lindorm menyediakan layanan mesin komputasi bernama Lindorm Distributed Processing System (LDPS). Setelah LDPS diaktifkan untuk instance Lindorm, sumber data Lindorm Change Data Capture (CDC) akan ditetapkan ke instance tersebut. Perubahan pada data yang disimpan dalam layanan mesin lain yang diaktifkan untuk instance Lindorm disinkronkan ke sumber data CDC. Anda dapat menggunakan Spark SQL untuk menanyakan perubahan data ini dari sumber data CDC.
Prasyarat
- Layanan Terowongan Lindorm (LTS) harus diaktifkan untuk instance Lindorm Anda. Untuk informasi lebih lanjut, lihat Beli Layanan LTS dan Masuk ke Antarmuka Web LTS.
- Saluran langganan harus dibuat untuk LindormTable. Untuk informasi lebih lanjut, lihat Buat Saluran Pull untuk Langganan Data.Catatan Saat membuat saluran langganan, perhatikan poin-poin berikut:
- Jangan pilih Ignore family prefix for column name in message.
- Pilih json untuk parameter Serialize Type.
- Satu nama topik sesuai dengan hanya satu nama tabel Lindorm.
- Konfigurasikan atribut LINDORM_HBASE_CATALOG untuk tabel HBase Anda. Untuk informasi lebih lanjut, lihat Akses Data dalam LindormTable.Catatan Atribut LINDORM_HBASE_CATALOG menentukan pemetaan antara skema Spark SQL dan skema tabel HBase. Sumber data Lindorm CDC mengekstrak skema tabel HBase berdasarkan nilai atribut ini.
Batasan
- Hanya tabel HBase yang didukung. Tabel HBase adalah tabel yang datanya ditulis ke LindormTable menggunakan klien HBase.
- Fitur pelacakan perubahan waktu nyata memungkinkan Anda mengonsumsi hanya file dalam format JSON.
Cara mengirim pekerjaan
Anda dapat menggunakan salah satu metode berikut untuk menulis dan mengirim pekerjaan Spark untuk sumber data Lindorm CDC:
Catatan Untuk informasi tentang sintaksis yang digunakan untuk membaca data dari dan menulis data ke sumber data Lindorm CDC, lihat Konfigurasikan Sumber Data Lindorm CDC.
Konfigurasikan sumber data Lindorm CDC
Skema tabel dan skema database dari sumber data Lindorm CDC
- Nama sumber data Lindorm CDC yang disediakan oleh LDPS adalah lindorm_cdc.
- Anda tidak dapat mengelola namespace dalam sumber data Lindorm CDC. Anda hanya dapat mengelola tabel dalam sumber data Lindorm CDC. Tabel dalam sumber data Lindorm CDC menggunakan nama yang sama seperti the topics yang Anda tentukan saat membuat saluran langganan data.
Skema sumber data Lindorm CDC
Sumber data Lindorm CDC mengekstrak skema tabel HBase berdasarkan atribut LINDORM_HBASE_CATALOG dan menggunakan skema yang diekstraksi sebagai skema sumber data Lindorm CDC. Sumber data Lindorm CDC membaca data dari Kafka. Setiap catatan operasi disimpan. Tabel berikut menjelaskan bidang meta yang didukung dalam skema sumber data Lindorm CDC.
| Bidang | Kategori | Deskripsi | Konfigurasi |
| _cdc_timestamp_kafka | long | Timestamp ketika catatan operasi ditulis ke Kafka. Unit: milidetik. | Tidak diperlukan konfigurasi. Nilai konfigurasi default yang terkandung dalam skema digunakan. |
| _cdc_operation_type | string | Jenis perubahan dari catatan operasi.
| Tidak diperlukan konfigurasi. Nilai konfigurasi default yang terkandung dalam skema digunakan. |
| _cdc_timestamp_lindorm | long | Timestamp ketika catatan operasi diproses oleh layanan mesin Lindorm selain LDPS. Unit: milidetik. | spark.sql.catalog.lindorm_cdc.lindormTsEnabled |
| _cdc_timestamp_lts | long | Timestamp ketika catatan operasi diproses oleh LTS. Unit: milidetik. | spark.sql.catalog.lindorm_cdc.ltsTsEnabled |
Item konfigurasi sumber data Lindorm CDC
Tabel berikut menjelaskan item konfigurasi sumber data Lindorm CDC.
| Item konfigurasi | Diperlukan | Deskripsi | Contoh |
| spark.sql.catalog.lindorm_cdc.username |
| Nama pengguna yang digunakan untuk terhubung ke LindormTable. | root (nama pengguna default) |
| spark.sql.catalog.lindorm_cdc.password |
| Kata sandi yang digunakan untuk terhubung ke LindormTable. | root (kata sandi default) |
| spark.sql.catalog.lindorm_cdc.lindormTsEnabled | Tidak | Menentukan apakah akan menyertakan timestamp ketika Lindorm memproses catatan operasi ke dalam skema. Nilai defaultnya adalah false. Jika Anda mengatur parameter ini ke true, bidang _cdc_timestamp_lindorm ditambahkan ke skema sumber data Lindorm CDC. | true |
| spark.sql.catalog.lindorm_cdc.ltsTsEnabled | Tidak | Menentukan apakah akan menyertakan timestamp ketika LTS memproses catatan operasi ke dalam skema. Nilai defaultnya adalah false. Jika Anda mengatur parameter ini ke true, bidang _cdc_timestamp_lts ditambahkan ke skema sumber data Lindorm CDC. | true |
Pernyataan yang didukung untuk sumber data Lindorm CDC
Tabel berikut menjelaskan pernyataan yang dapat dieksekusi pada sumber data Lindorm CDC.
| Pernyataan | Deskripsi | Contoh |
| USE table_name | Menggunakan tabel tertentu. | USE test |
| SHOW TABLES | Melihat semua tabel. | SHOW TABLES |
| DESCRIBE table_name | Melihat detail tabel tertentu. | DESC test atau DESCRIBE test |
| SELECT | Untuk informasi lebih lanjut tentang pernyataan SELECT, lihat Spark SQL. Catatan Saat Anda mengeksekusi pernyataan SELECT, perhatikan item berikut:
| |