All Products
Search
Document Center

Data Transmission Service:Sinkronisasi SQL Server yang dikelola sendiri ke AnalyticDB for PostgreSQL

Last Updated:Aug 22, 2026

Layanan Transmisi Data (DTS) memungkinkan Anda menyinkronkan data dari database SQL Server yang dikelola sendiri ke AnalyticDB for PostgreSQL untuk analisis data secara real-time.

Prasyarat

  • Database SQL Server yang dikelola sendiri harus menggunakan versi yang didukung. Untuk informasi selengkapnya, lihat Ikhtisar solusi sinkronisasi.

  • Anda telah membuat instans tujuan AnalyticDB for PostgreSQL. Untuk petunjuknya, lihat Buat instans.

  • Instans tujuan AnalyticDB for PostgreSQL harus memiliki ruang penyimpanan lebih besar daripada database SQL Server sumber yang dikelola sendiri.

  • Kami menyarankan membagi tugas sinkronisasi menjadi beberapa tugas jika instans sumber memenuhi salah satu kondisi berikut:

    • Instans sumber memiliki lebih dari 10 database.

    • Cadangan log dilakukan lebih dari sekali per jam untuk satu database.

    • Lebih dari 100 operasi Data Definition Language (DDL) dilakukan per jam pada satu database.

    • Laju pembuatan log untuk satu database melebihi 20 MB/detik.

    • Anda harus mengaktifkan change data capture (CDC) pada lebih dari 1.000 tabel.

Batasan

Catatan
  • Selama sinkronisasi skema, DTS menyinkronkan kunci asing dari database sumber ke database tujuan.

  • Selama sinkronisasi data penuh dan sinkronisasi data inkremental, DTS sementara menonaktifkan pemeriksaan constraint dan operasi kaskade kunci asing di tingkat session. Ketidakkonsistenan data dapat terjadi jika operasi pembaruan atau penghapusan kaskade dilakukan pada database sumber saat tugas sedang berjalan.

Jenis

Deskripsi

