Layanan Transmisi Data (DTS) memungkinkan Anda menyinkronkan data dari kluster sharded MongoDB ke set replika MongoDB atau kluster sharded. Topik ini memberikan contoh cara menyinkronkan data antara instans ApsaraDB for MongoDB.
Prasyarat
-
Buat instans set replika atau kluster sharded ApsaraDB for MongoDB tujuan. Untuk petunjuknya, lihat Buat instans set replika atau Buat instans kluster sharded.
Penting-
Kami menyarankan agar instans ApsaraDB for MongoDB tujuan memiliki ruang penyimpanan minimal 10% lebih besar daripada instans sumber ApsaraDB for MongoDB.
-
Untuk informasi versi yang didukung, lihat Ikhtisar solusi sinkronisasi.
-
-
Ajukan titik akhir untuk semua node shard pada instans kluster sharded sumber ApsaraDB for MongoDB, dan pastikan semua shard menggunakan akun dan kata sandi yang sama. Untuk petunjuknya, lihat Ajukan titik akhir shard.
-
Jika instans MongoDB tujuan adalah instans kluster sharded, lakukan persiapan yang diperlukan tergantung pada cara Anda membuat skema.
-
Tidak menggunakan fitur sinkronisasi skema DTS
Pada langkah Configure Objects, jangan pilih Schema Synchronization untuk Synchronization Types. Pada instans ApsaraDB for MongoDB tujuan, buat database dan koleksi untuk sharding, lalu konfigurasikan sharding data. Kami menyarankan agar Anda mengaktifkan balancer dan melakukan pre-sharding. Untuk informasi selengkapnya, lihat Konfigurasikan sharding data untuk memaksimalkan kinerja shard dan Bagaimana cara menangani distribusi data yang tidak merata di kluster MongoDB sharded?.
-
Menggunakan fitur sinkronisasi skema DTS
Pada langkah Configure Objects, pilih Schema Synchronization untuk Synchronization Types. Setelah sinkronisasi skema selesai, kami menyarankan agar Anda mengaktifkan balancer dan melakukan pre-sharding. Untuk informasi selengkapnya, lihat Bagaimana cara menangani distribusi data yang tidak merata di kluster MongoDB sharded?.
CatatanMengonfigurasi sharding data mencegah data disinkronkan hanya ke satu shard, sehingga memastikan kinerja kluster tetap tinggi. Mengaktifkan balancer dan melakukan pre-sharding membantu mencegah kesenjangan data.
-
Batasan
|
Type |
Description |
|
Batasan database sumber dan tujuan |
|
|
Batasan lainnya |
|
Penagihan
Jenis sinkronisasi | Harga |
Sinkronisasi skema dan sinkronisasi data penuh | Gratis. |
Sinkronisasi data inkremental | Dikenai biaya. Untuk informasi selengkapnya, lihat Ikhtisar penagihan. |
Topologi sinkronisasi data satu arah
Layanan Transmisi Data (DTS) saat ini hanya mendukung sinkronisasi data satu arah antara dua instans ApsaraDB for MongoDB yang menggunakan arsitektur kluster sharded. Sinkronisasi di antara beberapa instans ApsaraDB for MongoDB tidak didukung.
Jenis sinkronisasi
|
Jenis sinkronisasi |
Deskripsi |
|
Sinkronisasi skema |
Menyinkronkan skema objek yang dipilih dari instans sumber ApsaraDB for MongoDB ke instans tujuan ApsaraDB for MongoDB. |
|
Sinkronisasi data penuh |
Menyinkronkan data historis objek yang dipilih dari instans sumber ApsaraDB for MongoDB ke instans tujuan ApsaraDB for MongoDB. Catatan
Sinkronisasi data penuh didukung untuk database dan koleksi. |
|
Sinkronisasi data inkremental |
Menyinkronkan pembaruan inkremental dari instans sumber ApsaraDB for MongoDB ke instans tujuan ApsaraDB for MongoDB setelah sinkronisasi data penuh selesai. OplogSinkronisasi data inkremental tidak mereplikasi database yang dibuat setelah tugas dimulai. Perubahan berikut direplikasi:
Change streamPerubahan berikut direplikasi:
|
Bersihkan dokumen yatim
Sebelum melakukan migrasi data, Anda harus membersihkan dokumen yatim dari database MongoDB sumber.
Jika Anda tidak membersihkan dokumen yatim, kinerja migrasi dapat menurun, dan nilai _id yang bentrok dapat menyebabkan error migrasi data.
ApsaraDB for MongoDB
Menjalankan skrip pembersihan pada instans dengan versi utama MongoDB lebih lama dari 4.2 atau versi minor lebih lama dari 4.0.6 akan menyebabkan error. Untuk melihat versi saat ini dari instans Anda, lihat Versi minor MongoDB. Untuk meningkatkan versi utama atau minor, lihat Tingkatkan versi utama database dan Tingkatkan versi minor database.
Untuk membersihkan dokumen yatim, gunakan perintah cleanupOrphaned. Penggunaan perintah ini berbeda antara MongoDB 4.4 ke atas dan MongoDB 4.2 ke bawah. Bagian berikut menjelaskan prosedurnya.
MongoDB 4.4 dan lebih baru
-
Pada server yang dapat terhubung ke instans kluster sharded, buat skrip JavaScript (JS) bernama
cleanupOrphaned.js.CatatanSkrip ini membersihkan dokumen yatim dari semua koleksi di beberapa database di beberapa shard. Untuk membersihkan dokumen yatim dari koleksi tertentu, Anda dapat memodifikasi skrip JS tersebut.
// Daftar nama shard. var shardNames = ["shardName1", "shardName2"]; // Daftar database yang akan diproses. var databasesToProcess = ["database1", "database2", "database3"]; shardNames.forEach(function(shardName) { // Iterasi database yang ditentukan. databasesToProcess.forEach(function(dbName) { var dbInstance = db.getSiblingDB(dbName); // Dapatkan nama semua koleksi dalam instans database. var collectionNames = dbInstance.getCollectionNames(); // Iterasi setiap koleksi. collectionNames.forEach(function(collectionName) { // Nama lengkap koleksi. var fullCollectionName = dbName + "." + collectionName; // Bangun perintah cleanupOrphaned. var command = { runCommandOnShard: shardName, command: { cleanupOrphaned: fullCollectionName } }; // Jalankan perintah. var result = db.adminCommand(command); if (result.ok) { print("Dokumen yatim telah dibersihkan untuk koleksi " + fullCollectionName + " pada shard " + shardName); printjson(result); } else { print("Gagal membersihkan dokumen yatim untuk koleksi " + fullCollectionName + " pada shard " + shardName); } }); }); });Anda harus memodifikasi nilai parameter
shardNamesdandatabasesToProcessdalam skrip.-
shardNames: Array ID shard tempat Anda ingin membersihkan dokumen yatim. Anda dapat memperoleh ID shard dari bagian Daftar Shard pada halaman Informasi Dasar instans. Contoh:d-bp15a3796d3a****. -
databasesToProcess: Array nama database yang perlu dibersihkan.
-
-
Di direktori tempat skrip
cleanupOrphaned.jsdisimpan, jalankan perintah berikut.mongo --host <Mongoshost> --port <Primaryport> --authenticationDatabase <database> -u <username> -p <password> cleanupOrphaned.js > output.txtTabel berikut menjelaskan parameter-parameter tersebut.
Parameter
Deskripsi
<Mongoshost>Titik akhir node mongos dari instans kluster sharded. Contoh:
s-bp14423a2a51****.mongodb.rds.aliyuncs.com.<Primaryport>Nomor port node mongos dari instans kluster sharded. Nilai defaultnya adalah 3717.
<database>Nama database otentikasi. Ini adalah database tempat akun database yang ditentukan didefinisikan.
<username>Akun database.
<password>Kata sandi untuk akun database.
output.txtFile tujuan untuk hasil eksekusi.
MongoDB 4.2 dan lebih lama
-
Pada server yang dapat terhubung ke instans kluster sharded, buat skrip JS bernama
cleanupOrphaned.js.CatatanSkrip ini membersihkan dokumen yatim dari koleksi tertentu dalam database tertentu di beberapa shard. Untuk membersihkan dokumen yatim dari beberapa koleksi, Anda dapat menjalankan skrip beberapa kali dengan memodifikasi parameter
fullCollectionNameatau memodifikasi skrip agar melakukan iterasi melalui koleksi.function cleanupOrphanedOnShard(shardName, fullCollectionName) { var nextKey = { }; var result; while ( nextKey != null ) { var command = { runCommandOnShard: shardName, command: { cleanupOrphaned: fullCollectionName, startingFromKey: nextKey } }; result = db.adminCommand(command); printjson(result); if (result.ok != 1 || !(result.results.hasOwnProperty(shardName)) || result.results[shardName].ok != 1 ) { print("Tidak dapat menyelesaikan saat ini: kegagalan atau timeout.") break } nextKey = result.results[shardName].stoppedAtKey; } print("Pembersihan dokumen yatim selesai untuk koleksi: " + fullCollectionName + " pada shard: " + shardName) } var shardNames = ["shardName1", "shardName2", "shardName3"] var fullCollectionName = "database.collection" shardNames.forEach(function(shardName) { cleanupOrphanedOnShard(shardName, fullCollectionName); });Anda harus memodifikasi nilai parameter
shardNamesdanfullCollectionNamedalam skrip.-
shardNames: Array ID shard tempat Anda ingin membersihkan dokumen yatim. Anda dapat memperoleh ID shard dari bagian Daftar Shard pada halaman Informasi Dasar instans. Contoh:d-bp15a3796d3a****. -
fullCollectionName: Nama koleksi yang akan dibersihkan, dalam formatdatabase.collection.
-
-
Di direktori tempat skrip
cleanupOrphaned.jsdisimpan, jalankan perintah berikut.mongo --host <Mongoshost> --port <Primaryport> --authenticationDatabase <database> -u <username> -p <password> cleanupOrphaned.js > output.txtTabel berikut menjelaskan parameter-parameter tersebut.
Parameter
Deskripsi
<Mongoshost>Titik akhir node mongos dari instans kluster sharded. Contoh:
s-bp14423a2a51****.mongodb.rds.aliyuncs.com.<Primaryport>Nomor port node mongos dari instans kluster sharded. Nilai defaultnya adalah 3717.
<database>Nama database otentikasi. Ini adalah database tempat akun database yang ditentukan didefinisikan.
<username>Akun database.
<password>Kata sandi untuk akun database.
output.txtFile tujuan untuk hasil eksekusi.
MongoDB yang dikelola sendiri
-
Pada server yang dapat terhubung ke database MongoDB yang dikelola sendiri, unduh file skrip cleanupOrphaned.js.
wget "https://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/120562/cn_zh/1564451237979/cleanupOrphaned.js" -
Modifikasi file skrip cleanupOrphaned.js. Ganti
testdengan nama database yang akan dibersihkan.PentingJika Anda memiliki beberapa database, Anda harus mengulangi Langkah 2 dan Langkah 3 untuk setiap database.
function cleanupOrphaned(coll) { var nextKey = { }; var result; while ( nextKey != null ) { result = db.adminCommand( { cleanupOrphaned: coll, startingFromKey: nextKey } ); if (result.ok != 1) print("Tidak dapat menyelesaikan saat ini: kegagalan atau timeout.") printjson(result); nextKey = result.stoppedAtKey; } } var dbName = 'test' db = db.getSiblingDB(dbName) db.getCollectionNames().forEach(function(collName) { cleanupOrphaned(dbName + "." + collName); }); -
Jalankan perintah berikut untuk membersihkan dokumen yatim dari semua koleksi dalam database yang ditentukan pada sebuah shard.
CatatanAnda harus mengulangi langkah ini untuk setiap shard agar dokumen yatimnya dibersihkan.
mongo --host <Shardhost> --port <Primaryport> --authenticationDatabase <database> -u <username> -p <password> cleanupOrphaned.jsCatatan-
<Shardhost>: Alamat IP shard.
-
<Primaryport>: Port layanan node primary dalam shard.
-
<database>: Nama database otentikasi. Ini adalah database tempat akun database yang ditentukan didefinisikan.
-
<username>: Akun database.
-
<password>: Kata sandi untuk akun database.
Contoh:
Dalam contoh ini, database MongoDB yang dikelola sendiri memiliki tiga shard. Anda harus menjalankan perintah pada setiap shard untuk membersihkan dokumen yatimnya.
mongo --host 172.16.1.10 --port 27018 --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.jsmongo --host 172.16.1.11 --port 27021 --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.jsmongo --host 172.16.1.12 --port 27024 --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js -
Prosedur
Topik ini memberikan contoh konfigurasi tugas DTS sebelum membeli instans. Dalam skenario ini, Anda tidak perlu menentukan jumlah shard untuk kluster sharded sumber ApsaraDB for MongoDB. Jika Anda membeli instans DTS sebelum mengonfigurasi tugas, Anda harus menentukan jumlah shard yang benar saat pembelian.
Buka halaman daftar tugas sinkronisasi di wilayah tujuan. Anda dapat menggunakan salah satu dari dua metode berikut:
Dari Konsol DTS
Masuk ke Konsol Layanan Transmisi Data (DTS).
Di panel navigasi kiri, klik Data Synchronization.
Di pojok kiri atas halaman, pilih wilayah tempat instans sinkronisasi berada.
Dari Konsol DMS
CatatanOperasi aktual dapat berbeda tergantung mode dan tata letak Konsol DMS. Untuk informasi selengkapnya, lihat Mode sederhana dan Sesuaikan tata letak dan gaya antarmuka DMS.
Masuk ke Data Management (DMS).
Di bilah menu atas, pilih .
Di sebelah kanan Data Synchronization Tasks, pilih wilayah tempat instans sinkronisasi berada.
Klik Create Task untuk membuka halaman konfigurasi tugas.
-
Konfigurasikan database sumber dan tujuan.
Kategori
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami menyarankan agar Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tersebut tidak harus unik.
Source Database
Select Existing Connection
Untuk menggunakan instans database yang ditambahkan ke sistem (baru dibuat atau disimpan), pilih instans database dari daftar drop-down. Informasi database akan dikonfigurasi secara otomatis.
CatatanDi Konsol DMS, item konfigurasi ini bernama Select a DMS database instance..
Jika Anda belum menambahkan instans database ke sistem, atau tidak perlu menggunakan instans yang sudah ditambahkan, konfigurasikan informasi database berikut secara manual.
Database Type
Pilih MongoDB.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah instans sumber ApsaraDB for MongoDB.
Replicate Data Across Alibaba Cloud Accounts
Contoh ini menggunakan instans database yang dimiliki oleh Akun Alibaba Cloud saat ini. Pilih No.
Architecture
Pilih Sharded Cluster.
Migration Method
Pilih metode untuk sinkronisasi data inkremental berdasarkan kebutuhan Anda.
-
Oplog (Direkomendasikan):
Opsi ini tersedia jika Oplog diaktifkan untuk database sumber.
CatatanOplog diaktifkan secara default untuk database MongoDB yang dikelola sendiri dan instans ApsaraDB for MongoDB. Metode ini menawarkan latensi lebih rendah untuk tugas sinkronisasi inkremental karena log diambil lebih cepat. Kami menyarankan memilih Oplog.
-
ChangeStream:
Opsi ini tersedia jika Change Streams diaktifkan untuk database sumber.
Catatan-
Jika database sumber adalah instans Amazon DocumentDB (non-elastic cluster), Anda hanya dapat memilih ChangeStream.
-
Jika Anda mengatur Architecture database sumber ke Sharded Cluster, Anda tidak perlu menentukan Shard account dan Shard password.
-
Instance ID
Pilih ID instans sumber ApsaraDB for MongoDB.
Authentication Database
Masukkan nama database tempat akun database instans sumber ApsaraDB for MongoDB didefinisikan. Nilai defaultnya adalah admin.
Database Account
Masukkan akun database instans sumber ApsaraDB for MongoDB. Akun tersebut harus memiliki izin baca pada database yang akan disinkronkan, serta pada database config, admin, dan local.
Database Password
Masukkan kata sandi yang sesuai dengan akun database.
Shard account
Masukkan akun yang digunakan untuk mengakses shard instans sumber ApsaraDB for MongoDB.
CatatanJika database sumber Anda adalah database MongoDB yang dikelola sendiri, Anda juga harus menentukan shard access information.
Shard password
Masukkan kata sandi untuk akun shard instans sumber ApsaraDB for MongoDB.
Encryption
DTS mendukung tiga metode koneksi: Non-encrypted, SSL-encrypted, dan Mongo Atlas SSL. Opsi untuk Encryption bervariasi berdasarkan Access Method dan Architecture yang dipilih. Opsi yang ditampilkan di konsol berlaku.
Catatan-
Database MongoDB dengan Architecture Sharded Cluster dan Migration Method Oplog tidak mendukung SSL-encrypted.
-
Jika sumber adalah database MongoDB yang dikelola sendiri (Access Method bukan Alibaba Cloud Instance) dengan arsitektur Replica Set, dan Anda memilih SSL-encrypted, DTS juga memungkinkan Anda mengunggah sertifikat CA untuk memverifikasi koneksi.
Destination Database
Select Existing Connection
Untuk menggunakan instans database yang ditambahkan ke sistem (baru dibuat atau disimpan), pilih instans database dari daftar drop-down. Informasi database akan dikonfigurasi secara otomatis.
CatatanDi Konsol DMS, item konfigurasi ini bernama Select a DMS database instance..
Jika Anda belum menambahkan instans database ke sistem, atau tidak perlu menggunakan instans yang sudah ditambahkan, konfigurasikan informasi database berikut secara manual.
Database Type
Pilih MongoDB.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah instans tujuan ApsaraDB for MongoDB.
Replicate Data Across Alibaba Cloud Accounts
Contoh ini menggunakan instans database yang dimiliki oleh Akun Alibaba Cloud saat ini. Pilih No.
Architecture
Pilih arsitektur instans tujuan ApsaraDB for MongoDB.
Instance ID
Pilih ID instans tujuan ApsaraDB for MongoDB.
Authentication Database
Masukkan nama database tempat akun database instans tujuan ApsaraDB for MongoDB didefinisikan. Nilai defaultnya adalah admin.
Database Account
Masukkan akun database instans tujuan ApsaraDB for MongoDB. Akun tersebut harus memiliki izin dbAdminAnyDatabase, izin readWrite pada database tujuan, dan izin baca pada database local.
Database Password
Masukkan kata sandi yang sesuai dengan akun database.
Encryption
DTS mendukung tiga metode koneksi: Non-encrypted, SSL-encrypted, dan Mongo Atlas SSL. Opsi untuk Encryption bervariasi berdasarkan Access Method dan Architecture yang dipilih. Opsi yang ditampilkan di konsol berlaku.
Catatan-
Database MongoDB dengan Architecture Sharded Cluster tidak mendukung SSL-encrypted.
-
Jika tujuan adalah database MongoDB yang dikelola sendiri (Access Method bukan Alibaba Cloud Instance) dengan Replica Set, dan Anda memilih SSL-encrypted, DTS juga memungkinkan Anda mengunggah sertifikat CA untuk memverifikasi koneksi.
Setelah selesai mengonfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.
CatatanPastikan blok CIDR alamat IP server DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Hal ini dapat dilakukan secara otomatis atau manual. Untuk informasi selengkapnya, lihat Tambahkan blok CIDR alamat IP server DTS ke daftar putih.
Jika database sumber atau tujuan adalah database yang dikelola sendiri (di mana Access Method bukan Alibaba Cloud Instance), Anda juga harus mengklik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.
-
Konfigurasikan objek tugas.
-
Pada halaman Configure Objects, konfigurasikan objek yang akan disinkronkan.
Parameter
Deskripsi
Synchronization Types
Incremental Data Synchronization dipilih. Secara default, Anda juga harus memilih Schema Synchronization dan Full Data Synchronization. Setelah pemeriksaan awal selesai, DTS melakukan sinkronisasi data penuh objek yang dipilih dari instans sumber ke kluster tujuan. Hal ini berfungsi sebagai data dasar untuk sinkronisasi data inkremental selanjutnya.
PentingJika instans MongoDB tujuan adalah kluster sharded dan Anda tidak perlu menggunakan fitur sinkronisasi skema DTS (misalnya, sharding data sudah dikonfigurasi di tujuan), jangan pilih Schema Synchronization. Jika tidak, konflik shard dapat menyebabkan ketidakkonsistenan data atau kegagalan tugas.
Synchronization Topology
Pilih One-way Synchronization.
Processing Mode of Conflicting Tables
Precheck and Report Errors: Memeriksa koleksi dengan nama yang sama di database tujuan. Jika ditemukan koleksi dengan nama yang sama, error dilaporkan dan tugas sinkronisasi data tidak dimulai. Jika tidak, pemeriksaan awal berhasil.
CatatanJika Anda tidak dapat menghapus atau mengganti nama koleksi dengan nama yang sama di database tujuan, Anda dapat mengubah nama koleksi di database tujuan. Untuk informasi selengkapnya, lihat Atur nama objek sinkronisasi di instans tujuan.
Ignore Errors and Proceed: Melewati pemeriksaan koleksi dengan nama yang sama di database tujuan.
PeringatanMemilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan membahayakan bisnis Anda. Misalnya:
Jika catatan di database tujuan memiliki nilai primary key atau unique key yang sama dengan catatan di database sumber, catatan di database tujuan dipertahankan. Catatan dari database sumber tidak disinkronkan ke database tujuan.
Hal ini dapat menyebabkan inisialisasi data gagal, hanya sebagian data yang disinkronkan, atau seluruh sinkronisasi gagal.
Capitalization of Object Names in Destination Instance
Anda dapat mengonfigurasi kebijakan sensitivitas huruf besar/kecil untuk nama objek database, tabel, dan kolom yang disinkronkan ke instans tujuan. Secara default, DTS default policy dipilih. Anda juga dapat memilih untuk menggunakan kebijakan default database sumber dan tujuan. Untuk informasi selengkapnya, lihat Kebijakan sensitivitas huruf besar/kecil untuk nama objek tujuan.
Source Objects
Di kotak Source Objects, klik objek yang akan disinkronkan, lalu klik
untuk memindahkannya ke kotak Selected Objects.CatatanAnda dapat memilih objek pada level DATABASE atau COLLECTION.
Selected Objects
Untuk mengatur nama objek sinkronisasi di instans tujuan atau menentukan objek mana yang menerima data, klik kanan objek sinkronisasi di kotak Selected Objects dan modifikasi. Untuk informasi selengkapnya, lihat Pemetaan nama tabel dan kolom.
Untuk menghapus objek sinkronisasi, klik objek tersebut di kotak Selected Objects, lalu klik
untuk memindahkannya ke kotak Source Objects.
Catatan-
Untuk memilih operasi inkremental pada level database atau koleksi, klik kanan objek yang diinginkan di kotak Selected Objects dan buat pilihan Anda di kotak dialog yang muncul.
-
Untuk memfilter data (didukung selama sinkronisasi penuh tetapi tidak selama sinkronisasi inkremental), klik kanan koleksi yang diinginkan di kotak Selected Objects dan konfigurasikan pengaturannya di kotak dialog yang muncul. Untuk petunjuknya, lihat Konfigurasikan kondisi filter.
-
Jika Anda menggunakan fitur pemetaan nama objek untuk menentukan database atau koleksi yang menerima data, sinkronisasi dapat gagal untuk objek lain yang bergantung pada objek yang dipetakan.
-
Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas pada kluster bersama, dan Anda tidak perlu memilih kluster. Untuk kinerja yang lebih stabil, Anda dapat membeli kluster khusus untuk menjalankan tugas sinkronisasi DTS. Untuk informasi selengkapnya, lihat Apa itu kluster khusus DTS?.
Retry Time for Failed Connections
Setelah tugas sinkronisasi dimulai, jika koneksi ke database sumber atau tujuan gagal, DTS melaporkan error dan segera mulai mencoba menghubungkan kembali. Durasi percobaan ulang default adalah 720 menit. Anda juga dapat menentukan durasi percobaan ulang kustom dari 10 hingga 1.440 menit. Kami menyarankan agar Anda mengatur durasi minimal 30 menit. Jika DTS berhasil terhubung kembali ke database dalam durasi yang ditentukan, tugas sinkronisasi akan dilanjutkan secara otomatis. Jika tidak, tugas gagal.
CatatanJika Anda memiliki beberapa instans DTS (misalnya, Instans A dan Instans B) yang berbagi sumber atau tujuan yang sama, dan Anda mengatur waktu percobaan ulang jaringan menjadi 30 menit untuk Instans A dan 60 menit untuk Instans B, durasi yang lebih pendek yaitu 30 menit akan digunakan untuk keduanya.
Karena DTS membebankan biaya selama periode percobaan ulang koneksi, kami menyarankan agar Anda menyesuaikan durasi percobaan ulang berdasarkan kebutuhan bisnis Anda atau segera melepas instans DTS setelah instans database sumber dan tujuan dilepas.
Retry Time for Other Issues
Setelah tugas sinkronisasi dimulai, jika terjadi masalah non-koneksi lainnya pada database sumber atau tujuan (seperti exception eksekusi DDL atau DML), DTS melaporkan error dan segera mulai melakukan operasi percobaan ulang terus-menerus. Durasi percobaan ulang default adalah 10 menit. Anda juga dapat menyesuaikan durasi percobaan ulang dalam rentang 1 hingga 1.440 menit. Kami menyarankan agar Anda mengaturnya minimal 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditetapkan, tugas sinkronisasi akan dilanjutkan secara otomatis. Jika tidak, tugas gagal.
PentingNilai untuk Retry Time for Other Issues harus lebih kecil daripada nilai untuk Retry Time for Failed Connections.
Enable Throttling for Full Data Synchronization
Selama tahap sinkronisasi penuh, DTS mengonsumsi sumber daya baca dan tulis dari database sumber dan tujuan, yang dapat meningkatkan beban database. Untuk mengurangi beban pada database sumber dan tujuan, Anda dapat mengatur batas laju untuk tugas sinkronisasi penuh dengan mengonfigurasi parameter Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s).
CatatanItem konfigurasi ini hanya tersedia saat Synchronization Types diatur ke Full Data Synchronization.
Anda juga dapat menyesuaikan laju sinkronisasi penuh setelah instans sinkronisasi sedang berjalan.
Only one data type for primary key _id in a table of the data to be synchronized
Tentukan apakah tipe data primary key
_idbersifat unik dalam setiap koleksi yang akan disinkronkan.Penting-
Pilih opsi berdasarkan data aktual Anda. Pemilihan yang salah dapat menyebabkan kehilangan data.
-
Parameter ini hanya tersedia jika Synchronization Types mencakup Full Data Synchronization.
-
Yes: Tipe data bersifat unik. Selama fase sinkronisasi penuh, DTS tidak memindai tipe data primary key dalam data sumber. Untuk setiap koleksi, DTS hanya menyinkronkan data yang sesuai dengan satu tipe data primary key.
-
No: Tipe data tidak unik. Selama fase sinkronisasi penuh, DTS memindai tipe data primary key dalam data sumber dan menyinkronkan semua data.
Enable Throttling for Incremental Data Synchronization
Anda juga dapat mengatur batas laju untuk tugas sinkronisasi inkremental. Untuk mengurangi tekanan pada database tujuan, atur RPS of Incremental Data Synchronization dan Data synchronization speed for incremental synchronization (MB/s).
Environment Tag
Anda dapat memilih tag lingkungan untuk mengidentifikasi instans berdasarkan kebutuhan bisnis Anda. Anda tidak perlu memilih tag dalam contoh ini.
Configure ETL
Pilih apakah akan mengaktifkan fitur ekstrak, transformasi, dan muat (ETL). Untuk informasi selengkapnya, lihat Apa itu ETL? Nilai yang valid:
-
Yes: Mengaktifkan fitur ETL. Masukkan pernyataan pemrosesan data di editor kode. Untuk informasi selengkapnya, lihat Konfigurasikan ETL dalam tugas migrasi data atau sinkronisasi data.
-
No: Menonaktifkan fitur ETL.
Monitoring and Alerting
Tentukan apakah akan mengonfigurasi peringatan. Jika sinkronisasi gagal atau latensi melebihi ambang batas yang ditentukan, notifikasi akan dikirim ke kontak peringatan.
No: Tidak ada peringatan yang dikonfigurasi.
Yes: Konfigurasikan peringatan dengan mengatur ambang batas peringatan dan menentukan pemberitahuan peringatan. Untuk informasi selengkapnya, lihat Konfigurasikan pemantauan dan peringatan selama konfigurasi tugas.
Klik Next: Data Validation untuk mengonfigurasi tugas validasi data.
Jika Anda ingin menggunakan fitur validasi data, lihat Konfigurasikan validasi data untuk petunjuk konfigurasinya.
-
Simpan tugas dan jalankan pemeriksaan awal.
Untuk melihat parameter API untuk mengonfigurasi instans ini, arahkan kursor ke tombol Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters di gelembung.
Jika Anda telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum pekerjaan sinkronisasi dimulai, DTS menjalankan pemeriksaan awal. Pekerjaan hanya dapat dimulai setelah semua item pemeriksaan awal lolos.
Jika pemeriksaan awal gagal, klik View Details untuk item yang gagal. Perbaiki masalah sesuai petunjuk, lalu jalankan pemeriksaan awal lagi.
Jika pemeriksaan awal mengembalikan peringatan:
Jika item pemeriksaan gagal dan tidak dapat diabaikan, klik View Details di sebelah item tersebut. Ikuti petunjuk untuk memperbaiki masalah, lalu jalankan pemeriksaan awal lagi.
Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again secara berurutan untuk melewati peringatan dan menjalankan kembali pemeriksaan awal. Jika Anda memilih untuk mengabaikan item peringatan, hal ini dapat menyebabkan masalah seperti ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda.
-
Beli instans.
Saat Success Rate mencapai 100%, klik Next: Purchase Instance.
Di halaman Purchase, pilih metode penagihan dan spesifikasi link untuk instans sinkronisasi data. Tabel berikut menjelaskan parameter-parameter ini secara rinci.
Kategori
Parameter
Deskripsi
New Instance Class
Metode Penagihan
Langganan: Anda membayar saat membuat instans. Ini cocok untuk kebutuhan jangka panjang dan lebih hemat biaya dibandingkan bayar sesuai penggunaan. Semakin lama durasi langganan, semakin tinggi diskonnya.
Bayar sesuai penggunaan: Anda dikenai biaya per jam. Ini cocok untuk kebutuhan jangka pendek. Anda dapat melepas instans segera setelah digunakan untuk menghemat biaya.
Konfigurasi Kelompok Sumber Daya
Kelompok sumber daya tempat instans tersebut berada. Defaultnya adalah kelompok sumber daya default. Untuk informasi selengkapnya, lihat Apa itu Resource Management?.
Spesifikasi Link
DTS menyediakan spesifikasi sinkronisasi dengan tingkat kinerja berbeda. Spesifikasi link sinkronisasi memengaruhi laju sinkronisasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya, lihat Spesifikasi link sinkronisasi data.
Durasi Langganan
Dalam mode langganan, pilih durasi dan jumlah untuk instans langganan. Anda dapat memilih langganan bulanan dari 1 hingga 9 bulan, atau langganan tahunan selama 1, 2, 3, atau 5 tahun.
CatatanOpsi ini hanya tersedia saat metode penagihan adalah Subscription.
Setelah selesai mengonfigurasi, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start. Di kotak dialog OK, klik OK.
Anda dapat melihat perkembangan tugas di halaman Data Synchronization.