AnalyticDB for MySQL adalah layanan pemrosesan analitik online waktu nyata (OLAP) yang dikembangkan oleh Alibaba Cloud untuk analisis data online dengan konkurensi tinggi. AnalyticDB for MySQL dapat menganalisis data petabyte dari berbagai dimensi dalam waktu milidetik untuk memberikan wawasan berbasis data terkait bisnis Anda. Topik ini menjelaskan cara menyinkronkan data dari kluster PolarDB for MySQL ke AnalyticDB for MySQL menggunakan Data Transmission Service (DTS). Setelah sinkronisasi data, Anda dapat menggunakan AnalyticDB for MySQL untuk membangun sistem business intelligence (BI) internal, sistem kueri interaktif, dan sistem pelaporan waktu nyata.
Prasyarat
Kluster AnalyticDB for MySQL telah dibuat. Untuk informasi lebih lanjut, lihat Buat kluster AnalyticDB for MySQL.
Kluster AnalyticDB for MySQL memiliki penyimpanan yang cukup.
Fitur pencatatan biner diaktifkan untuk kluster PolarDB for MySQL. Untuk informasi lebih lanjut, lihat Aktifkan pencatatan biner.
Catatan penggunaan
DTS menggunakan sumber daya baca dan tulis dari instance RDS sumber dan tujuan selama sinkronisasi data penuh awal. Hal ini dapat meningkatkan beban pada instance RDS. Jika performa instance tidak baik, spesifikasinya rendah, atau volume datanya besar, layanan database mungkin tidak tersedia. Sebagai contoh, DTS menggunakan sejumlah besar sumber daya baca dan tulis dalam kasus-kasus berikut: banyak kueri SQL lambat dilakukan pada instance RDS sumber, tabel tidak memiliki kunci utama, atau deadlock terjadi pada instance RDS tujuan. Sebelum sinkronisasi data, evaluasi dampak sinkronisasi data pada performa instance RDS sumber dan tujuan. Kami menyarankan Anda menyinkronkan data selama jam-jam sepi. Sebagai contoh, Anda dapat menyinkronkan data ketika utilisasi CPU instance RDS sumber dan tujuan kurang dari 30%.
Kami menyarankan Anda tidak menggunakan gh-ost atau pt-online-schema-change untuk melakukan operasi DDL pada objek yang diperlukan selama sinkronisasi data. Jika tidak, data mungkin gagal disinkronkan.
Karena batasan AnalyticDB for MySQL, jika penggunaan ruang disk pada node dalam kluster AnalyticDB for MySQL melebihi 80%, kluster akan terkunci. Kami menyarankan Anda memperkirakan ruang disk yang diperlukan berdasarkan objek yang akan disinkronkan. Pastikan kluster tujuan memiliki penyimpanan yang cukup.
Indeks awalan tidak dapat disinkronkan. Jika database sumber berisi indeks awalan, data mungkin gagal disinkronkan.
Penagihan
| Tipe sinkronisasi | Biaya konfigurasi tugas |
| Sinkronisasi skema dan data penuh | Gratis. |
| Sinkronisasi data inkremental | Dikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
Operasi SQL yang dapat disinkronkan
Operasi DDL: CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATE TABLE, ADD COLUMN, DROP COLUMN, dan MODIFY COLUMN
Operasi DML: INSERT, UPDATE, dan DELETE
Jika tipe bidang dalam tabel sumber diubah selama sinkronisasi data, pesan kesalahan akan dilaporkan dan tugas sinkronisasi data terganggu. Untuk informasi lebih lanjut tentang cara menangani masalah ini, lihat bagian "Memecahkan masalah kegagalan sinkronisasi yang terjadi karena perubahan tipe bidang" dari topik Memecahkan masalah kegagalan sinkronisasi yang terjadi karena perubahan tipe bidang.
Izin yang diperlukan untuk akun database
Database | Izin yang diperlukan |
Kluster PolarDB for MySQL | Izin baca pada objek yang akan disinkronkan |
AnalyticDB for MySQL | Izin baca dan tulis pada objek yang diperlukan |
Untuk informasi lebih lanjut tentang cara membuat dan memberikan otorisasi akun database, lihat Buat dan kelola akun database dan Buat akun database.
Pemetaan tipe data
Untuk informasi lebih lanjut, lihat Pemetaan tipe data untuk sinkronisasi skema awal.
Prosedur
Beli instance DTS. Untuk informasi lebih lanjut, lihat Beli instance sinkronisasi data.
CatatanDi halaman pembelian, atur Instance Sumber ke PolarDB, atur Instance Tujuan ke AnalyticDB for MySQL, dan atur Topologi Sinkronisasi ke One-way Synchronization.
Masuk ke Konsol DTS.
CatatanJika Anda dialihkan ke konsol Data Management (DMS), Anda dapat mengklik ikon
di
untuk kembali ke versi sebelumnya dari konsol DTS.Di panel navigasi di sebelah kiri, klik Data Synchronization.
Di bagian atas halaman Synchronization Tasks, pilih wilayah tempat instance tujuan berada.
Temukan instance sinkronisasi data dan klik Configure Task di kolom Tindakan.
Konfigurasikan kluster sumber dan tujuan.