Batasan database sumber

  • Tabel yang akan disinkronkan harus memiliki kunci primer atau constraint unik. Jika tidak, data duplikat dapat muncul di database tujuan.

  • Jika tugas sinkronisasi data menyinkronkan lebih dari 5.000 tabel di tingkat tabel dan memerlukan pengeditan objek, seperti pemetaan nama kolom, bagi tabel tersebut menjadi beberapa tugas.

  • Satu tugas sinkronisasi data mendukung maksimal 10 database. Jika melebihi batas ini, stabilitas dan kinerja dapat terganggu. Dalam kasus ini, bagi tabel menjadi beberapa tugas.

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

  • Layanan Transmisi Data (DTS) menggunakan fungsi fn_log untuk memperoleh log dari database sumber. Fungsi ini memiliki bottleneck kinerja. Jangan membersihkan log database sumber terlalu dini. Jika tidak, tugas dapat gagal.

  • Log transaksi:

    • Aktifkan log transaksi, atur model recovery ke Full, dan pastikan cadangan fisik penuh telah selesai.

    • Untuk tugas sinkronisasi data inkremental, DTS mensyaratkan log transaksi di database sumber dipertahankan minimal selama 24 jam. Untuk tugas yang mencakup sinkronisasi data penuh dan inkremental, log transaksi harus dipertahankan minimal selama 7 hari. Setelah sinkronisasi data penuh selesai, Anda dapat mengubah periode retensi menjadi 24 jam atau lebih. Jika DTS tidak dapat memperoleh log transaksi karena periode retensi lebih pendek dari yang disyaratkan, tugas dapat gagal. Dalam kasus ekstrem, hal ini dapat menyebabkan ketidakkonsistenan atau kehilangan data. Masalah yang timbul akibat periode retensi log lebih pendek dari persyaratan DTS tidak dicakup oleh service level agreement (SLA).

  • Untuk mengaktifkan Change Data Capture (CDC) pada tabel di database sumber, Anda harus memenuhi kondisi berikut. Jika tidak, pemeriksaan awal gagal.

    • Nilai field srvname di view sys.sysservers harus sama dengan nilai kembali fungsi SERVERPROPERTY.

    • Jika database sumber adalah SQL Server yang dikelola sendiri, pemilik database harus sa. Jika database sumber adalah instans ApsaraDB 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 ke versi yang lebih baru.

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

  • Jika database sumber adalah Azure SQL Database, satu instans sinkronisasi hanya dapat menyinkronkan data dari satu database.

  • Jika database sumber adalah instans ApsaraDB RDS for SQL Server, nonaktifkan fitur Transparent Data Encryption (TDE) untuk memastikan stabilitas instans sinkronisasi. Untuk informasi selengkapnya, lihat Nonaktifkan TDE.

  • Jika Anda menggunakan perintah sp_rename untuk mengubah nama objek, seperti prosedur tersimpan, di database sumber sebelum tugas sinkronisasi skema dijalankan, tugas tersebut dapat menghasilkan hasil tak terduga atau gagal.

    Catatan

    Kami menyarankan Anda menggunakan perintah ALTER untuk mengganti nama objek di database.

  • Dalam mode parsing log hibrida, Anda tidak dapat melakukan beberapa operasi penambahan atau penghapusan kolom secara berurutan dalam waktu singkat (kurang dari 10 menit). Misalnya, menjalankan pernyataan SQL berikut secara berurutan akan menyebabkan tugas gagal.

    ALTER TABLE test_table DROP COLUMN Flag;
    ALTER TABLE test_table ADD Remark nvarchar(50) not null default('');
  • Jangan menjalankan operasi DDL yang mengubah skema database atau tabel selama sinkronisasi skema atau sinkronisasi penuh. Jika tidak, tugas sinkronisasi gagal.

    Catatan

    Selama sinkronisasi penuh, DTS melakukan kueri ke database sumber. Hal ini membuat kunci metadata yang dapat memblokir operasi DDL di database sumber.

  • Jika database sumber adalah Edisi Web ApsaraDB RDS for SQL Server, Anda harus memilih Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported) untuk SQL Server Incremental Synchronization Mode saat mengonfigurasi tugas.

  • Kami menyarankan Anda tetap mengaktifkan parameter mode pemrosesan transaksi READ_COMMITTED_SNAPSHOT untuk database sumber selama tugas sinkronisasi data penuh untuk mencegah shared lock memengaruhi penulisan data. Jika tidak, masalah seperti ketidakkonsistenan data dan kegagalan instans dapat terjadi. Pengecualian yang diakibatkannya tidak dicakup oleh SLA DTS.

