All Products
Search
Document Center

Data Transmission Service:Migrasikan Database SQL Server yang Dikelola Sendiri ke AnalyticDB for PostgreSQL

Last Updated:Mar 25, 2026

Layanan Transmisi Data (DTS) memungkinkan migrasi data dari database SQL Server yang dikelola sendiri ke AnalyticDB for PostgreSQL, sehingga mendukung analitik data secara real-time.

Prasyarat

  • Tugas migrasi ini hanya dapat dikonfigurasi di Konsol baru.

  • Untuk versi database SQL Server yang dikelola sendiri yang didukung, lihat Solusi migrasi.

  • Instans tujuan AnalyticDB for PostgreSQL telah dibuat. Jika belum, lihat Buat instans.

  • Ruang penyimpanan instans tujuan AnalyticDB for PostgreSQL harus lebih besar daripada ruang penyimpanan yang digunakan oleh database SQL Server yang dikelola sendiri.

  • Jika instans RDS memenuhi salah satu kondisi berikut, disarankan untuk membagi tugas migrasi menjadi beberapa subtugas:

    • Jumlah database melebihi 10.

    • Backup log dilakukan pada satu database lebih dari sekali per jam.

    • Operasi DDL dilakukan pada satu database lebih dari 100 kali per jam.

    • Volume log satu database melebihi 20 MB/detik.

    • Change Data Capture (CDC) perlu diaktifkan untuk lebih dari 1.000 tabel.

Catatan penting

Catatan
  • Selama migrasi skema, DTS memigrasikan kunci asing dari database sumber ke database tujuan.

  • Selama migrasi data penuh dan migrasi data inkremental, DTS sementara menonaktifkan pemeriksaan kendala dan operasi kaskade kunci asing pada tingkat sesi. Jika operasi pembaruan atau penghapusan kaskade terjadi di database sumber saat tugas sedang berjalan, ketidakkonsistenan data dapat terjadi.

Jenis

Deskripsi

Batasan database sumber

  • Persyaratan bandwidth: Server yang menghosting database sumber harus memiliki bandwidth outbound yang cukup. Jika tidak, kecepatan migrasi data akan terpengaruh.

  • Tabel yang akan dimigrasikan harus memiliki kunci primer atau kendala UNIQUE, dan field-field tersebut harus unik. Jika tidak, data duplikat dapat muncul di database tujuan.

  • Jika Anda memigrasikan objek tingkat tabel dan perlu mengeditnya, seperti dengan memetakan nama tabel dan kolom, satu tugas migrasi data mendukung maksimal 1.000 tabel. Jika Anda melebihi batas ini, kesalahan akan dilaporkan setelah Anda mengirimkan tugas. Dalam kasus ini, bagi tabel menjadi beberapa tugas migrasi atau konfigurasikan tugas untuk memigrasikan seluruh database.

  • Satu tugas migrasi data mendukung maksimal 10 database. Jika Anda melebihi batas ini, masalah stabilitas dan kinerja dapat terjadi. Dalam kasus ini, bagi database menjadi beberapa tugas migrasi.

  • Jika Anda mengonfigurasi tugas untuk memigrasikan objek tertentu alih-alih seluruh database, Anda tidak dapat memigrasikan tabel yang memiliki nama sama tetapi nama skema berbeda ke database tujuan yang sama.

  • Untuk migrasi inkremental, log data harus memenuhi persyaratan berikut:

    • Log harus diaktifkan. Mode backup harus diatur ke Full. Backup fisik penuh harus telah berhasil dilakukan.

    • Untuk tugas migrasi inkremental, Layanan Transmisi Data (DTS) mensyaratkan bahwa log data database sumber dipertahankan lebih dari 24 jam. Untuk tugas yang mencakup migrasi penuh dan migrasi inkremental, DTS mensyaratkan bahwa log data database sumber dipertahankan minimal 7 hari. Anda dapat mengubah periode retensi log menjadi lebih dari 24 jam setelah migrasi penuh selesai. Jika tidak, tugas DTS dapat gagal karena DTS tidak dapat memperoleh log data. Dalam kasus ekstrem, ketidakkonsistenan data atau kehilangan data dapat terjadi. Masalah yang disebabkan oleh periode retensi log yang lebih pendek dari periode yang disyaratkan tidak dicakup oleh Perjanjian Tingkat Layanan (SLA) DTS.

  • Untuk mengaktifkan change data capture (CDC) untuk tabel yang akan dimigrasikan dari database sumber, kondisi berikut harus dipenuhi. Jika tidak, pemeriksaan awal akan gagal.

    • Nilai field `srvname` dalam tampilan `sys.sysservers` harus sama dengan nilai kembali fungsi `SERVERPROPERTY`.

    • Jika database sumber adalah instans SQL Server yang dikelola sendiri, pemilik database harus `sa`. Jika database sumber adalah instans RDS for SQL Server, pemilik database harus `sqlsa`.

    • Jika database sumber adalah Edisi Perusahaan, versinya harus SQL Server 2008 atau lebih baru.

    • Jika database sumber adalah Edisi Standar, versinya harus SQL Server 2016 SP1 atau lebih baru.

    • Jika database sumber adalah SQL Server 2017 (Edisi Standar atau Perusahaan), tingkatkan versi database.

  • DTS menggunakan fungsi fn_log untuk memperoleh log database sumber. Fungsi ini memiliki bottleneck kinerja. Jangan menghapus log database sumber terlalu dini. Jika tidak, tugas DTS dapat gagal.

  • Batasan operasi database sumber:

    • Selama sinkronisasi skema awal dan migrasi data penuh, jangan lakukan operasi DDL untuk mengubah skema database atau tabel. Jika tidak, tugas migrasi data akan gagal.

    • Jika Anda hanya melakukan migrasi data penuh, jangan menulis data baru ke instans sumber. Jika tidak, ketidakkonsistenan data akan terjadi antara database sumber dan tujuan. Untuk memastikan konsistensi data real-time, pilih Sinkronisasi Skema Awal, Migrasi Data Penuh, dan Migrasi Data Inkremental.

  • Jika database sumber adalah instans hanya baca, operasi DDL tidak dapat dimigrasikan.

  • Jika database sumber adalah Azure SQL Database, satu instans DTS hanya dapat memigrasikan satu database.

  • Jika database sumber adalah instans RDS for SQL Server dan tugas migrasi mencakup migrasi inkremental, nonaktifkan transparent data encryption (TDE) untuk memastikan stabilitas instans DTS. Untuk informasi lebih lanjut, lihat Nonaktifkan TDE.

  • Jika Anda menggunakan perintah sp_rename untuk mengganti nama objek seperti prosedur tersimpan di database sumber sebelum tugas sinkronisasi skema awal dijalankan, tugas tersebut mungkin tidak berfungsi sebagaimana mestinya atau gagal.

    Catatan

    Gunakan perintah ALTER untuk mengganti nama objek di database.

  • Dalam mode parsing log hibrida, Anda tidak dapat secara berturut-turut melakukan beberapa operasi untuk menambah atau menghapus kolom di database sumber dalam interval kurang dari 10 menit. Misalnya, jika Anda menjalankan pernyataan SQL berikut secara berturut-turut, tugas akan melaporkan kesalahan.

    ALTER TABLE test_table DROP COLUMN Flag;
    ALTER TABLE test_table ADD Remark nvarchar(50) not null default('');
  • Jika database sumber adalah instans RDS for SQL Server Edisi Web, Anda harus mengatur SQL Server Incremental Synchronization Mode ke Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported) saat mengonfigurasi tugas.

  • Selama migrasi data penuh, pastikan parameter mode pemrosesan transaksi READ_COMMITTED_SNAPSHOT diaktifkan untuk database sumber. Ini mencegah shared lock memengaruhi penulisan data. Jika tidak, pengecualian seperti ketidakkonsistenan data dan kegagalan instans dapat terjadi. Pengecualian yang disebabkan oleh masalah ini tidak dicakup oleh SLA DTS.

