All Products
Search
Document Center

Data Transmission Service:Pengiriman data

Last Updated:Mar 29, 2026

Jika database sumber Anda tidak didukung oleh Data Transmission Service (DTS) atau batasan keamanan mencegah DTS terhubung langsung ke database tersebut, Anda dapat menggunakan SDK pengiriman data untuk mendorong data ke DTS secara manual. DTS kemudian menyinkronkan data tersebut ke instans AnalyticDB for PostgreSQL (ADB for PostgreSQL) tujuan.

Kapan menggunakan pengiriman data

Gunakan pengiriman data dalam situasi berikut:

  • Database sumber tidak didukung: Sumbernya adalah database yang tidak didukung secara native oleh DTS, seperti database yang disediakan oleh vendor Tiongkok lainnya.

  • Tipe data non-standar: Datanya berupa log atau tipe khusus lain yang memerlukan encoding kustom sebelum ingestion.

  • Akses langsung dibatasi: Database sumber tidak dapat mengekspos kredensial atau endpoint jaringannya secara langsung ke DTS karena alasan keamanan.

Jika database sumber Anda sudah didukung oleh DTS, gunakan tugas sinkronisasi data standar sebagai gantinya. Lihat daftar database yang didukung oleh DTS.

Cara kerja

Pengiriman data mengikuti penyiapan dua tahap:

  1. Buat instansi pengiriman data di konsol DTS. Ini menyediakan saluran yang menerima data dari SDK.

  2. Konfigurasikan dan mulai SDK. Setelah instans dibuat, ambil parameter koneksi dari halaman detail instans, konfigurasikan SDK, lalu mulai mendorong data.

DTS menyinkronkan data dari saluran pengiriman ke instans ADB for PostgreSQL tujuan.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Instans ADB for PostgreSQL untuk menerima data. Hanya ADB for PostgreSQL yang didukung sebagai tujuan. Lihat Buat instans

  • Database dan skema yang telah dibuat di instans tujuan. Dalam panduan ini, skemanya bernama dts_deliver_test. Lihat bagian Impor data dalam "Gunakan SQL untuk mengimpor data vektor"

  • ID AccessKey dan Rahasia AccessKey untuk akun yang memiliki instans pengiriman data. Lihat Buat Pasangan Kunci Akses

  • (Opsional) Jika Anda memilih Express Connect, VPN Gateway, or Smart Access Gateway sebagai metode akses, konfigurasikan terlebih dahulu akses DTS melalui VPN Gateway. Lihat Hubungkan pusat data ke DTS menggunakan VPN Gateway

  • Kemampuan pengembangan untuk mengimplementasikan SDK pengiriman data dalam codebase Anda

Catatan penting

  • Kemampuan encoding diperlukan untuk menggunakan SDK pengiriman data guna mengirimkan data dari sumber data ke DTS.

  • Nama skema di instans ADB for PostgreSQL tujuan harus persis sesuai dengan nama database yang Anda masukkan pada langkah Drop data object configuration dan parameter dbName di SDK. Ketidaksesuaian akan menyebabkan database tujuan gagal menerima data.

  • Setelah instans pengiriman data dibuat, jumlah shard tidak dapat diubah.

  • Mulai SDK pengiriman data segera setelah instans dibuat. Jika SDK tidak segera dimulai, data inkremental tidak dapat dikumpulkan dan instans akan gagal.

Penagihan

Lihat Ikhtisar penagihan.