Batasan lainnya

  • Persyaratan untuk objek yang disinkronkan:

    • Inisialisasi skema didukung untuk objek Schema, Table, View, Function, dan Procedure.

      Peringatan

      Karena skenario ini melibatkan sinkronisasi data antar database heterogen, tipe data mungkin tidak memiliki pemetaan satu-ke-satu. Hal ini dapat menyebabkan kegagalan tugas atau kehilangan data. Evaluasi secara cermat dampak bisnis dari pemetaan tipe data. Untuk informasi selengkapnya, lihat Pemetaan tipe data untuk inisialisasi skema.

    • DTS tidak mendukung inisialisasi skema untuk objek berikut: assemblies, service broker, indeks teks penuh, katalog teks penuh, skema terdistribusi, fungsi terdistribusi, prosedur tersimpan CLR, fungsi skalar bernilai CLR, fungsi bernilai tabel CLR, tabel internal, objek sistem, dan fungsi agregat.

    • Sinkronisasi tidak didukung untuk data yang menggunakan tipe data CURSOR, ROWVERSION, SQL_VARIANT, HIERARCHYID, POLYGON, GEOMETRY, atau GEOGRAPHY, atau untuk tipe data yang ditentukan pengguna yang dibuat menggunakan perintah CREATE TYPE.

    • DTS tidak mendukung sinkronisasi tabel dengan kolom terhitung.

    • DTS tidak mendukung sinkronisasi objek berikut: INDEX, VIEW, PROCEDURE, FUNCTION, TRIGGER, FK, FULL_TEXT_INDEX, DATATYPE, DEFAULT, SYNONYM, CATALOG, PLAN_GUIDE, DEFAULT_CONSTRAINT, UK, CK, dan SEQUENCE.

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

  • Kunci unik di tabel tujuan—termasuk kolom kunci primer—harus mencakup semua kolom dalam 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 langkah Configure Objects, tabel yang disinkronkan harus memiliki indeks terkluster yang mencakup kolom kunci primer. Tabel heap, tabel tanpa kunci primer, tabel terkompresi, tabel dengan kolom terhitung, dan tabel dengan kolom sparse tidak didukung. Batasan ini tidak berlaku dalam mode parsing log hibrida.

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

    • Sinkronisasi data inkremental di DTS bergantung pada komponen CDC. Pastikan pekerjaan CDC di database sumber berjalan dengan benar. Jika tidak, tugas DTS gagal.

    • Secara default, komponen CDC menyimpan data inkremental selama 3 hari. Anda dapat menggunakan perintah exec console.sys.sp_cdc_change_job @job_type = 'cleanup', @retention= <time>; untuk menyesuaikan periode retensi sesuai kebutuhan.

      Catatan
      • <time> menentukan waktu dalam menit.

      • Jika satu tabel di database sumber rata-rata menghasilkan lebih dari 10 juta pernyataan SQL perubahan inkremental per hari, kami menyarankan Anda mengatur <time> menjadi 1440.

    • Pemeriksaan awal DTS untuk tugas sinkronisasi data inkremental mengaktifkan CDC di database dan tabel sumber. Karena keterbatasan mesin database SQL Server, proses ini dapat menyebabkan locking singkat di database sumber.

    • Dalam satu tugas sinkronisasi data, aktifkan CDC pada maksimal 1.000 tabel. Melebihi batas ini dapat menyebabkan latensi atau ketidakstabilan tugas.

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

    • Akun database sumber yang digunakan oleh instans DTS harus memiliki izin untuk mengaktifkan CDC. Akun dengan role sysadmin diperlukan untuk mengaktifkan CDC di tingkat database. Akun dengan hak istimewa tinggi diperlukan untuk mengaktifkan CDC di tingkat tabel.

      Catatan
      • Akun dengan hak istimewa tertinggi (administrator server) yang disediakan di konsol Azure SQL Database memenuhi persyaratan ini. Untuk database yang menggunakan model pembelian berbasis vCore, semua tier layanan mendukung CDC. Untuk database yang menggunakan model pembelian berbasis DTU, tier layanan harus S3 atau lebih tinggi untuk mendukung CDC.

      • Akun dengan hak istimewa tinggi untuk Amazon RDS for SQL Server memenuhi persyaratan ini dan mendukung pengaktifan CDC di tingkat database untuk prosedur tersimpan.

      • CDC tidak didukung untuk tabel dengan indeks columnstore terkluster.

      • Pemeriksaan awal DTS untuk tugas sinkronisasi data inkremental mengaktifkan CDC di database dan tabel sumber. Karena keterbatasan mesin database SQL Server, proses ini dapat menyebabkan locking singkat di database sumber.

    • DTS melakukan polling instans CDC untuk setiap tabel di database sumber untuk memperoleh data inkremental. Oleh karena itu, sinkronkan maksimal 1.000 tabel. Jika tidak, tugas dapat mengalami latensi atau ketidakstabilan.

    • Data inkremental yang disimpan oleh komponen CDC dipertahankan selama 3 hari secara default. Kami menyarankan Anda menjalankan perintah exec console.sys.sp_cdc_change_job @job_type = 'cleanup', @retention= <time>; untuk mengatur periode retensi yang sesuai.

    • Catatan
      • <time> menentukan waktu dalam menit.

      • Jika jumlah rata-rata harian pernyataan SQL perubahan inkremental untuk satu tabel di database sumber melebihi 10 juta, kami menyarankan mengatur <time> menjadi 1440.

    • Operasi DDL berturut-turut untuk menambah atau menghapus kolom (lebih dari dua operasi dalam satu menit) tidak didukung dan dapat menyebabkan tugas gagal.

    • Memodifikasi instans CDC di database sumber tidak didukung dan dapat menyebabkan kegagalan tugas atau kehilangan data.

  • Untuk memastikan pemantauan latensi yang akurat selama sinkronisasi data inkremental, DTS membuat objek tertentu di database sumber berdasarkan mode yang dipilih. Dalam mode parsing log, DTS membuat trigger dts_cdc_sync_ddl, tabel heartbeat dts_sync_progress, dan tabel riwayat DDL dts_cdc_ddl_history. Dalam mode hibrida, DTS membuat trigger dts_cdc_sync_ddl, tabel heartbeat dts_sync_progress, dan tabel riwayat DDL dts_cdc_ddl_history, serta mengaktifkan CDC di tingkat database dan untuk beberapa tabel. Laju perubahan data pada tabel dengan CDC yang diaktifkan tidak boleh melebihi 1.000 RPS.

  • Sebelum memulai tugas sinkronisasi data, evaluasi kinerja database sumber dan tujuan. Jalankan juga tugas selama jam sepi. Inisialisasi data penuh mengonsumsi sumber daya baca dan tulis di kedua database, yang dapat meningkatkan beban database.

  • Inisialisasi data penuh melakukan operasi INSERT secara konkuren, yang dapat menyebabkan fragmentasi di tabel database tujuan. Akibatnya, ruang tabel di instans tujuan mungkin lebih besar daripada di instans sumber setelah inisialisasi.

  • Selama sinkronisasi, jangan menulis data ke database tujuan dari sumber eksternal mana pun. Hal ini dapat menyebabkan ketidakkonsistenan data. Misalnya, jika Anda menggunakan DMS untuk melakukan perubahan DDL online sementara data lain sedang ditulis ke tujuan, kehilangan data dapat terjadi di database tujuan.

  • Anda dapat memilih objek di tingkat tabel dan memodifikasi pemetaan kolom. Jika Anda menggunakan pemetaan kolom untuk sinkronisasi tabel parsial atau jika skema tabel sumber dan tujuan tidak konsisten, data di kolom yang ada di sumber tetapi tidak di tujuan akan hilang.

  • Jangan membangun ulang indeks selama sinkronisasi. Hal ini dapat menyebabkan kegagalan tugas atau bahkan kehilangan data.

    Catatan

    Anda tidak dapat melakukan operasi DDL yang terkait dengan kunci primer pada tabel yang telah diaktifkan CDC-nya.

  • Jika jumlah tabel dengan CDC yang diaktifkan dalam satu tugas sinkronisasi data melebihi The maximum number of tables for which CDC is enabled that DTS supports., pemeriksaan awal gagal.

  • Jika Anda perlu menulis data lebih dari 64 KB ke satu field di tabel yang diaktifkan CDC, Anda harus menggunakan perintah exec sp_configure 'max text repl size', -1; untuk menyesuaikan konfigurasi database sumber terlebih dahulu.

    Catatan

    Secara default, ukuran maksimum satu field yang dapat diproses oleh pekerjaan CDC adalah 64 KB.

  • Jika Anda menggunakan fitur Ubah Objek yang Disinkronkan, Anda tidak dapat menghapus database dari tugas.

  • Beberapa instans sinkronisasi yang menggunakan database SQL Server yang sama sebagai sumber memiliki modul tangkapan data inkremental yang 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 di Ubah parameter instans.

  • SQL Server adalah database komersial bersumber tertutup. Karena karakteristik format log-nya yang diketahui atau tidak diketahui, masalah dapat muncul selama tangkapan dan parsing data perubahan inkremental (CDC) oleh DTS. Sebelum menggunakan DTS untuk sinkronisasi inkremental atau migrasi dari sumber SQL Server di lingkungan produksi, lakukan pengujian proof-of-concept (POC) yang komprehensif. Pengujian Anda harus mencakup semua skenario perubahan bisnis, modifikasi skema, dan pengujian stres beban puncak. Memastikan logika bisnis produksi identik dengan yang diuji dalam fase POC sangat penting untuk operasi DTS yang stabil dan efisien.

  • Selama sinkronisasi inkremental, transaksi yang sebagian di-rollback di sumber tidak didukung. Operasi rollback dapat hilang.