Batasan lainnya

  • Hanya data tipe data dasar yang dapat dimigrasikan. Data tipe data CURSOR, ROWVERSION, SQL_VARIANT, HIERARCHYID, POLYGON, GEOMETRY, GEOGRAPHY, dan tipe data yang ditentukan pengguna yang dibuat menggunakan perintah CREATE TYPE tidak dapat dimigrasikan.

  • Objek dengan tipe berikut tidak dapat dimigrasikan: INDEX, VIEW, PROCEDURE, FUNCTION, TRIGGER, FK, INDEX, FULL_TEXT_INDEX, DATATYPE, DEFAULT, SYNONYM, CATALOG, PLAN_GUIDE, DEFAULT_CONSTRAINT, UK, CK, dan SEQUENCE.

  • Anda dapat memilih tabel untuk dimigrasikan. Anda juga dapat memodifikasi pemetaan kolom. Jika Anda menggunakan pemetaan kolom untuk migrasi tabel non-penuh atau jika skema tabel sumber dan tujuan tidak konsisten, data di kolom yang ada di tabel sumber tetapi tidak ada di tabel tujuan akan hilang.

  • Tabel Append-optimized (AO) tidak didukung sebagai tabel tujuan.

  • Jika tabel yang akan dimigrasikan memiliki kunci primer, kolom kunci primer di tabel tujuan harus sama dengan di tabel sumber. Jika tabel yang akan dimigrasikan tidak memiliki kunci primer, kolom kunci primer di tabel tujuan harus sama dengan kunci distribusi.

  • Kunci unik, termasuk kolom kunci primer, dari tabel tujuan harus berisi semua kolom kunci distribusi.

  • Jika Anda memilih Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported) untuk SQL Server Incremental Synchronization Mode pada tahap Configure Objects, tabel yang akan dimigrasikan harus memiliki indeks terkluster yang berisi kolom kunci primer. Tabel yang akan dimigrasikan tidak boleh berupa heap table, tabel tanpa kunci primer, tabel terkompresi, tabel dengan kolom terhitung, atau tabel dengan kolom sparse. Dalam mode parsing log campuran, pembatasan ini tidak berlaku.

  • Jika Anda mengatur SQL Server Incremental Synchronization Mode ke Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (Hybrid Log-based Parsing) pada langkah Configure Objects, batasan berikut juga berlaku:

    • Migrasi inkremental oleh DTS bergantung pada komponen CDC. Pastikan pekerjaan CDC di database sumber sedang berjalan. Jika tidak, tugas DTS akan gagal.

    • Secara default, data inkremental yang disimpan dalam komponen CDC dipertahankan selama 3 hari. Kami menyarankan Anda menggunakan perintah exec console.sys.sp_cdc_change_job @job_type = 'cleanup', @retention= <time>; untuk menyesuaikan periode retensi.

      Catatan
      • <time> menentukan waktu dalam menit.

      • Jika jumlah pernyataan SQL perubahan inkremental untuk satu tabel di database sumber melebihi 10 juta per hari, kami menyarankan Anda mengatur <time> ke 1440.

    • Dalam satu tugas migrasi, kami menyarankan Anda mengaktifkan CDC untuk tidak lebih dari 1.000 tabel. Jika tidak, latensi tugas atau ketidakstabilan dapat terjadi.

    • Modul prasyarat tugas migrasi inkremental mengaktifkan CDC untuk database sumber. Selama proses ini, database sumber mungkin dikunci sebentar karena batasan kernel database SQL Server.

  • Jika Anda mengatur SQL Server Incremental Synchronization Mode ke Polling and querying CDC instances for incremental synchronization pada langkah Configure Objects, batasan berikut juga berlaku:

    • Akun database sumber yang digunakan oleh instans DTS harus memiliki izin untuk mengaktifkan CDC. Untuk mengaktifkan CDC tingkat database, Anda memerlukan akun dengan role sysadmin. Untuk mengaktifkan CDC tingkat tabel, Anda memerlukan akun istimewa.

      Catatan
      • Akun istimewa (administrator server) yang disediakan oleh konsol Azure SQL Database memenuhi persyaratan. Untuk database berbasis vCore, semua tipe instans mendukung CDC. Untuk database berbasis DTU, hanya tipe instans S3 ke atas yang mendukung CDC.

      • Akun istimewa Amazon RDS for SQL Server memenuhi persyaratan dan dapat digunakan untuk mengaktifkan CDC tingkat database untuk prosedur tersimpan.

      • Tabel indeks penyimpanan kolom terkluster tidak mendukung CDC.

      • Modul prasyarat tugas migrasi inkremental mengaktifkan CDC untuk database sumber. Selama proses ini, database sumber mungkin dikunci sebentar karena batasan kernel database SQL Server.

    • DTS melakukan polling instance CDC setiap tabel di database sumber untuk memperoleh data inkremental. Oleh karena itu, kami menyarankan Anda memigrasikan tidak lebih dari 1.000 tabel dari database sumber. Jika tidak, latensi tugas atau ketidakstabilan dapat terjadi.

    • Secara default, data inkremental yang disimpan dalam komponen CDC dipertahankan selama 3 hari. Kami menyarankan Anda menggunakan perintah exec console.sys.sp_cdc_change_job @job_type = 'cleanup', @retention= <time>; untuk menyesuaikan periode retensi.

      Catatan
      • <time> menentukan waktu dalam menit.

      • Jika jumlah pernyataan SQL perubahan inkremental untuk satu tabel di database sumber melebihi 10 juta per hari, kami menyarankan Anda mengatur <time> ke 1440.

    • Anda tidak dapat secara berturut-turut melakukan operasi untuk menambah atau menghapus kolom. Misalnya, Anda tidak dapat melakukan lebih dari dua operasi DDL untuk menambah atau menghapus kolom dalam satu menit. Jika tidak, tugas dapat gagal.

    • Anda tidak dapat mengubah instance CDC database sumber. Jika tidak, tugas dapat gagal atau data dapat hilang.

  • Untuk memastikan akurasi latensi migrasi data inkremental, DTS membuat trigger dts_cdc_sync_ddl, tabel heartbeat dts_sync_progress, dan tabel penyimpanan DDL dts_cdc_ddl_history di database sumber dalam mode parsing log. Dalam mode sinkronisasi inkremental hibrida, DTS membuat trigger dts_cdc_sync_ddl, tabel heartbeat dts_sync_progress, dan tabel penyimpanan DDL dts_cdc_ddl_history, serta mengaktifkan CDC tingkat database dan CDC untuk beberapa tabel. Kami menyarankan agar laju perubahan data tabel dengan CDC yang diaktifkan di database sumber tidak melebihi 1.000 catatan per detik (RPS).

  • Sebelum memigrasikan data, evaluasi kinerja database sumber dan tujuan. Kami menyarankan Anda memigrasikan data selama jam sepi. Jika tidak, DTS akan mengonsumsi sumber daya baca dan tulis pada database sumber dan tujuan selama migrasi data penuh, yang dapat meningkatkan beban database.

  • Migrasi data penuh melibatkan operasi INSERT konkuren, yang menyebabkan fragmentasi tabel di database tujuan. Oleh karena itu, setelah migrasi data penuh selesai, ruang penyimpanan tabel di database tujuan lebih besar daripada di instans sumber.

  • Konfirmasi apakah presisi migrasi yang disediakan DTS untuk kolom tipe data FLOAT atau DOUBLE memenuhi kebutuhan bisnis Anda. DTS membaca nilai kolom-kolom ini menggunakan ROUND(COLUMN,PRECISION). Jika Anda tidak menentukan presisi, DTS memigrasikan nilai FLOAT dengan presisi 38 dan nilai DOUBLE dengan presisi 308.

  • DTS mencoba melanjutkan tugas migrasi yang gagal dalam waktu tujuh hari. Oleh karena itu, sebelum Anda memindahkan bisnis ke instans tujuan, Anda harus mengakhiri atau melepaskan tugas tersebut, atau menggunakan perintah revoke untuk mencabut izin tulis akun yang digunakan DTS untuk mengakses instans tujuan. Ini mencegah data sumber menimpa data di instans tujuan setelah tugas dilanjutkan secara otomatis.

  • Jika tugas migrasi mencakup migrasi data inkremental, Anda tidak dapat melakukan reindex. Jika tidak, tugas dapat gagal atau data dapat hilang.

    Catatan

    Anda tidak dapat mengubah kunci primer tabel yang telah diaktifkan CDC-nya.

  • Jika jumlah tabel yang diaktifkan CDC-nya dalam satu tugas migrasi melebihi nilai The maximum number of tables for which CDC is enabled that DTS supports., pemeriksaan awal akan gagal.

  • Jika tugas mencakup migrasi inkremental dan data yang akan ditulis ke satu field tabel dengan CDC yang diaktifkan melebihi 64 KB, Anda harus menjalankan perintah exec sp_configure 'max text repl size', -1; untuk menyesuaikan konfigurasi database sumber terlebih dahulu.

    Catatan

    Secara default, pekerjaan CDC dapat memproses satu field dengan panjang maksimum 64 KB.

  • Jika beberapa instans DTS menggunakan database SQL Server yang sama sebagai sumber, modul ingestion data inkremental mereka saling independen.

  • Jika tugas gagal, staf dukungan DTS akan mencoba memulihkannya dalam waktu delapan jam. Selama pemulihan, mereka mungkin me-restart tugas atau menyesuaikan parameternya.

    Catatan

    Hanya parameter tugas DTS yang dimodifikasi—bukan parameter database. Parameter yang mungkin disesuaikan termasuk yang tercantum dalam Modify instance parameters.

  • SQL Server adalah database komersial closed-source. Karena batasan format spesifik yang diketahui atau tidak diketahui, masalah dapat terjadi ketika DTS melakukan CDC dan parsing pada log SQL Server. Oleh karena itu, sebelum Anda mengaktifkan sinkronisasi atau migrasi inkremental untuk sumber SQL Server di lingkungan produksi, kami menyarankan Anda melakukan uji coba proof of concept (POC) yang komprehensif. Uji coba harus mencakup semua jenis perubahan bisnis, perubahan skema tabel, dan uji stres jam sibuk bisnis. Karena sifat format log SQL Server yang tidak dapat diprediksi, Anda harus memastikan bahwa logika bisnis di lingkungan produksi konsisten dengan yang ada di uji coba POC. Ini adalah kunci untuk memastikan efisiensi dan stabilitas tinggi DTS.

