Fitur sinkronisasi offline database lengkap di DataWorks memungkinkan Anda menyinkronkan seluruh atau sebagian skema tabel dan data dari database sumber ke tujuan secara batch. Anda dapat menjalankan tugas sinkronisasi lengkap atau inkremental secara berkala. Fitur ini menyediakan solusi efisien untuk migrasi data. Topik ini menggunakan contoh migrasi seluruh database MySQL ke MaxCompute untuk menjelaskan proses umum konfigurasi tugas semacam ini.
Persiapan
Persiapkan sumber data
Buat sumber data sumber dan sumber data tujuan. Untuk informasi lebih lanjut tentang cara mengonfigurasi sumber data, lihat Manajemen Sumber Data.
Pastikan sumber data mendukung sinkronisasi offline database lengkap. Untuk informasi lebih lanjut, lihat Sumber data yang didukung.
Kelompok sumber daya: Beli dan konfigurasikan Serverless resource group.
Konektivitas jaringan: Bangun konektivitas jaringan antara kelompok sumber daya dan sumber data.
Akses fitur
Login ke Konsol DataWorks. Di bilah navigasi atas, pilih wilayah yang diinginkan. Di panel navigasi kiri, pilih . Pada halaman yang muncul, pilih ruang kerja yang diinginkan dari daftar drop-down dan klik Go to Data Integration.
Konfigurasi tugas
1. Buat tugas sinkronisasi
Anda dapat membuat tugas sinkronisasi dengan salah satu cara berikut:
Metode 1: Pada halaman tugas sinkronisasi, pilih Source dan Destination, lalu klik Create Synchronization Task. Dalam contoh ini, pilih MySQL sebagai sumber dan MaxCompute sebagai tujuan.
Metode 2: Pada halaman tugas sinkronisasi, jika daftar tugas kosong, klik Create.

2. Konfigurasi informasi dasar
Konfigurasikan informasi dasar, seperti nama tugas, deskripsi tugas, dan pemilik.
Pilih jenis sinkronisasi. Berdasarkan jenis database sumber dan tujuan, Data Integration menampilkan Synchronization Types yang didukung. Untuk contoh ini, pilih Full Database Offline.
Langkah sinkronisasi: Migrasi skema, sinkronisasi lengkap, dan sinkronisasi inkremental didukung. Sinkronisasi lengkap dan inkremental bersifat opsional. Pengaturan Synchronization steps terkait dengan pengaturan Full and incremental control. Anda dapat menggabungkan pengaturan ini untuk membuat solusi sinkronisasi yang berbeda. Untuk informasi lebih lanjut, lihat Full and incremental control.
Konfigurasi jaringan dan sumber daya: Pilih Resource Group untuk menjalankan tugas sinkronisasi, lalu pilih Source Data Source dan Destination Data Source. Kemudian, uji konektivitas jaringan antara kelompok sumber daya dan sumber data.
3. Pilih database dan tabel yang akan disinkronkan
Di area Source Table, pilih tabel yang akan disinkronkan dari sumber data. Klik ikon
untuk memindahkan tabel ke daftar Selected Tables.