Kasus khusus

Saat instans sumber adalah ApsaraDB RDS for SQL Server, DTS membuat akun rdsdt_dtsacct di instans sumber untuk sinkronisasi data. Jangan menghapus akun ini atau mengubah kata sandinya selama tugas berjalan, atau tugas dapat gagal. Untuk informasi selengkapnya, lihat Deskripsi akun sistem.

Penagihan

Jenis sinkronisasi

Harga

Sinkronisasi skema dan sinkronisasi data penuh

Gratis.

Sinkronisasi data inkremental

Dikenai biaya. Untuk informasi selengkapnya, lihat Ikhtisar penagihan.

Topologi sinkronisasi

  • Sinkronisasi satu arah satu-ke-satu

  • Sinkronisasi satu arah satu-ke-banyak

  • Sinkronisasi satu arah banyak-ke-satu

Untuk pengenalan topologi ini dan pertimbangan utamanya, lihat Topologi sinkronisasi.

Operasi SQL yang didukung

Jenis

Pernyataan SQL

DML

INSERT, UPDATE, dan DELETE

Catatan
  • DTS tidak menyinkronkan pernyataan UPDATE yang hanya memperbarui field besar.

  • Sistem secara otomatis mengonversi pernyataan UPDATE menjadi pernyataan REPLACE INTO saat menulis data ke instans tujuan AnalyticDB for PostgreSQL. Jika pernyataan UPDATE memodifikasi kunci primer, sistem mengonversinya menjadi pernyataan DELETE dan INSERT.