Kasus khusus

Jika instans sumber adalah instans RDS for SQL Server, DTS membuat akun rdsdt_dtsacct di instans sumber untuk migrasi data. Jangan menghapus akun ini atau mengubah kata sandinya selama tugas berjalan. Jika tidak, tugas dapat gagal. Untuk informasi lebih lanjut, lihat System accounts.

Penagihan

Tipe migrasi

Biaya konfigurasi instans

Biaya lalu lintas Internet

Migrasi skema dan migrasi data penuh

Gratis.

Ketika parameter Access Method database tujuan diatur ke Public IP Address, Anda dikenai biaya untuk Lalu lintas internet. Untuk informasi selengkapnya, lihat Ikhtisar penagihan.

Migrasi data inkremental

Dikenai biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan.

Tipe migrasi

  • Migrasi skema

    DTS memigrasikan definisi skema objek migrasi dari database sumber ke database tujuan.

    • Objek skema yang didukung: Skema, Tabel, Tampilan, Fungsi, Prosedur.

    • Objek skema yang tidak didukung: Assemblies, Service Broker, Indeks teks lengkap, Katalog teks lengkap, Skema terdistribusi, Fungsi terdistribusi, Prosedur tersimpan CLR, Fungsi skalar CLR, Fungsi bernilai tabel CLR, Tabel internal, Sistem, Fungsi agregat.

    Peringatan

    Ini merupakan migrasi database heterogen. Pemetaan tipe data tidak bersifat satu-ke-satu. Evaluasi secara cermat dampak pemetaan tipe data terhadap bisnis Anda. Untuk detailnya, lihat Pemetaan tipe data antar database heterogen.

  • Migrasi penuh

    DTS memigrasikan seluruh data historis objek migrasi yang ditentukan dari database sumber ke database tujuan.

  • Migrasi inkremental

    Setelah migrasi penuh selesai, DTS memigrasikan pembaruan data inkremental dari database sumber ke database tujuan. Migrasi inkremental memungkinkan migrasi data secara lancar tanpa mengganggu aplikasi yang dikelola sendiri.