Jika Anda memiliki banyak database dan tabel, Anda dapat menggunakan Database Filter atau Table Filter untuk memilih tabel yang ingin disinkronkan dengan mengonfigurasi ekspresi reguler.
4. Atur properti tabel tujuan
Klik tombol Configure di samping Partition Initialization Settings untuk mengonfigurasi pengaturan partisi awal untuk semua tabel tujuan baru. Perubahan yang dilakukan di sini akan menimpa pengaturan partisi untuk semua tabel tujuan baru. Tabel tujuan yang sudah ada tidak terpengaruh.
5. Konfigurasi kontrol lengkap dan inkremental
Konfigurasikan jenis sinkronisasi lengkap dan inkremental untuk tugas tersebut.
Jika Anda memilih Full Synchronization atau Incremental Synchronization, Anda dapat memilih untuk menjalankan tugas sebagai tugas One-time atau tugas Recurring.
Jika Anda memilih Full Synchronization dan Incremental Synchronization, sistem menggunakan mode bawaan: One-time full sync first, then recurring incremental sync. Opsi ini tidak dapat diubah.
Synchronization steps
Full and incremental control
Data write description
Scenarios
Full synchronization
One-time
Setelah tugas dimulai, seluruh data dari tabel sumber disinkronkan ke tabel tujuan atau partisi tertentu dalam satu kali proses.
Inisialisasi data, migrasi sistem
Recurring
Seluruh data dari tabel sumber disinkronkan secara berkala ke tabel tujuan atau partisi tertentu berdasarkan siklus penjadwalan yang dikonfigurasi.
Rekonsiliasi data, snapshot lengkap T+1
Incremental synchronization
One-time
Setelah tugas dimulai, data inkremental disinkronkan ke partisi tertentu dalam satu kali proses berdasarkan kondisi inkremental yang Anda tentukan.
Memperbaiki batch data secara manual
Recurring
Setelah tugas dimulai, data inkremental disinkronkan secara berkala ke partisi tertentu berdasarkan scheduling cycle dan incremental condition yang dikonfigurasi.
Ekstrak, transformasi, dan muat (ETL) harian, membangun tabel zip
Full synchronization & Incremental synchronization
(Built-in mode, cannot be selected)
Jalankan pertama kali: Sistem secara otomatis melakukan sinkronisasi skema awal dan sinkronisasi lengkap data historis.
Jalankan berikutnya: Data inkremental disinkronkan secara berkala ke partisi tertentu berdasarkan scheduling cycle dan incremental condition yang dikonfigurasi.
Ingesti gudang data/data lake sekali klik
CatatanUntuk sinkronisasi offline database lengkap, instans untuk penjadwalan berkala dibuat segera setelah Anda memublikasikan tugas. Untuk informasi lebih lanjut, lihat Metode pembuatan instans: Buat segera setelah publikasi.
Anda dapat menentukan cara pembuatan partisi pada langkah Assign Values To Destination Table Fields. Anda dapat menggunakan konstanta atau menghasilkan partisi secara dinamis menggunakan variabel yang telah ditentukan sistem dan parameter penjadwalan berkala.
Konfigurasi untuk scheduling cycle, incremental condition, dan metode partition generation saling terkait. Untuk informasi lebih lanjut, lihat Incremental condition.
Konfigurasikan parameter penjadwalan berkala.
Jika tugas Anda melibatkan sinkronisasi berkala, klik Recurring Schedule Parameters untuk mengonfigurasinya. Anda dapat menggunakan parameter ini nanti saat mengonfigurasi incremental condition dan field value assignment dalam pemetaan tabel tujuan.
6. Konfigurasi pemetaan tabel tujuan
Pada langkah ini, Anda perlu menentukan aturan pemetaan antara tabel sumber dan tujuan. Anda juga perlu menentukan Recurring Schedule dan Incremental Condition untuk menentukan cara penulisan data.