DDL

  • CREATE TABLE

  • ALTER TABLE: hanya klausa ADD COLUMN dan DROP COLUMN yang didukung.

  • DROP TABLE

  • CREATE INDEX dan DROP INDEX

Catatan
  • Sinkronisasi operasi DDL yang berisi tipe data yang ditentukan pengguna tidak didukung.

  • Sinkronisasi operasi DDL transaksional tidak didukung.

  • Sinkronisasi operasi DDL online tidak didukung.

  • Sinkronisasi operasi DDL yang menggunakan kata kunci yang dicadangkan sebagai nama atribut tidak didukung.

  • Sinkronisasi operasi DDL yang dieksekusi oleh prosedur tersimpan sistem tidak didukung.

  • DTS tidak menyinkronkan operasi TRUNCATE TABLE.

  • Sinkronisasi DDL untuk partisi dan definisi tabel yang berisi fungsi tidak didukung.

Izin akun database

Database

Izin yang diperlukan

Referensi

SQL Server yang dikelola sendiri

sysadmin

CREATE USER dan GRANT (Transact-SQL)

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 operasi copy batch berbasis memori)

Catatan

Anda juga dapat menggunakan akun awal instans AnalyticDB for PostgreSQL.

Buat dan kelola akun database dan Kelola pengguna dan izin

Prasyarat

Sebelum mengonfigurasi tugas sinkronisasi data, Anda harus mengonfigurasi pengaturan log dan membuat indeks terkluster di database SQL Server yang dikelola sendiri.

Penting

Untuk menyinkronkan beberapa database, ulangi Langkah 1 hingga 3 untuk setiap database guna mencegah ketidakkonsistenan data.

  1. Jalankan perintah berikut di database SQL Server yang dikelola sendiri untuk mengubah model recovery database menjadi full. Anda juga dapat menggunakan SQL Server Management Studio (SSMS) untuk mengubah model recovery. Untuk informasi selengkapnya, lihat Lihat atau Ubah Model Recovery Database (SQL Server).

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

    Parameter:

    <database_name>: Nama database yang akan disinkronkan.

    Contoh:

    use master;
    GO
    ALTER DATABASE mytestdata SET RECOVERY FULL WITH ROLLBACK IMMEDIATE;
    GO
  2. Jalankan perintah berikut untuk membuat cadangan logis database sumber. Jika Anda sudah memiliki cadangan logis, lewati langkah ini.

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

    Parameter:

    • <database_name>: Nama database sumber.

    • <physical_backup_device_name>: Jalur dan nama file untuk file cadangan.

    Contoh:

    BACKUP DATABASE mytestdata TO DISK='D:\backup\dbdata.bak';
    GO
  3. Jalankan perintah berikut untuk membuat cadangan log untuk database sumber.

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

    Parameter:

    • <database_name>: Nama database sumber.

    • <physical_backup_device_name>: Jalur dan nama file untuk file cadangan.

    Contoh:

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