Operasi SQL yang didukung untuk migrasi inkremental

Tipe operasi

Pernyataan SQL

DML

INSERT, UPDATE, DELETE

Catatan
  • Jika operasi UPDATE hanya memperbarui field besar, DTS tidak memigrasikan operasi tersebut.

  • Saat data ditulis ke instans tujuan AnalyticDB for PostgreSQL, pernyataan UPDATE secara otomatis dikonversi menjadi pernyataan REPLACE INTO. Jika kunci primer diperbarui, pernyataan tersebut dikonversi menjadi pernyataan DELETE dan INSERT.

DDL

  • CREATE TABLE

  • ALTER TABLE

    Hanya ADD COLUMN dan DROP COLUMN yang didukung.

  • DROP TABLE

  • CREATE INDEX, DROP INDEX

Catatan
  • Operasi DDL dengan tipe data kustom tidak didukung.

  • Operasi DDL transaksional tidak didukung. Misalnya, menambahkan beberapa kolom dalam satu pernyataan atau mencampur DDL dan DML dalam satu pernyataan dapat menyebabkan kehilangan data.

  • Operasi DDL Online tidak didukung.

  • Operasi DDL yang menggunakan kata kunci yang dicadangkan sebagai nama properti tidak didukung.

  • Operasi DDL yang dieksekusi oleh prosedur tersimpan sistem tidak didukung.

  • Operasi TRUNCATE TABLE tidak didukung.

  • Partisi atau definisi tabel yang berisi fungsi tidak didukung.