Buat instansi pengiriman data

  1. Buka halaman Tugas Sinkronisasi Data.

    1. Login ke Konsol Data Management (DMS).

    2. Di bilah navigasi atas, klik Data + AI.

    3. Di panel navigasi kiri, pilih DTS (DTS) > Data Synchronization.

    Operasi dapat berbeda tergantung pada mode dan tata letak konsol DMS. Lihat Mode simple dan Sesuaikan tata letak dan gaya konsol DMS. Anda juga dapat langsung membuka halaman Tugas Sinkronisasi Data di konsol DTS baru.
  2. Pilih wilayah tempat instans sinkronisasi data berada.

    Di konsol DTS baru, pilih wilayah di bilah navigasi atas.
  3. Klik Create Task. Di wizard Create Task, konfigurasikan database sumber dan tujuan.

    BagianParameterDeskripsi
    N/ATask NameNama untuk tugas DTS. DTS menghasilkan nama secara otomatis. Tentukan nama deskriptif agar tugas mudah diidentifikasi. Nama tidak perlu unik.
    Source DatabaseSelect a DMS database instanceJangan pilih instans yang sudah ada. Konfigurasikan parameter sumber secara manual untuk tugas pengiriman data.
    Database TypePilih Data Shipping.
    Access MethodMetode akses sumber. Dalam contoh ini, Public IP Address dipilih. Jika Anda memilih Express Connect, VPN Gateway, or Smart Access Gateway, konfigurasikan juga parameter VPC dan vSwitch.
    Instance RegionWilayah tempat database sumber berada. Jika wilayah tidak tercantum, pilih wilayah terdekat secara geografis.
    Destination DatabaseSelect a DMS database instancePilih instans database yang sudah ada, atau biarkan kosong dan konfigurasikan parameter di bawah secara manual. Jika Anda memilih instans yang sudah ada, DTS akan mengisi parameter secara otomatis.
    Database TypePilih AnalyticDB for PostgreSQL.
    Access MethodPilih Alibaba Cloud Instance.
    Instance RegionWilayah tempat instans ADB for PostgreSQL tujuan berada.
    Instance IDID instans ADB for PostgreSQL tujuan.
    Database NameNama database di instans tujuan yang menerima data.
    Database AccountAkun untuk instans tujuan. Akun harus memiliki izin baca dan tulis pada database tujuan. Lihat Buat dan kelola akun database.
    Database PasswordPassword untuk akun database.
  4. Klik Test Connectivity and Proceed. DTS secara otomatis menambahkan blok CIDR servernya ke daftar putih instans database Alibaba Cloud dan ke aturan grup keamanan database yang di-host di ECS. Untuk database yang dikelola sendiri di pusat data atau yang di-host oleh penyedia pihak ketiga, tambahkan secara manual blok CIDR server DTS ke daftar putih database. Lihat Tambahkan blok CIDR server DTS.

    Peringatan

    Menambahkan blok CIDR server DTS ke daftar putih database atau aturan grup keamanan Anda menimbulkan risiko keamanan. Sebelum melanjutkan, ambil tindakan pencegahan seperti memperkuat kredensial, membatasi port yang terbuka, mengotentikasi panggilan API, dan melakukan audit daftar putih secara berkala. Atau, hubungkan database ke DTS melalui Express Connect, VPN Gateway, atau Smart Access Gateway.

  5. Konfigurasikan objek yang akan dikirim dan pengaturan lanjutan.

    ParameterDeskripsi
    Processing Mode of Conflicting TablesPrecheck and Report Errors: memeriksa apakah tujuan berisi tabel dengan nama yang sama seperti sumber. Jika nama identik ada, pemeriksaan awal gagal dan tugas tidak dapat dimulai. Untuk menyelesaikan konflik penamaan tanpa menghapus atau mengganti nama tabel tujuan, gunakan pemetaan nama objek. Lihat Map object names. Ignore Errors and Proceed: melewati pemeriksaan awal untuk nama tabel identik. Jika skema sumber dan tujuan cocok dan suatu catatan memiliki nilai kunci primer atau kunci unik yang sama, sinkronisasi penuh mempertahankan catatan tujuan yang sudah ada sedangkan sinkronisasi inkremental menimpanya. Jika skema berbeda, inisialisasi mungkin gagal atau hanya beberapa kolom yang disinkronkan. Lanjutkan dengan hati-hati.
    Capitalization of Object Names in Destination InstanceMengontrol kapitalisasi nama database, tabel, dan kolom di tujuan. Default-nya adalah DTS default policy. Lihat Specify the capitalization of object names in the destination instance.
    Drop data object configurationKonfigurasikan database dan tabel sumber yang akan dikirim: 1. Klik Add Library. Di kotak dialog New Database, masukkan nama database sumber. Nama ini harus sesuai dengan nama skema instans ADB for PostgreSQL tujuan. Dalam contoh ini, masukkan dts_deliver_test. Untuk menambahkan database lain, klik Add di sebelah entri yang sudah ada. 2. Klik OK. 3. Klik ikon image.png di sebelah database untuk memperluas daftar. 4. Klik Add Table di sebelah Table. Di kotak dialog Add Table, masukkan nama tabel. Nama tabel harus sesuai dengan parameter tableName di SDK. Dalam contoh ini, masukkan tab1, tab2, and tab3. 5. Klik OK. 6. (Opsional) Konfigurasikan pemetaan nama tabel dan kolom: klik Edit di sebelah tabel, ubah Table Name untuk pemetaan tabel, lalu hapus centang Synchronize All Tables dan ubah Column Name dan Map column name untuk pemetaan kolom. Nilai Column Name sesuai dengan name dalam metode createField di FakeSource.java. Nilai Map column name adalah nama kolom di instans tujuan. Klik image.png untuk menambahkan kolom lain. Klik OK setelah selesai.
  6. Klik Next: Advanced Settings dan konfigurasikan parameter lanjutan.

    ParameterDeskripsi
    Dedicated Cluster for Task SchedulingSecara default, DTS menjadwalkan tugas ke kluster bersama. Untuk menggunakan kluster khusus, beli secara terpisah. Lihat Apa itu klaster khusus DTS?
    Set AlertsApakah akan mengaktifkan peringatan. No: peringatan dinonaktifkan. Yes: konfigurasikan ambang batas peringatan dan pengaturan notifikasi. Lihat Configure monitoring and alerting when you create a DTS task.
    Retry Time for Failed ConnectionsBerapa lama DTS mencoba ulang setelah kegagalan koneksi, dalam menit. Nilai valid: 10–1440. Default: 720. Atur lebih dari 30 menit. Jika DTS terhubung kembali dalam jendela ini, tugas dilanjutkan. Jika tidak, tugas gagal.
    Catatan

    Jika beberapa tugas berbagi sumber atau tujuan yang sama, waktu coba ulang terpendek yang dikonfigurasi berlaku untuk semuanya. Anda dikenai biaya untuk instans selama periode coba ulang.

    Retry Time for Other IssuesBerapa lama DTS mencoba ulang setelah kegagalan operasi DDL atau DML, dalam menit. Nilai valid: 1–1440. Default: 10. Atur lebih dari 10 menit. Nilai ini harus kurang dari Retry Time for Failed Connections.
    Enable Throttling for Incremental Data SynchronizationApakah akan mengaktifkan pengendalian aliran untuk sinkronisasi inkremental. Jika diaktifkan, konfigurasikan RPS of Incremental Data Migration dan BPS of Incremental Data Migration untuk mengurangi beban pada tujuan.
    Environment TagTag untuk mengidentifikasi instans DTS. Pilih berdasarkan lingkungan Anda.
    Configure ETLApakah akan mengaktifkan ekstrak, transformasi, dan muat (ETL). Yes: masukkan pernyataan pemrosesan data di editor kode. Lihat Configure ETL in a data migration or data synchronization task. No: ETL dinonaktifkan. Lihat What is ETL?
  7. Simpan tugas dan jalankan pemeriksaan awal.

    • Untuk melihat pratinjau parameter API untuk konfigurasi ini, arahkan kursor ke Next: Save Task Settings and Precheck lalu klik Preview OpenAPI parameters.

    • Klik Next: Save Task Settings and Precheck.

    DTS menjalankan pemeriksaan awal sebelum memulai tugas. Jika pemeriksaan awal gagal, klik View Details di sebelah setiap item yang gagal, perbaiki masalahnya, lalu klik Precheck Again. Jika peringatan dipicu untuk item yang dapat diabaikan dengan aman, klik Confirm Alert Details, lalu klik Ignore di kotak dialog, klik OK, dan klik Precheck Again. Mengabaikan peringatan dapat menyebabkan inkonsistensi data.
  8. Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance.

  9. Di halaman Purchase Instance, konfigurasikan penagihan dan pengaturan instans.

    ParameterDeskripsi
    Billing MethodSubscription: bayar di muka untuk jangka waktu tetap. Lebih hemat biaya untuk penggunaan jangka panjang. Pay-as-you-go: ditagih per jam. Cocok untuk penggunaan jangka pendek. Lepaskan instans saat tidak lagi diperlukan untuk menghindari biaya yang tidak perlu.
    Number of ShardsJumlah partisi di topik tujuan. Ini tidak dapat diubah setelah instans dibuat.
    Resource Group SettingsKelompok sumber daya untuk instans. Default: default resource group. Lihat Apa itu Resource Management?
    Instance ClassSpesifikasi sinkronisasi, yang menentukan kinerja. Lihat Instance classes of data synchronization instances.
    Subscription DurationHanya tersedia untuk metode penagihan Subscription. Nilai valid: 1–9 bulan, atau 1, 2, 3, atau 5 tahun.
  10. Baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.

  11. Klik Buy and Start, lalu klik OK di kotak dialog konfirmasi.