Konfigurasi tabel tujuan
Operation | Description | ||||||||||||
Refresh mapping | Sistem secara otomatis mencantumkan tabel sumber yang Anda pilih. Namun, Anda harus merefresh pemetaan untuk mengonfirmasi properti spesifik tabel tujuan sebelum berlaku.
| ||||||||||||
Customize destination table name mapping (Opsional) | Sistem memiliki aturan default untuk menghasilkan nama tabel:
Hal ini memungkinkan skenario berikut:
| ||||||||||||
Edit field type mapping (Opsional) | Sistem memiliki pemetaan default antara tipe bidang sumber dan tujuan. Anda dapat mengklik Edit Field Type Mapping di pojok kanan atas tabel untuk menyesuaikan pemetaan tipe bidang antara tabel sumber dan tujuan. Setelah dikonfigurasi, klik Apply And Refresh Mapping. Saat mengedit pemetaan tipe bidang, pastikan aturan konversi tipe benar. Jika tidak, konversi tipe dapat gagal, menghasilkan data kotor, dan memengaruhi eksekusi tugas. | ||||||||||||
Edit skema tabel tujuan (Opsional) | Sistem secara otomatis menghasilkan skema tabel tujuan berdasarkan skema tabel sumber. Dalam sebagian besar skenario, tidak diperlukan intervensi manual. Jika diperlukan penanganan khusus, Anda dapat menyesuaikannya dengan cara berikut:
| ||||||||||||
Assign values to destination table fields | Bidang standar dipetakan secara otomatis berdasarkan kecocokan nama antara tabel sumber dan tujuan. Anda perlu menetapkan nilai secara manual untuk bidang partisi dan bidang baru apa pun yang ditambahkan pada langkah sebelumnya. Lakukan operasi berikut:
Anda dapat menetapkan konstanta atau variabel. Alihkan antar mode penetapan nilai menggunakan ikon | ||||||||||||
Set source sharding column | Di kolom source sharding, Anda dapat memilih bidang dari tabel sumber atau memilih Do Not Shard dari daftar drop-down. Saat tugas sinkronisasi dijalankan, tugas tersebut akan dipecah menjadi beberapa tugas berdasarkan bidang ini untuk memungkinkan pembacaan data secara konkuren dan batch. Kami menyarankan menggunakan primary key tabel sebagai source sharding column. Tipe string, float, date, dan lainnya tidak didukung. Saat ini, source sharding column hanya didukung ketika sumbernya adalah MySQL. | ||||||||||||
Lainnya |
Untuk informasi lebih lanjut tentang Delta Tables, lihat Delta Table. |
Penjadwalan berkala
Jika sinkronisasi inkremental diatur ke Recurring, Anda perlu mengonfigurasi Recurring Schedule untuk tabel tujuan. Ini mencakup Scheduling Cycle, Scheduling Time, dan Scheduling Resource Group. Konfigurasi penjadwalan untuk tugas sinkronisasi ini konsisten dengan konfigurasi penjadwalan node di Data Development. Untuk informasi lebih lanjut tentang parameter tersebut, lihat Node scheduling.
Jika tugas sinkronisasi satu kali melibatkan banyak tabel, kami menyarankan untuk mengatur waktu eksekusi secara bertahap saat mengonfigurasi penjadwalan guna mencegah antrian tugas dan konflik sumber daya.
Kondisi inkremental
Jika tugas perlu menyinkronkan data inkremental, Anda harus mengonfigurasi kondisi inkremental. Kondisi ini menentukan data mana yang akan disinkronkan oleh setiap instans penjadwalan berkala.
Fungsi dan sintaks
Fungsi: Kondisi inkremental pada dasarnya adalah klausa
WHEREyang memfilter data sumber.Sintaks: Saat mengonfigurasi kondisi, Anda hanya perlu memasukkan ekspresi kondisional yang mengikuti
WHERE. Jangan sertakan kata kunciWHEREitu sendiri.
Gunakan parameter penjadwalan untuk mencapai sinkronisasi inkremental
Untuk menerapkan sinkronisasi inkremental berkala, Anda dapat menggunakan parameter penjadwalan dalam kondisi inkremental. Misalnya, Anda dapat mengatur kondisi menjadi
<span data-tag="ph" id="codeph_rtz_ohk_wy5"><code code-type="xCode" data-tag="code" id="68c36d2fd9h4l">STR_TO_DATE('${bizdate}', '%Y%m%d') <= columnName AND columnName < DATE_ADD(STR_TO_DATE('${bizdate}', '%Y%m%d'), INTERVAL 1 DAY)' untuk menyinkronkan data yang baru dihasilkan dari hari sebelumnya.Tulis ke partisi tertentu
Dengan menggabungkan kondisi inkremental dengan bidang partisi tabel tujuan, Anda dapat memastikan bahwa setiap batch data inkremental ditulis ke partisi yang benar.
Misalnya, dengan kondisi inkremental yang disebutkan sebelumnya, Anda dapat mengatur bidang partisi menjadi
ds=${bizdate}dan mengatur tabel tujuan agar dipartisi berdasarkan hari. Dengan cara ini, setiap instans harian hanya akan menyinkronkan data dari tanggal yang sesuai di sumber dan menuliskannya ke partisi dengan nama yang sama di tabel tujuan.
Dengan menggabungkan secara tepat rentang waktu dari kondisi inkremental, interval waktu untuk pembuatan partisi, dan siklus penjadwalan dari penjadwalan berkala, Anda dapat membuat pipeline ETL inkremental T+n otomatis. Dalam pipeline ini, aturan bisnis selaras secara ketat dengan partisi fisik.
7. Konfigurasi lainnya
Konfigurasi peringatan
Setelah tugas dijalankan, tugas penjadwalan dibuat di Operation Center. Untuk menghindari keterlambatan sinkronisasi data bisnis akibat kesalahan tugas, Anda dapat menetapkan kebijakan peringatan untuk tugas sinkronisasi tersebut.
Di Task List, temukan tugas sinkronisasi yang sedang berjalan. Di kolom Actions, klik untuk membuka halaman konfigurasi tugas.
Klik Next, lalu klik Alert Configuration di pojok kanan atas halaman untuk membuka halaman pengaturan peringatan.
Di kolom Scheduling Information, klik tugas penjadwalan yang dihasilkan untuk membuka halaman detail tugas di Operation Center dan ambil Task ID.
Di panel navigasi kiri Operation Center, klik untuk membuka halaman manajemen aturan.
Klik Create Custom Rule. Atur Rule Object, Trigger Method, dan Alert Behavior. Untuk informasi lebih lanjut, lihat Manajemen aturan.
Anda dapat mencari Task ID yang diambil di bagian Rule Object untuk menemukan tugas target dan menetapkan peringatan untuknya.
Konfigurasi kelompok sumber daya
Anda dapat mengklik Resource Group Configuration di pojok kanan atas antarmuka untuk melihat dan mengganti kelompok sumber daya yang digunakan oleh tugas saat ini.
Konfigurasi parameter lanjutan
Untuk melakukan konfigurasi detail halus pada tugas guna memenuhi persyaratan sinkronisasi kustom, klik Configure di kolom Custom Advanced Parameters untuk memodifikasi parameter lanjutan.
Klik Advanced Parameter Configuration di pojok kanan atas antarmuka untuk membuka halaman konfigurasi parameter lanjutan.
Modifikasi nilai parameter sesuai petunjuk. Arti setiap parameter dijelaskan setelah namanya.
Modifikasi parameter ini hanya jika Anda sepenuhnya memahami artinya untuk menghindari masalah tak terduga seperti latensi tugas, penggunaan sumber daya berlebihan yang menghambat tugas lain, atau kehilangan data.
8. Jalankan tugas sinkronisasi
Setelah selesai mengonfigurasi, klik Complete di bagian bawah halaman.
Di halaman , temukan tugas sinkronisasi yang dibuat dan klik Start di kolom Actions.
Di Tasks, klik Name/ID tugas untuk melihat detail eksekusi.
Edit tugas
Di halaman , temukan tugas sinkronisasi yang dibuat. Di kolom Actions, klik More, lalu klik Edit untuk memodifikasi informasi tugas. Langkah-langkahnya sama seperti saat mengonfigurasi tugas baru.
Untuk tugas yang tidak dalam status Running, Anda dapat langsung memodifikasi konfigurasi dan menyimpannya. Perubahan berlaku setelah Anda memublikasikan tugas.
Untuk tugas yang Running, saat Anda mengedit dan memublikasikannya, jika Anda tidak memilih Start Running Immediately After Publishing, tombol aksi asli berubah menjadi Apply Updates. Anda harus mengklik tombol ini agar perubahan berlaku di lingkungan produksi.
Setelah Anda mengklik Apply Updates, sistem melakukan tiga langkah pada konten yang diubah: Stop, Publish, dan Restart.
Jika Anda menambahkan tabel:
Setelah Anda mengklik Apply Updates, subtask sinkronisasi ditambahkan untuk tabel baru. migrasi skema dan sinkronisasi lengkap satu kali untuk subtask ini dimulai segera. Kemudian, sinkronisasi inkremental dilanjutkan sesuai jadwal.
Jika Anda mengganti tabel tujuan, yang setara dengan menghapus tabel lama dan menambahkan yang baru:
Setelah Anda mengklik Apply Updates, subtask untuk tabel lama dihapus dan subtask baru untuk tabel baru dibuat. migrasi skema dan sinkronisasi lengkap satu kali untuk subtask baru dimulai segera. Subtask baru kemudian melanjutkan sinkronisasi inkremental sesuai jadwal.
Jika Anda memodifikasi informasi lainnya:
migrasi skema dan sinkronisasi lengkap satu kali untuk tabel tidak terpengaruh. Instans baru yang dihasilkan untuk sinkronisasi inkremental akan menggunakan konfigurasi yang diperbarui. Instans yang sudah dihasilkan tidak terpengaruh.
Tabel yang tidak diubah tidak terpengaruh dan tidak akan dijalankan ulang.
Lihat tugas
Setelah membuat tugas sinkronisasi, Anda dapat melihat daftar tugas sinkronisasi yang dibuat beserta informasi dasarnya di halaman tugas sinkronisasi.