Izin akun database

Database

Migrasi skema

Migrasi penuh

Migrasi inkremental

Database SQL Server yang dikelola sendiri

Izin SELECT

Izin SELECT

sysadmin

Instans AnalyticDB for PostgreSQL

  • Izin LOGIN.

  • Izin SELECT, CREATE, INSERT, UPDATE, dan DELETE pada tabel tujuan.

  • Izin CONNECT dan CREATE pada database tujuan.

  • Izin CREATE pada skema tujuan.

  • Izin COPY (untuk copy batch berbasis memori).

Catatan

Anda juga dapat menggunakan akun awal AnalyticDB for PostgreSQL.

Untuk membuat dan memberikan izin akun database:

Persiapan

Catatan

Untuk melakukan migrasi inkremental, konfigurasikan pengaturan log transaksi dan buat indeks terkluster pada database SQL Server yang dikelola sendiri sebelum mengonfigurasi tugas migrasi data.

Penting

Untuk memigrasikan beberapa database, ulangi langkah 1 hingga 3 di bagian ini. Jika tidak, ketidakkonsistenan data dapat terjadi.

  1. Pada database SQL Server yang dikelola sendiri, jalankan perintah berikut untuk mengatur model pemulihan database yang akan dimigrasikan ke mode pemulihan penuh:

    use master;
    GO
    ALTER DATABASE <database_name> SET RECOVERY FULL WITH ROLLBACK IMMEDIATE;
    GO

    Parameter:

    <database_name>: Nama database yang akan dimigrasikan.

    Contoh:

    use master;
    GO
    ALTER DATABASE mytestdata SET RECOVERY FULL WITH ROLLBACK IMMEDIATE;
    GO
  2. Jalankan perintah berikut untuk melakukan backup logis database yang akan dimigrasikan. Lewati langkah ini jika backup logis telah dilakukan.

    BACKUP DATABASE <database_name> TO DISK='<physical_backup_device_name>';
    GO

    Parameter:

    • <database_name>: Nama database yang akan dimigrasikan.

    • <physical_backup_device_name>: Jalur dan nama file backup.

    Contoh:

    BACKUP DATABASE mytestdata TO DISK='D:\backup\dbdata.bak';
    GO
  3. Jalankan perintah berikut untuk mencadangkan log transaksi database yang akan dimigrasikan.

    BACKUP LOG <database_name> to DISK='<physical_backup_device_name>' WITH init;
    GO

    Parameter:

    • <database_name>: Nama database yang akan dimigrasikan.

    • <physical_backup_device_name>: Jalur dan nama file backup.

    Contoh:

    BACKUP LOG mytestdata TO DISK='D:\backup\dblog.bak' WITH init;
    GO