Tugas muncul di daftar tugas. Mulai SDK pengiriman data segera setelah instans dibuat.

Konfigurasikan dan mulai SDK

Setelah membuat instans, ambil parameter koneksi dan konfigurasikan SDK.

Langkah 1: Tambahkan dependensi SDK

Buka proyek Anda di IDE (seperti IntelliJ IDEA) dan tambahkan dependensi berikut ke pom.xml:

<dependency>
  <groupId>com.aliyun.dts.deliver</groupId>
  <artifactId>dts-deliver-client</artifactId>
  <version>1.0.0</version>
</dependency>

Untuk versi terbaru, lihat halaman dts-deliver-client.

Langkah 2: Unduh kode contoh dan ambil parameter koneksi

Unduh kode contoh dari dts-deliver-test di GitHub. Gunakan DtsDeliverTest.java di folder dts-deliver-test sebagai titik awal.

Di FakeSource.java, metode read menunjukkan implementasi sumber data contoh. Bidang name di createField adalah nama kolom tabel sumber. Implementasikan encoding berdasarkan sumber data aktual Anda.

Untuk mengambil parameter koneksi, buka halaman Tugas Sinkronisasi Data, klik ID instans pengiriman data Anda, lalu navigasi ke Basic Information di panel kiri. Bagian Shipping Channel Information berisi nilai-nilai berikut.