Di kolom Actions, Anda dapat Start atau Stop tugas sinkronisasi. Di bawah More, Anda dapat melakukan operasi seperti Edit dan View.
Untuk tugas yang sedang berjalan, Anda dapat melihat status dasarnya di bagian Execution Summary. Anda juga dapat mengklik area ringkasan untuk melihat detail eksekusi.

Langkah selanjutnya
Setelah tugas dimulai, Anda dapat mengklik nama tugas untuk melihat detail eksekusinya dan melakukan O&M dan tuning tugas.
FAQ
Untuk pertanyaan umum tentang tugas sinkronisasi offline database lengkap, lihat FAQ tentang tugas sinkronisasi lengkap dan inkremental.
Contoh lainnya
Sinkronisasi offline seluruh database MySQL ke Elasticsearch
Sinkronisasi offline seluruh database AnalyticDB for MySQL 3.0 ke Hologres
Sinkronisasi offline seluruh database ClickHouse ke Hologres
Sinkronisasi offline seluruh database Hologres ke MaxCompute
Sinkronisasi offline seluruh database MySQL ke data lake OSS
dan menggabungkan nilai dari Manual Input dan Built-in Variables. Variabel tersebut mencakup nama sumber data sumber, nama database sumber, dan nama tabel sumber.





di kolom Target Table Name.
. Anda dapat menggunakan konstanta atau menghasilkan nilai secara dinamis menggunakan variabel yang telah ditentukan sistem dan parameter penjadwalan berkala. Baik variabel maupun parameter penjadwalan berkala dalam kode akan secara otomatis diganti saat tugas dijadwalkan.