Sinkronkan data ke RDS
Prasyarat
1. Siapkan instans RDS dan struktur tabelBuat instans RDS di Konsol RDS. Anda dapat menggunakan jaringan klasik atau jaringan VPC. Pilih jenis jaringan yang sesuai saat membuat tugas sinkronisasi DataHub. Selama sinkronisasi, DataHub memetakan tipe data bidangnya ke tipe data RDS yang sesuai seperti ditunjukkan di bawah ini.
|
DataHub |
RDS |
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
INTEGER |
INT |
|
BIGINT |
BIGINT |
|
STRING |
VARCHAR |
|
BOOLEAN |
BOOLEAN / TINYINT |
|
FLOAT |
FLOAT |
|
DOUBLE |
DOUBLE |
|
TIMESTAMP |
TIMESTAMP / BIGINT |
|
DECIMAL |
DECIMAL |
Tipe data TINYINT, SMALLINT, INTEGER, dan FLOAT di DataHub didukung mulai dari Java SDK versi 2.16.1-public.2. Konfigurasikan daftar putih IP RDS dan alamat internalUntuk menggunakan fitur sinkronisasi DataHub, tambahkan alamat IP layanan DataHub ke daftar putih IP di Konsol RDS. Hal ini memungkinkan DataHub mengakses layanan RDS Anda. Untuk alamat IP layanan DataHub yang diperlukan, lihat Ikhtisar. Anda juga harus menyediakan alamat internal RDS saat membuat tugas sinkronisasi.
3. Catatan sinkronisasi
-
DataHub hanya dapat menyinkronkan data TUPLE ke RDS.
-
Tipe TIMESTAMP di DataHub, yang berbasis
microseconds, dikonversi ke tipe RDS TIMESTAMP secara default. Perhatikan presisi data. -
Untuk mencegah kontensi lock akibat operasi baca-tulis konkuren pada primary key yang sama, pastikan data dengan primary key yang sama ditulis ke shard DataHub yang sama.
-
Jika Anda menggunakan jaringan VPC, pastikan topik DataHub dan instans RDS berada di wilayah yang sama.
Buat tugas sinkronisasi
-
Buka halaman
Project List/Project Details/Topic Details. -
Klik tombol
+ Syncdi pojok kanan atas untuk membuat tugas sinkronisasi. Pada kotak dialog Create Connector yang muncul, konfigurasikan informasi koneksi seperti Host, Port (default 3306), Database, Table, User, dan Password, serta parameter sinkronisasi seperti Write Mode, Imported Fields, dan Network Type. Jika Anda memilih VPC Network, Anda juga harus menentukan VPC ID dan Instance ID. Atur Start Time dan Timestamp Unit (default MICROSECOND), lalu klik Create.
Berikut adalah pengaturan konfigurasi konsol utama. Untuk opsi lanjutan, lihat dokumentasi SDK.
-
Untuk Host, tentukan
alamat internalRDS. -
Imported Fields: Anda dapat memilih kolom tertentu dari DataHub untuk disinkronkan ke tabel RDS.
-
Write Mode: Termasuk mode IGNORE dan OVERWRITE.
-
IGNORE: Melewatkan data duplikat, sesuai dengan operasi penulisan
INSERT IGNORE INTO. -
OVERWRITE: Mengganti data duplikat, sesuai dengan operasi penulisan
REPLACE INTO.
-
-
VPC ID dan Instance ID: Jika instans RDS Anda berada di jaringan VPC, Anda harus memberikan VPC ID dan Instance ID RDS yang sesuai.
Contoh sinkronisasi
-
Buat instans RDS dan struktur tabel. Di Konsol RDS, buat instans RDS beserta tabel datanya. Dalam contoh ini, tabel diberi nama wurao_tuple_test_001 dan memiliki tiga kolom: field1 (varchar, panjang 255), field2 (bigint, panjang 20), dan field3 (double).
-
Buat topik DataHub. Di DataHub, buat topik bertipe TUPLE. Dalam contoh ini, skema terdiri dari tiga bidang: field1 (STRING), field2 (BIGINT), dan field3 (DOUBLE). Semua bidang tidak boleh bernilai null.
-
Buat tugas sinkronisasi. Atur Write Mode ke IGNORE, lalu impor semua bidang: field1, field2, dan field3. Pilih CLASSIC sebagai Network Type, kemudian klik Create.
-
Tulis data TUPLE ke DataHub. Tulis total empat catatan, terdiri atas dua catatan unik yang masing-masing ditulis dua kali. Nilai untuk field1 adalah
f_1danf_2, untuk field2 adalah1dan2, serta untuk field3 adalah1.0dan2.0. -
Verifikasi data yang telah disinkronkan. Gunakan client MySQL untuk terhubung ke layanan RDS Anda dan lakukan kueri pada tabel tersebut. Hasilnya ditunjukkan di bawah ini.
mysql> select * from wurao_tuple_test_001; +--------+--------+--------+ | field1 | field2 | field3 | +--------+--------+--------+ | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | +--------+--------+--------+ 4 rows in set (0.00 sec)
Sinkronkan data ke MySQL
Prasyarat
1. Siapkan instans MySQL dan struktur tabelBuat instans MySQL di Konsol MySQL.
Selama sinkronisasi, DataHub memetakan tipe data bidangnya ke tipe data MySQL yang sesuai seperti ditunjukkan di bawah ini.
|
DataHub |
MySQL |
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
INTEGER |
INT |
|
BIGINT |
BIGINT |
|
STRING |
VARCHAR |
|
BOOLEAN |
BOOLEAN / TINYINT |
|
FLOAT |
FLOAT |
|
DOUBLE |
DOUBLE |
|
TIMESTAMP |
TIMESTAMP / BIGINT |
|
DECIMAL |
DECIMAL |
Tipe data TINYINT, SMALLINT, INTEGER, dan FLOAT di DataHub didukung mulai dari Java SDK versi 2.16.1-public.
2. Catatan sinkronisasi1) DataHub hanya mendukung sinkronisasi data TUPLE ke layanan MySQL.2) Secara default, nilai TIMESTAMP di DataHub dikonversi ke tipe MySQL TIMESTAMP berdasarkan microseconds. Kelola presisi data tersebut dengan sesuai.3) Untuk menghindari kontensi lock akibat operasi baca-tulis konkuren pada primary key yang sama, pastikan data dengan primary key yang sama ditulis ke shard yang sama di DataHub.
Buat tugas sinkronisasi
-
Buka halaman
Project List > Project Details > Topic Details. -
Klik tombol
+ Syncdi pojok kanan atas untuk membuat tugas sinkronisasi.
Pada kotak dialog New Connector, konfigurasikan informasi koneksi, termasuk Host (alamat internal MySQL), Port (default 3306), Database, Table, User, dan Password. Kemudian, konfigurasikan parameter sinkronisasi, seperti write mode, imported fields, dan network type (jaringan VPC atau jaringan klasik). Jika Anda memilih jaringan VPC, Anda juga harus memberikan VPC ID dan instance ID server MySQL Anda. Setelah selesai mengonfigurasi, klik Create.
Berikut adalah pengaturan konfigurasi konsol utama. Untuk opsi lanjutan, lihat dokumentasi SDK.
-
Untuk Host, tentukan
alamat internalMySQL. -
Imported Fields: Anda dapat memilih kolom tertentu dari DataHub untuk disinkronkan ke tabel MySQL.
-
Write Mode: Termasuk mode IGNORE dan OVERWRITE.
-
IGNORE: Melewatkan data duplikat dengan menggunakan
INSERT IGNORE INTOuntuk menulis data. -
OVERWRITE: Mengganti data duplikat melalui operasi penulisan
REPLACE INTO.
-
Contoh sinkronisasi
-
Buat instans MySQL dan struktur tabel. Di Konsol MySQL, buat instans MySQL dan tabel data.
-
Buat topik DataHub. Di DataHub, buat topik bertipe TUPLE. Skema ditunjukkan di bawah ini.
Dalam contoh ini, topik diberi nama wurao_tuple_test_001 dan skemanya memiliki tiga bidang: field1 (STRING), field2 (BIGINT), dan field3 (DOUBLE). Tidak ada bidang yang boleh bernilai null.
-
Buat tugas sinkronisasi. Atur Write Mode ke IGNORE dan impor semua bidang.
-
Tulis data TUPLE ke DataHub. Tulis total empat catatan.
Data terdiri dari dua catatan unik, masing-masing ditulis dua kali. Nilai untuk field1 adalah f_1 dan f_2, untuk field2 adalah 1 dan 2, dan untuk field3 adalah 1.0 dan 2.0.
-
Verifikasi data yang telah disinkronkan. Gunakan client MySQL untuk terhubung ke layanan MySQL Anda dan kueri tabel tersebut. Hasilnya ditunjukkan di bawah ini.
mysql> select * from wurao_tuple_test_001;
+--------+--------+--------+
| field1 | field2 | field3 |
+--------+--------+--------+
| f_1 | 1 | 1.00 |
| f_2 | 2 | 2.00 |
| f_1 | 1 | 1.00 |
| f_2 | 2 | 2.00 |
+--------+--------+--------+
4 rows in set (0.00 sec)
Sinkronkan data ke AnalyticDB for MySQL 3.0
Prasyarat
1. Siapkan instans AnalyticDB for MySQL dan struktur tabelBuat instans AnalyticDB for MySQL di Konsol. Anda dapat menggunakan jaringan klasik atau jaringan VPC. Pilih jenis jaringan yang sesuai saat membuat tugas sinkronisasi DataHub. Selama sinkronisasi, DataHub memetakan tipe data bidangnya ke tipe data AnalyticDB for MySQL yang sesuai seperti ditunjukkan di bawah ini.
|
DataHub |
AnalyticDB |
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
INTEGER |
INT |
|
BIGINT |
BIGINT |
|
STRING |
VARCHAR |
|
BOOLEAN |
BOOLEAN / TINYINT |
|
FLOAT |
FLOAT |
|
DOUBLE |
DOUBLE |
|
TIMESTAMP |
TIMESTAMP / BIGINT |
|
DECIMAL |
DECIMAL |
Tipe data TINYINT, SMALLINT, INTEGER, dan FLOAT di DataHub didukung mulai dari Java SDK 2.16.1-public.2. Daftar putih IP ADS dan alamat internalUntuk menggunakan fitur sinkronisasi DataHub, konfigurasikan daftar putih IP di Konsol RDS agar DataHub dapat mengakses layanan ADS Anda. Untuk daftar putih IP layanan DataHub, lihat FAQ. Anda juga harus menyediakan alamat internal ADS saat membuat tugas sinkronisasi.3. Catatan sinkronisasi1) DataHub hanya mendukung sinkronisasi data TUPLE ke ADS.2) Secara default, tipe data TIMESTAMP di DataHub dikonversi ke tipe ADS TIMESTAMP dengan presisi microsecond. Kelola presisi data tersebut dengan sesuai.3) Untuk mencegah kontensi lock akibat operasi baca-tulis konkuren pada data dengan primary key yang sama, pastikan data dengan primary key yang sama ditulis ke Shard DataHub yang sama.4) Saat menggunakan jaringan VPC, pastikan topik DataHub dan instans ADS berada di wilayah yang sama.
Buat tugas sinkronisasi
-
Buka halaman
Project List > Project Details > Topic Details. -
Klik tombol
+ Syncdi pojok kanan atas untuk membuat tugas sinkronisasi. Kotak dialog Create Connector akan muncul. Di dalam kotak dialog tersebut, konfigurasikan informasi koneksi seperti Host, Port (default: 3306), Database, Table, User, dan Password, serta parameter sinkronisasi seperti Write Mode, Imported Fields, dan Network Type. Jika Anda memilih jenis jaringan VPC, Anda juga harus memasukkan VPC ID dan Instance ID. Setelah selesai mengonfigurasi, klik Create.
Berikut adalah pengaturan konfigurasi konsol utama. Untuk opsi lanjutan, lihat dokumentasi SDK.
-
Untuk Host, tentukan
alamat internalADS. -
Imported Fields: Anda dapat memilih kolom tertentu dari DataHub untuk disinkronkan ke tabel AnalyticDB for MySQL.
-
Write Mode: Termasuk mode IGNORE dan OVERWRITE.
-
IGNORE: Melewatkan data duplikat dengan melakukan operasi penulisan
INSERT IGNORE INTO. -
OVERWRITE: Mengganti data duplikat dengan melakukan operasi penulisan
REPLACE INTO.
-
-
Cara mendapatkan instance ID
-
Klik Debug. Di halaman debugging, pilih endpoint layanan, masukkan DBClusterId (ID kluster instans AnalyticDB for MySQL Anda), lalu klik Initiate Call.
-
Buka halaman referensi API DescribeDBClusterAttribute, yang menyediakan deskripsi API dan tombol Debug di sebelah kanan.
-
Selain DBClusterId, Anda juga harus memasukkan region ID kluster Anda (misalnya, cn-beijing) di bidang RegionId. Lalu, klik Initiate Call.
-
-
Nilai bidang VPCCloudInstanceId dalam respons adalah instance ID yang Anda butuhkan.
-
Jika panggilan berhasil (ditandai dengan kode status 200), cari kata kunci vpccloud pada hasil JSON yang dikembalikan untuk menemukan bidang VPCCloudInstanceId.
-
Contoh sinkronisasi
-
Buat instans AnalyticDB for MySQL dan struktur tabel.
-
Buat topik DataHub. Di DataHub, buat topik bertipe TUPLE. Dalam contoh ini, skema memiliki tiga bidang: field1 (STRING), field2 (BIGINT), dan field3 (DOUBLE). Tidak ada bidang yang boleh bernilai null.
-
Buat tugas sinkronisasi. Atur Write Mode ke IGNORE dan impor semua bidang: field1, field2, dan field3. Pilih CLASSIC sebagai Network Type, lalu klik Create.
-
Tulis data TUPLE ke DataHub. Tulis total empat catatan. Data terdiri dari dua catatan unik, masing-masing ditulis dua kali. Nilai untuk field1 adalah
f_1danf_2, untuk field2 adalah1dan2, dan untuk field3 adalah1.0dan2.0. -
Verifikasi data yang telah disinkronkan. Gunakan client MySQL untuk terhubung ke layanan AnalyticDB for MySQL Anda dan kueri tabel tersebut. Hasilnya ditunjukkan di bawah ini.
mysql> select * from wurao_tuple_test_001; +--------+--------+--------+ | field1 | field2 | field3 | +--------+--------+--------+ | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | +--------+--------+--------+ 4 rows in set (0.00 sec)