ParameterDeskripsiTempat menemukannya
ip:portTitik akhir instans pengiriman dataDi Shipping Channel Information, klik Copy di sebelah Public Endpoint atau VPC Endpoint. Gunakan VPC Endpoint hanya jika database sumber berada di VPC yang sama dengan instans pengiriman data.
akID AccessKey akun yang memiliki instansLihat Buat Pasangan Kunci Akses dan Lihat informasi tentang Pasangan Kunci Akses Pengguna RAM.
secretRahasia AccessKeySama seperti di atas.
dts_job_idID tugas instans pengiriman data (bukan ID instans)Panggil API . Dari respons, temukan nilai Shipped Topic dan ekstrak substring antara _vpc_ dan _data_delivery_. Misalnya, jika Shipped Topic adalah cn_hangzhou_vpc_cxti86dc11z*_data_delivery_version2, maka dts_job_id adalah cxti86dc11z*.
topicTopik tujuan instans pengiriman dataDi Shipping Channel Information, klik Copy di sebelah Shipped Topic.
partitionJumlah shard di topik tujuanDi Shipping Channel Information, lihat jumlah shard.
regionWilayah tempat instans pengiriman data beradaDi Shipping Channel Information, lihat Instance Region.
dbNameNama database sumber. Harus sesuai dengan nama skema instans ADB for PostgreSQL tujuan.Dalam contoh ini: dts_deliver_test.
tableNameNama tabel sumber. Harus sesuai dengan nama tabel yang dikonfigurasi di Drop data object configuration.Dalam contoh ini: tab1, tab2, tab3.

Langkah 3: Mulai SDK dan atur offset

  1. Catat waktu saat ini, lalu mulai SDK pengiriman data.

  2. Perbarui offset saat ini dari instans pengiriman data ke waktu saat SDK dimulai. Lihat Ubah offset saat ini dari instans sinkronisasi atau migrasi data.

    Secara default, Current Offset adalah waktu saat modul Incremental Write dimulai, bukan saat SDK dimulai. Ubah ke waktu mulai SDK untuk memastikan data dikumpulkan dari titik yang benar.

Langkah 4: Verifikasi alur data

Lihat data yang disinkronkan ke database tujuan.