Prosedur

  1. Buka halaman daftar tugas sinkronisasi di wilayah tujuan. Anda dapat menggunakan salah satu dari dua metode berikut:

    Dari konsol DTS

    1. Masuk ke Konsol Layanan Transmisi Data (DTS).

    2. Di panel navigasi kiri, klik Data Synchronization.

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

    Dari konsol DMS

    Catatan

    Operasi aktual dapat berbeda tergantung pada mode dan tata letak konsol DMS. Untuk informasi selengkapnya, lihat Mode sederhana dan Sesuaikan tata letak dan gaya antarmuka DMS.

    1. Masuk ke Data Management (DMS).

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

    3. Di sebelah kanan Data Synchronization Tasks, pilih wilayah tempat instans sinkronisasi berada.

  2. Klik Create Task untuk membuka halaman konfigurasi tugas.

  3. Konfigurasikan database sumber dan tujuan.

    Kategori

    Parameter

    Deskripsi

    N/A

    Task Name

    DTS secara otomatis menghasilkan nama tugas. Kami menyarankan Anda menentukan nama deskriptif agar mudah diidentifikasi. Nama ini tidak harus unik.

    Source Database

    Database Type

    Pilih SQL Server.

    Access Method

    Pilih jenis koneksi berdasarkan penerapan database sumber Anda. Dalam contoh ini, pilih Self-managed Database on ECS.

    Catatan

    Jika Anda memilih jenis koneksi berbeda untuk database yang dikelola sendiri, Anda harus menyelesaikan persiapan yang sesuai. Untuk informasi selengkapnya, lihat Ikhtisar persiapan.

    Instance Region

    Pilih wilayah instans ECS yang menjalankan database SQL Server yang dikelola sendiri.

    ECS Instance ID

    Pilih ID instans ECS yang menjalankan database SQL Server yang dikelola sendiri.

    Port Number

    Masukkan port layanan database SQL Server yang dikelola sendiri. Nilai default adalah 1433.

    Database Account

    Masukkan akun untuk database SQL Server yang dikelola sendiri. Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.

    Database Password

    Masukkan kata sandi yang sesuai dengan akun database.

    Encryption

    Pilih Non-encrypted atau SSL-encrypted.

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

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

    Destination Database

    Database Type

    Pilih AnalyticDB for PostgreSQL.

    Connection Type

    Pilih Alibaba Cloud Instance.

    Instance Region

    Pilih wilayah instans tujuan AnalyticDB for PostgreSQL.

    Instance ID

    Pilih ID instans tujuan AnalyticDB for PostgreSQL.

    Database Name

    Masukkan nama database tujuan dalam instans AnalyticDB for PostgreSQL.

    Database Account

    Masukkan akun untuk instans tujuan AnalyticDB for PostgreSQL. Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.

    Database Password

    Masukkan kata sandi yang sesuai dengan akun database.

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

    Catatan

    Pastikan 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.

  5. Konfigurasikan objek tugas.

    1. Di 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 klaster tujuan. Ini berfungsi sebagai data dasar untuk sinkronisasi data inkremental berikutnya.

      Processing Mode of Conflicting Tables

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

        Catatan

        Jika Anda tidak dapat menghapus atau mengganti nama tabel dengan nama yang sama di database tujuan, Anda dapat memetakannya ke nama tabel yang berbeda. Untuk informasi selengkapnya, lihat Pemetaan nama tabel dan kolom.

      • Ignore Errors and Proceed: Melewati pemeriksaan nama tabel duplikat di database tujuan.

        Peringatan

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

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

          • Selama sinkronisasi penuh, DTS mempertahankan catatan di klaster tujuan. Catatan yang sesuai dari database sumber tidak disinkronkan.

          • Selama sinkronisasi inkremental, catatan dari database sumber menimpa catatan di database tujuan.

        • Jika skema tabel berbeda, sinkronisasi data awal dapat gagal. Hal ini dapat mengakibatkan hanya data kolom parsial yang disinkronkan atau kegagalan sinkronisasi total. Lanjutkan 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):

        • Kelebihan:

          • Mendukung skenario dengan tabel heap, tabel tanpa kunci primer, tabel terkompresi, dan tabel dengan kolom terhitung di database sumber.

          • Stabilitas link tinggi. Mode ini dapat memperoleh pernyataan DDL lengkap dan memberikan dukungan komprehensif untuk skenario DDL.

        • Kekurangan:

          • 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 di tingkat database dan untuk beberapa tabel.

          • Anda tidak dapat menjalankan pernyataan SELECT INTO, TRUNCATE, RENAME COLUMN, atau modifikasi tipe kolom pada tabel yang telah diaktifkan CDC di database sumber. Trigger yang dibuat oleh DTS di database sumber tidak dapat dihapus secara manual.

            Catatan

            Tabel yang berisi tipe geometry, geography, atau hierarchyid tidak mendukung pengaktifan CDC.

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

        • Kelebihan:

          Mode ini non-intrusif terhadap database sumber.

        • Kekurangan:

          Tidak mendukung skenario dengan tabel heap, tabel tanpa kunci primer, tabel terkompresi, atau tabel dengan kolom terhitung di database sumber.

      • Polling and querying CDC instances for incremental synchronization:

        • Kelebihan:

          • Mendukung sinkronisasi penuh dan inkremental saat 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 Change Data Capture (CDC) native SQL Server untuk memperoleh data inkremental. Hal ini membuat sinkronisasi inkremental lebih stabil dan mengonsumsi lebar pita jaringan lebih sedikit.

        • Kekurangan:

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

          • Dalam skenario yang melibatkan sinkronisasi beberapa database dan tabel, mungkin terdapat risiko masalah stabilitas dan kinerja.

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

      Pengaturan ini membatasi jumlah tabel tempat CDC dapat diaktifkan dalam instans sinkronisasi saat ini. Nilai default adalah 1.000.

      Catatan

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

      DDL and DML Operations to Be Synchronized

      Pilih operasi DDL atau DML yang akan disinkronkan di tingkat instans. Untuk informasi tentang operasi yang didukung, lihat Operasi SQL yang didukung.

      Catatan

      Untuk memilih operasi SQL yang akan disinkronkan untuk database atau tabel, klik kanan objek sinkronisasi di kotak Selected Objects. Di kotak dialog yang muncul, pilih operasi SQL.

      Storage Engine Type

      Pilih jenis mesin penyimpanan untuk tabel tujuan. Nilai default adalah Beam.

      Catatan

      Parameter ini hanya tersedia jika versi kernel instans tujuan AnalyticDB for PostgreSQL adalah v7.0.6.6 atau lebih baru, dan Synchronization Types dipilih untuk Schema Synchronization.

      Source Objects

      Di kotak Source Objects, klik objek yang akan disinkronkan, lalu klik 向右 untuk memindahkannya ke kotak Selected Objects.

      Catatan

      Skenario ini melibatkan sinkronisasi antar database heterogen. Oleh karena itu, Anda hanya dapat memilih tabel sebagai objek sinkronisasi. Objek lain seperti view, trigger, dan prosedur tersimpan tidak disinkronkan ke database tujuan.

      Selected Objects

      • Untuk mengganti nama satu objek sinkronisasi di instans tujuan, klik kanan objek di kotak Selected Objects. Untuk informasi selengkapnya tentang penggantian nama objek, lihat Pemetaan satu database, tabel, atau kolom.

      • Untuk mengubah nama beberapa objek sinkronisasi di instans tujuan secara batch, klik Batch Edit di pojok kanan atas kotak Selected Objects. Untuk informasi selengkapnya, lihat Pemetaan database, tabel, dan kolom secara batch.

      Catatan
      • Untuk memilih operasi SQL yang akan disinkronkan di tingkat database atau tabel, klik kanan objek di daftar Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog yang muncul.

      • Untuk menentukan kondisi WHERE untuk memfilter data, klik kanan tabel di daftar Selected Objects dan tentukan kondisi di kotak dialog yang muncul. Untuk petunjuknya, lihat Konfigurasi kondisi filter.

      • Jika Anda menggunakan pemetaan objek, objek dependen mungkin gagal disinkronkan.

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

      Parameter

      Deskripsi

      Dedicated Cluster for Task Scheduling

      Secara default, DTS menjadwalkan tugas di klaster bersama, dan Anda tidak perlu memilih klaster. Untuk kinerja yang lebih stabil, Anda dapat membeli klaster khusus untuk menjalankan tugas sinkronisasi DTS. Untuk informasi selengkapnya, lihat Apa itu klaster khusus DTS?.

      Retry Time for Failed Connections

      Setelah tugas sinkronisasi 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 juga dapat menentukan durasi percobaan ulang kustom dari 10 hingga 1.440 menit. Kami menyarankan Anda mengatur durasi minimal 30 menit. Jika DTS berhasil terhubung kembali ke database dalam durasi yang ditentukan, tugas sinkronisasi secara otomatis dilanjutkan. Jika tidak, tugas gagal.

      Catatan
      • Jika 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 mengenakan biaya untuk waktu proses tugas selama periode percobaan ulang koneksi, kami menyarankan 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-konektivitas lainnya pada database sumber atau tujuan (seperti pengecualian eksekusi DDL atau DML), DTS melaporkan kesalahan dan segera memulai operasi percobaan ulang berkelanjutan. Durasi percobaan ulang default adalah 10 menit. Anda juga dapat menyesuaikan durasi percobaan ulang dalam rentang 1 hingga 1.440 menit. Kami menyarankan Anda mengaturnya minimal 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditetapkan, tugas sinkronisasi secara otomatis dilanjutkan. Jika tidak, tugas gagal.

      Penting

      Nilai 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).

      Catatan
      • Item konfigurasi ini hanya tersedia jika Synchronization Types diatur ke Full Data Synchronization.

      • Anda juga dapat menyesuaikan laju sinkronisasi penuh setelah instans sinkronisasi berjalan.

      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).

      Enclose Object Names in Quotation Marks

      Pilih apakah akan menambahkan tanda kutip ke nama objek tujuan. Jika Anda memilih Yes dan salah satu kondisi berikut terpenuhi, DTS menambahkan tanda kutip tunggal atau ganda ke nama objek tujuan selama fase sinkronisasi skema awal dan sinkronisasi data inkremental:

      • Lingkungan bisnis database sumber peka huruf besar/kecil dan menggunakan campuran huruf besar/kecil.

      • Nama tabel sumber tidak dimulai dengan huruf dan berisi karakter selain huruf, angka, atau karakter khusus.

        Catatan

        Hanya garis bawah (_), tanda pagar (#), dan tanda dolar ($) yang didukung sebagai karakter khusus.

      • Nama skema, tabel, atau kolom yang akan disinkronkan adalah kata kunci, kata yang dicadangkan, atau karakter tidak valid di database tujuan.

      Catatan

      Jika Anda memilih untuk menambahkan tanda kutip, Anda harus menggunakan nama objek tujuan yang dikutip untuk kueri setelah tugas sinkronisasi data selesai.

      Environment Tag

      Anda dapat memilih tag lingkungan untuk mengidentifikasi instans berdasarkan kebutuhan bisnis Anda. Langkah ini tidak wajib 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:

      Monitoring and Alerting

      Tentukan apakah akan mengonfigurasi peringatan. Jika sinkronisasi gagal atau latensi melebihi ambang batas yang ditentukan, notifikasi akan dikirim ke kontak peringatan.

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

      Jika Anda ingin menggunakan fitur validasi data, lihat Konfigurasi validasi data untuk petunjuk konfigurasi.

    4. Opsi:Setelah menyelesaikan konfigurasi di atas, klik Next: Configure Database and Table Fields untuk menentukan Type, Primary Key Column, dan Distribution Key untuk tabel tujuan di instans AnalyticDB for PostgreSQL.

      Catatan
      • Langkah ini hanya tersedia jika Anda memilih Schema Synchronization untuk Synchronization Types saat mengonfigurasi objek sinkronisasi. Anda dapat mengubah pengaturan dengan mengatur Definition Status ke All.

      • Primary Key Column dapat berupa kunci komposit yang terdiri dari beberapa kolom. Anda harus memilih satu atau beberapa kolom dari Primary Key Column untuk berfungsi sebagai Distribution Key. Untuk informasi selengkapnya, lihat Kelola tabel dan Definisikan distribusi tabel.

  6. 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.

    Catatan
    • Sebelum 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.

  7. Beli instans.

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

    2. Di halaman Purchase, pilih metode penagihan dan spesifikasi link untuk instans sinkronisasi data. Tabel berikut menjelaskan parameter ini secara detail.

      Kategori

      Parameter

      Deskripsi

      New Instance Class

      Metode Penagihan

      • Langganan: Anda membayar saat membuat instans. Ini cocok untuk kebutuhan jangka panjang dan lebih hemat biaya daripada 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 berada. Default adalah kelompok sumber daya default. Untuk informasi selengkapnya, lihat Apa itu Manajemen Sumber Daya?.

      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.

      Catatan

      Opsi ini hanya tersedia jika metode penagihan adalah Subscription.

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

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

      Anda dapat melihat progres tugas di halaman Sinkronisasi Data.