Bagian
Parameter
Deskripsi
Tidak ada
Nama Tugas Sinkronisasi
Nama tugas yang DTS hasilkan secara otomatis. Kami sarankan Anda menentukan nama deskriptif yang mudah diidentifikasi. Anda tidak perlu menggunakan nama tugas unik.
Detail Instance Sumber
Tipe Instance
Parameter ini diatur ke PolarDB Instance dan tidak dapat diubah.
Wilayah Instance
Wilayah sumber yang Anda pilih di halaman pembelian. Anda tidak dapat mengubah nilai parameter ini.
ID Instance PolarDB
ID kluster PolarDB for MySQL sumber.
Akun Database
Akun database dari kluster sumber. Untuk informasi tentang izin yang diperlukan untuk akun tersebut, lihat Izin yang diperlukan untuk akun database.
Kata Sandi Database
Kata sandi akun database.
Detail Instance Tujuan
Tipe Instance
Parameter ini diatur ke AnalyticDB dan tidak dapat diubah.
Wilayah Instance
Wilayah tujuan yang Anda pilih di halaman pembelian. Anda tidak dapat mengubah nilai parameter ini.
Versi
Pilih 3.0.
Database
ID kluster AnalyticDB for MySQL tujuan.
Akun Database
Akun database AnalyticDB for MySQL. Untuk informasi tentang izin yang diperlukan untuk akun tersebut, lihat Izin yang diperlukan untuk akun database.
Kata Sandi Database
Kata sandi akun database.
Di pojok kanan bawah halaman, klik Set Whitelist and Next.
Jika database sumber atau tujuan adalah instance database Alibaba Cloud, seperti instance ApsaraDB RDS for MySQL atau ApsaraDB for MongoDB, DTS secara otomatis menambahkan blok CIDR server DTS ke daftar putih alamat IP instance tersebut. Jika database sumber atau tujuan adalah database mandiri yang di-hosting pada instance Elastic Compute Service (ECS), DTS secara otomatis menambahkan blok CIDR server DTS ke aturan grup keamanan instance ECS, dan Anda harus memastikan bahwa instance ECS dapat mengakses database. Jika database mandiri di-hosting pada beberapa instance ECS, Anda harus secara manual menambahkan blok CIDR server DTS ke aturan grup keamanan setiap instance ECS. Jika database sumber atau tujuan adalah database mandiri yang ditempatkan di pusat data atau disediakan oleh penyedia layanan cloud pihak ketiga, Anda harus secara manual menambahkan blok CIDR server DTS ke daftar putih alamat IP database untuk mengizinkan DTS mengakses database. Untuk informasi lebih lanjut, lihat Tambahkan blok CIDR server DTS.
PeringatanJika blok CIDR server DTS ditambahkan secara otomatis atau manual ke daftar putih database atau instance, atau ke aturan grup keamanan ECS, risiko keamanan mungkin timbul. Oleh karena itu, sebelum Anda menggunakan DTS untuk menyinkronkan data, Anda harus memahami dan mengakui potensirisiko dan mengambil tindakan pencegahan, termasuk namun tidak terbatas pada langkah-langkah berikut: meningkatkan keamanan nama pengguna dan kata sandi Anda, membatasi port yang terpapar, mengotentikasi panggilan API, secara berkala memeriksa daftar putih atau aturan grup keamanan ECS dan melarang blok CIDR yang tidak sah, atau menghubungkan database ke DTS menggunakan Express Connect, VPN Gateway, atau Smart Access Gateway.
Pilih kebijakan sinkronisasi dan objek yang akan disinkronkan.