Prosedur

  1. Buka halaman daftar tugas migrasi untuk wilayah tujuan menggunakan salah satu metode berikut.

    Dari Konsol DTS

    1. Masuk ke Konsol Data Transmission Service (DTS).

    2. Di panel navigasi kiri, klik Data Migration.

    3. Di pojok kiri atas halaman, pilih wilayah tempat instans migrasi berada.

    Dari Konsol DMS

    Catatan

    Operasi aktual dapat berbeda tergantung pada mode dan tata letak Konsol DMS. Untuk informasi lebih lanjut, lihat Konsol mode simple dan Sesuaikan tata letak dan gaya Konsol DMS.

    1. Masuk ke Konsol Data Management (DMS).

    2. Di bilah menu atas, pilih Data + AI > Data Transmission (DTS) > Data Migration.

    3. Di sebelah kanan Data Migration Tasks, pilih wilayah tempat instans migrasi berada.

  2. Klik Create Task untuk membuka halaman konfigurasi tugas.

  3. Konfigurasikan database sumber dan tujuan.

    Peringatan

    Setelah memilih instans sumber dan tujuan, disarankan untuk membaca dengan cermat batasan yang ditampilkan di bagian atas halaman. Jika tidak, tugas dapat gagal atau menyebabkan ketidakkonsistenan data.

    Kategori

    Konfigurasi

    Deskripsi

    Tidak ada

    Task Name

    DTS secara otomatis menghasilkan nama task. Kami menyarankan Anda menentukan nama yang deskriptif agar mudah diidentifikasi. Nama tersebut tidak perlu unik.

    Source database information

    Database Type

    Pilih SQL Server.

    Connection Type

    Pilih Self-managed Database on ECS.

    Catatan

    Saat Anda memilih self-managed database, lengkapi persiapan yang sesuai. Untuk detailnya, lihat Preparations overview.

    Instance Region

    Pilih wilayah tempat database SQL Server yang dikelola sendiri berada.

    ECS instance ID

    Masukkan ID instans ECS dari database SQL Server yang dikelola sendiri Anda.

    Port

    Masukkan port layanan dari database SQL Server yang dikelola sendiri Anda. Nilai default-nya adalah 1433.

    Database Account

    Masukkan akun database untuk database SQL Server yang dikelola sendiri Anda. Untuk persyaratan izin, lihat Database account permissions.

    Database Password

    Masukkan password untuk akun database tersebut.

    Encryption

    Menentukan apakah koneksi ke database sumber akan dienkripsi atau tidak. Pilih Non-encrypted atau SSL-encrypted berdasarkan kebutuhan bisnis Anda.

    • Jika enkripsi SSL dinonaktifkan untuk database sumber, pilih Non-encrypted.

    • Jika enkripsi SSL diaktifkan untuk database sumber, pilih SSL-encrypted. Secara default, DTS mempercayai sertifikat server.

    Destination database information

    Database Type

    Pilih AnalyticDB PostgreSQL.

    Connection Type

    Pilih Cloud instance.

    Instance Region

    Pilih wilayah tempat instans AnalyticDB PostgreSQL tujuan berada.

    Instance ID

    Pilih ID instans dari instans AnalyticDB PostgreSQL tujuan Anda.

    Database name

    Masukkan nama database dalam instans AnalyticDB PostgreSQL tujuan yang berisi objek yang akan dimigrasikan.

    Database Account

    Masukkan akun database untuk instans AnalyticDB PostgreSQL tujuan Anda. Untuk persyaratan izin, lihat Database account permissions.

    Database Password

    Masukkan password untuk akun database tersebut.

  4. Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman. Di kotak dialog CIDR Blocks of DTS Servers yang muncul, klik Test Connectivity.

    Catatan

    Pastikan segmen alamat IP layanan DTS telah ditambahkan secara otomatis atau manual ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Untuk informasi lebih lanjut, lihat Tambahkan alamat IP server DTS ke daftar putih.

  5. Konfigurasikan objek tugas.

    1. Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.

      Konfigurasi

      Deskripsi

      Migration Types

      • Jika hanya perlu melakukan migrasi penuh, pilih Schema Migration dan Full Data Migration.

      • Untuk melakukan migrasi tanpa downtime, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.

      Catatan
      • Jika tidak memilih Schema Migration, pastikan database dan tabel untuk menerima data sudah ada di database tujuan. Anda juga dapat menggunakan fitur pemetaan nama objek di kotak Selected Objects sesuai kebutuhan.

      • Jika tidak memilih Incremental Data Migration, hindari menulis data baru ke instans sumber selama migrasi data untuk memastikan konsistensi data.

      Processing Mode for Existing Destination Tables

      • Precheck and Report Errors: Memeriksa apakah tabel dengan nama yang sama ada di database tujuan. Jika tidak ada tabel dengan nama yang sama, pemeriksaan awal lolos. Jika ada tabel dengan nama yang sama, kesalahan dilaporkan selama pemeriksaan awal, dan tugas migrasi data tidak dimulai.

        Catatan

        Jika tabel di database tujuan memiliki nama yang sama tetapi tidak dapat dengan mudah dihapus atau diganti namanya, Anda dapat mengubah nama tabel di database tujuan. Untuk informasi lebih lanjut, lihat Pemetaan nama objek.

      • Ignore Errors and Proceed: Melewati pemeriksaan untuk tabel dengan nama yang sama.

        Peringatan

        Memilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan risiko bisnis. Misalnya:

        • Jika skema tabel konsisten dan catatan di database tujuan memiliki nilai kunci primer yang sama dengan catatan di database sumber:

          • Selama migrasi penuh, DTS menyimpan catatan di database tujuan. Catatan dari database sumber tidak dimigrasikan.

          • Selama migrasi inkremental, DTS tidak menyimpan catatan di database tujuan. Catatan dari database sumber menimpa catatan di database tujuan.

        • Jika skema tabel tidak konsisten, hanya beberapa kolom data yang mungkin dimigrasikan, atau migrasi dapat gagal. Lakukan dengan hati-hati.

      SQL Server Incremental Synchronization Mode

      • Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (Hybrid Log-based Parsing):

        • Keuntungan:

          • Mendukung skenario yang melibatkan heap table sumber, tabel tanpa kunci primer, tabel terkompresi, atau tabel dengan kolom terhitung.

          • Memberikan stabilitas link tinggi. Mode ini dapat memperoleh pernyataan DDL lengkap dan mendukung berbagai skenario DDL.

        • Kerugian:

          • DTS membuat trigger `dts_cdc_sync_ddl`, tabel heartbeat `dts_sync_progress`, dan tabel penyimpanan DDL `dts_cdc_ddl_history` di database sumber. DTS juga mengaktifkan CDC tingkat database dan CDC untuk beberapa tabel.

          • Anda tidak dapat menjalankan pernyataan `SELECT INTO`, `TRUNCATE`, atau `RENAME COLUMN` pada tabel dengan CDC yang diaktifkan di database sumber. Anda tidak dapat menghapus trigger yang dibuat DTS di database sumber secara manual.

      • Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported):

        • Keuntungan:

          Mode ini bersifat non-intrusif terhadap database sumber.

        • Kerugian:

          Mode ini tidak mendukung skenario yang melibatkan heap table sumber, tabel tanpa kunci primer, tabel terkompresi, atau tabel dengan kolom terhitung.

      • Polling and querying CDC instances for incremental synchronization:

        • Keuntungan:

          • Mendukung migrasi penuh dan inkremental ketika database sumber adalah Amazon RDS for SQL Server, Azure SQL Database, Azure SQL Managed Instance, Azure SQL Server on Virtual Machine, atau Google Cloud SQL for SQL Server.

          • Mode ini menggunakan komponen CDC native SQL Server untuk memperoleh data inkremental, yang meningkatkan stabilitas migrasi inkremental dan mengurangi penggunaan bandwidth jaringan.

        • Kerugian:

          • Akun database sumber yang digunakan oleh instans DTS harus memiliki izin untuk mengaktifkan CDC. Migrasi data inkremental memiliki latensi sekitar 10 detik.

          • Saat memigrasikan beberapa tabel di beberapa database, Anda mungkin mengalami masalah stabilitas dan kinerja.

      Catatan

      Pengaturan ini muncul hanya ketika Migration Types mencakup Incremental Data Migration.

      The maximum number of tables for which CDC is enabled that DTS supports.

      Berdasarkan kebutuhan bisnis, disarankan untuk mengatur jumlah maksimum tabel yang diaktifkan CDC-nya yang didukung oleh tugas DTS. Nilai default: 1.000.

      Catatan

      Parameter ini tidak tersedia jika Anda mengatur parameter SQL Server Incremental Synchronization Mode ke Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported).

      Select DDL and DML to Sync at the Instance Level

      Pilih operasi SQL untuk migrasi inkremental pada tingkat instans. Operasi yang didukung tercantum di Operasi SQL yang didukung untuk migrasi inkremental.

      Catatan

      Untuk memilih operasi SQL untuk migrasi inkremental pada tingkat database atau tabel, klik kanan objek migrasi di kotak Selected Objects dan pilih operasi SQL yang diinginkan.

      Storage Engine Type

      Pilih tipe mesin penyimpanan untuk tabel tujuan sesuai kebutuhan. Nilai default adalah Beam.

      Catatan

      Item konfigurasi ini tersedia hanya ketika versi kernel instans tujuan AnalyticDB for PostgreSQL adalah v7.0.6.6 atau lebih baru dan Anda memilih Schema Migration untuk Migration Types.

      Source Objects

      Di kotak Source Objects, klik objek yang akan dimigrasikan, lalu klik Right arrow untuk memindahkannya ke kotak Selected Objects.

      Catatan

      Skenario ini merupakan migrasi antar database heterogen. Oleh karena itu, granularitas pemilihan objek migrasi adalah tabel. Objek lain seperti tampilan, trigger, dan prosedur tersimpan tidak dimigrasikan ke database tujuan.

      Selected Objects

      • Untuk mengganti nama objek yang ingin Anda migrasikan ke instans tujuan, klik kanan objek di bagian Selected Objects. Untuk informasi lebih lanjut, lihat Pemetaan kolom tabel individual.

      • Untuk mengganti nama beberapa objek sekaligus, klik Batch Edit di pojok kanan atas bagian Selected Objects. Untuk informasi lebih lanjut, lihat Pemetaan nama beberapa objek sekaligus.

      Catatan
      • Menggunakan pemetaan nama objek dapat menyebabkan objek dependen gagal dimigrasikan.

      • Untuk memfilter data menggunakan klausa WHERE, klik kanan tabel yang akan dimigrasikan di Selected objects dan atur kondisi filter di kotak dialog. Untuk petunjuknya, lihat Atur kondisi filter.

      • Untuk memilih operasi SQL pada tingkat database atau tabel, klik kanan objek migrasi di Selected objects dan pilih operasi yang diperlukan di kotak dialog.

    2. Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.

      Konfigurasi

      Deskripsi

      Dedicated Cluster for Task Scheduling

      Secara default, DTS menjadwalkan tugas pada klaster bersama. Anda tidak perlu memilih satu. Jika menginginkan tugas yang lebih stabil, Anda dapat membeli klaster khusus untuk menjalankan tugas migrasi DTS.

      Retry Time for Failed Connections

      Setelah tugas migrasi dimulai, jika koneksi ke database sumber atau tujuan gagal, DTS melaporkan kesalahan dan segera mulai mencoba menghubungkan kembali. Durasi percobaan ulang default adalah 720 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 10 hingga 1.440 menit. Disarankan untuk mengatur durasi lebih dari 30 menit. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam durasi yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas gagal.

      Catatan
      • Untuk beberapa instans DTS yang berbagi sumber atau tujuan yang sama, waktu percobaan ulang jaringan ditentukan oleh pengaturan tugas yang dibuat terakhir.

      • Karena Anda dikenai biaya untuk tugas selama periode percobaan ulang koneksi, disarankan untuk menyesuaikan waktu percobaan ulang berdasarkan kebutuhan bisnis, atau segera melepaskan instans DTS setelah instans database sumber dan tujuan dilepas.

      Retry Time for Other Issues

      Setelah tugas migrasi dimulai, jika terjadi masalah non-konektivitas, seperti pengecualian eksekusi DDL atau DML, di database sumber atau tujuan, DTS melaporkan kesalahan dan segera mulai mencoba mengulang operasi tersebut. Durasi percobaan ulang default adalah 10 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 1 hingga 1.440 menit. Disarankan untuk mengatur durasi lebih dari 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas gagal.

      Penting

      Nilai Retry Time for Other Issues harus kurang dari nilai Retry Time for Failed Connections.

      Enable Throttling for Full Data Migration

      Selama migrasi penuh, DTS mengonsumsi sumber daya baca dan tulis pada database sumber dan tujuan, yang dapat meningkatkan beban database. Jika diperlukan, Anda dapat mengaktifkan pembatasan kecepatan untuk tugas migrasi penuh. Anda dapat mengatur Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s) untuk mengurangi beban pada database tujuan.

      Catatan
      • Item konfigurasi ini tersedia hanya jika Anda memilih Full Data Migration untuk Migration Types.

      • Anda juga dapat menyesuaikan kecepatan migrasi penuh setelah instans migrasi berjalan.

      Enable Throttling for Incremental Data Migration

      Jika diperlukan, Anda juga dapat mengatur batas kecepatan untuk tugas migrasi inkremental. Anda dapat mengatur RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s) untuk mengurangi beban pada database tujuan.

      Catatan

      Environment Tag

      Pilih label lingkungan untuk mengidentifikasi instans. Tidak wajib untuk contoh ini.

      Configure ETL

      Pilih apakah akan mengaktifkan fitur ekstrak, transformasi, muat (ETL). Untuk informasi lebih lanjut, lihat Apa itu ETL? Nilai yang valid:

      Monitoring and Alerting

      Pilih apakah akan mengatur peringatan dan menerima pemberitahuan peringatan berdasarkan kebutuhan bisnis Anda.

      • No: Tidak mengatur peringatan.

      • Yes: Konfigurasikan peringatan dengan mengatur ambang batas peringatan dan pemberitahuan peringatan. Jika migrasi gagal atau latensi melebihi ambang batas, sistem mengirimkan pemberitahuan peringatan.

    3. Klik Next: Data Validation untuk mengonfigurasi tugas validasi data.

      Untuk informasi lebih lanjut tentang fitur validasi data, lihat Konfigurasikan validasi data.

    4. Opsional: Setelah menyelesaikan konfigurasi di atas, klik Next: Configure Database and Table Fields untuk mengatur Type, Primary Key Column, dan Distribution Key untuk tabel yang dimigrasikan ke AnalyticDB for PostgreSQL tujuan.

      Catatan
      • Langkah ini muncul hanya ketika Migration Types mencakup Schema Migration. Pilih Definition Status di All untuk memodifikasi pengaturan.

      • Primary Key Column dapat berupa kunci komposit yang terdiri dari beberapa kolom. Pilih satu atau beberapa kolom dari Primary Key Column sebagai Distribution Key. Untuk informasi lebih lanjut, lihat Kelola tabel data dan Definisikan distribusi tabel.

  6. Simpan tugas dan jalankan pemeriksaan awal.

    • Untuk melihat parameter konfigurasi instans ini saat Anda memanggil operasi API, arahkan pointer ke tombol Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters di gelembung yang muncul.

    • Jika tidak perlu melihat atau telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.

    Catatan
    • Sebelum tugas migrasi dimulai, DTS melakukan pemeriksaan awal. Tugas hanya dimulai setelah lolos pemeriksaan awal.

    • Jika pemeriksaan awal gagal, klik View Details di sebelah item pemeriksaan yang gagal, perbaiki masalah berdasarkan petunjuk, lalu jalankan pemeriksaan awal lagi.

    • Jika peringatan dilaporkan selama pemeriksaan awal:

      • Untuk item pemeriksaan yang tidak dapat diabaikan, klik View Details di sebelah item yang gagal, perbaiki masalah berdasarkan petunjuk, lalu jalankan pemeriksaan awal lagi.

      • Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again untuk melewati item peringatan dan menjalankan pemeriksaan awal lagi. Jika Anda memilih untuk mengabaikan peringatan, hal ini dapat menyebabkan masalah seperti ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda.

  7. Beli instans.

    1. Saat Success Rate mencapai 100%, klik Next: Purchase Instance.

    2. Di halaman Purchase, pilih spesifikasi link untuk instans migrasi data. Untuk informasi lebih lanjut, lihat tabel berikut.

      Kategori

      Parameter

      Deskripsi

      New Instance Class

      Resource Group Settings

      Pilih kelompok sumber daya tempat instans tersebut berada. Nilai default adalah kelompok sumber daya default. Untuk informasi lebih lanjut, lihat Apa itu Resource Management?

      Instance Class

      DTS menyediakan spesifikasi migrasi dengan tingkat kinerja berbeda. Spesifikasi link memengaruhi kecepatan migrasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi lebih lanjut, lihat Spesifikasi link migrasi data.

    3. Setelah konfigurasi selesai, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.

    4. Klik Buy and Start. Di kotak dialog OK yang muncul, klik OK.

      Anda dapat melihat progres tugas migrasi di halaman daftar Data Migration Tasks.

      Catatan
      • Jika tugas migrasi tidak mencakup migrasi inkremental, tugas akan berhenti secara otomatis setelah migrasi penuh selesai. Setelah tugas berhenti, Status-nya berubah menjadi Completed.

      • Jika tugas migrasi mencakup migrasi inkremental, tugas tidak berhenti secara otomatis. Tugas migrasi inkremental terus berjalan. Selama tugas migrasi inkremental berjalan, Status tugas adalah Running.