Parameter atau pengaturan
Deskripsi
Pilih jenis sinkronisasi awal
Anda harus memilih Initial Schema Synchronization dan Initial Full Data Synchronization dalam sebagian besar kasus. Setelah pra-pemeriksaan selesai, DTS menyinkronkan skema dan data objek yang diperlukan dari instance sumber ke kluster tujuan. Skema dan data ini menjadi dasar untuk sinkronisasi inkremental selanjutnya.
Mode Pemrosesan Tabel Tujuan yang Sudah Ada
Precheck and Report Errors: memeriksa apakah database sumber dan tujuan berisi tabel dengan nama yang sama. Jika database tujuan tidak berisi tabel dengan nama yang sama seperti di database sumber, pra-pemeriksaan berhasil. Jika tidak, kesalahan akan dilaporkan selama pra-pemeriksaan dan tugas sinkronisasi data tidak dapat dimulai.
CatatanAnda dapat menggunakan fitur pemetaan nama objek untuk mengganti nama tabel yang disinkronkan ke database tujuan. Jika database sumber dan tujuan berisi nama tabel yang identik dan tabel di database tujuan tidak dapat dihapus atau diganti namanya, Anda dapat menggunakan fitur ini. Untuk informasi lebih lanjut, lihat Ganti nama objek yang akan disinkronkan.
Ignore Errors and Proceed: melewati pra-pemeriksaan untuk nama tabel yang sama di database sumber dan tujuan.
PeringatanJika Anda memilih Ignore Errors and Proceed, ketidaksesuaian data mungkin terjadi dan bisnis Anda mungkin terpapar risiko potensial.
Jika database sumber dan tujuan memiliki skema yang sama, DTS tidak akan menyinkronkan catatan data yang memiliki kunci utama yang sama dengan catatan data di database tujuan.
Jika database sumber dan tujuan memiliki skema yang berbeda, migrasi data awal mungkin gagal. Dalam hal ini, hanya kolom tertentu yang bermigrasi, atau tugas migrasi data gagal.
Menggabungkan Beberapa Tabel
Jika Anda memilih Yes, DTS menambahkan kolom
__dts_data_sourceke setiap tabel untuk menyimpan sumber data. Dalam hal ini, operasi DDL tidak dapat disinkronkan.No dipilih secara default. Dalam kasus ini, operasi DDL dapat disinkronkan.
CatatanJika Anda mengatur parameter ini ke Ya, semua tabel sumber yang dipilih dalam tugas digabungkan ke dalam satu tabel tujuan. Jika Anda ingin menggabungkan hanya sebagian daritabel sumber, Anda dapat membuat dua tugas sinkronisasi data.
Pilih jenis operasi yang akan disinkronkan
Pilih jenis operasi yang ingin Anda sinkronkan berdasarkan kebutuhan bisnis Anda. Semua jenis operasi dipilih secara default. Untuk informasi lebih lanjut, lihat Operasi SQL yang dapat disinkronkan.
Pilih objek yang akan disinkronkan
Pilih satu atau lebih objek dari bagian Available dan klik ikon
untuk menambahkan objek ke bagian Selected.Anda dapat memilih tabel atau database sebagai objek yang akan disinkronkan.
CatatanJika Anda memilih database sebagai objek yang akan disinkronkan, semua perubahan skema dalam database disinkronkan ke database tujuan.
Jika Anda memilih tabel sebagai objek yang akan disinkronkan, hanya operasi ADD COLUMN yang dilakukan pada tabel tersebut yang disinkronkan ke database tujuan.
Secara default, setelah objek disinkronkan ke database tujuan, nama objek tetap tidak berubah. Anda dapat menggunakan fitur pemetaan nama objek untuk mengganti nama objek yang disinkronkan ke kluster tujuan. Untuk informasi lebih lanjut, lihat Ganti nama objek yang akan disinkronkan.
Ganti Nama Database dan Tabel
Anda dapat menggunakan fitur pemetaan nama objek untuk mengganti nama objek yang disinkronkan ke instance tujuan. Untuk informasi lebih lanjut, lihat Pemetaan nama objek.
Replikasi Tabel Sementara Saat DMS Melakukan Operasi DDL
Jika Anda menggunakan DMS untuk melakukan operasi DDL online pada database sumber, Anda dapat menentukan apakah akan menyinkronkan tabel sementara yang dihasilkan oleh operasi DDL online.
Yes: DTS menyinkronkan data tabel sementara yang dihasilkan oleh operasi DDL online.
CatatanJika operasi DDL online menghasilkan sejumlah besar data, tugas sinkronisasi data mungkin tertunda.
No: DTS tidak menyinkronkan data tabel sementara yang dihasilkan oleh operasi DDL online. Hanya data DDL asli dari database sumber yang disinkronkan.
CatatanJika Anda memilih Tidak, tabel di database tujuan mungkin terkunci.
Waktu Ulang untuk Koneksi Gagal
Secara default, jika DTS gagal terhubung ke database sumber atau tujuan, DTS mencoba kembali dalam waktu 720 menit (12 jam) ke depan. Anda dapat menentukan waktu percobaan ulang berdasarkan kebutuhan Anda. Jika DTS berhasil tersambung kembali ke database sumber dan tujuan dalam waktu yang ditentukan, DTS melanjutkan tugas sinkronisasi data. Jika tidak, tugas sinkronisasi data gagal.
CatatanSaat DTS mencoba kembali koneksi, Anda akan dikenakan biaya untuk instance DTS. Kami sarankan Anda menentukan waktu percobaan ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS sesegera mungkin setelah instance sumber dan tujuan dilepaskan.
Di pojok kanan bawah halaman, klik Next.
Tentukan tipe untuk tabel yang ingin Anda sinkronkan ke database tujuan.
CatatanSetelah Anda memilih Initial Schema Synchronization, Anda harus menentukan type, primary key column, dan partition key column untuk tabel yang ingin Anda sinkronkan ke kluster AnalyticDB for MySQL. Untuk informasi lebih lanjut, lihat CREATE TABLE.
Di pojok kanan bawah halaman, klik Precheck.
CatatanSebelum Anda dapat memulai tugas sinkronisasi data, DTS melakukan pra-pemeriksaan. Anda hanya dapat memulai tugas sinkronisasi data setelah tugas tersebut lulus pra-pemeriksaan.
Jika tugas gagal lulus pra-pemeriksaan, Anda dapat mengklik ikon
di sebelah setiap item yang gagal untuk melihat detailnya.Setelah Anda memperbaiki masalah berdasarkan detailnya, mulai pra-pemeriksaan baru.
Jika Anda tidak perlu memperbaiki masalah, ignore the failed items dan initiate a new precheck.
Tutup kotak dialog Precheck setelah pesan berikut ditampilkan: Precheck Passed. Kemudian, tugas sinkronisasi data dimulai.
Tunggu hingga sinkronisasi awal selesai dan tugas sinkronisasi data memasuki status Synchronizing.
Anda dapat melihat status tugas sinkronisasi data di halaman Synchronization Tasks.
