Data Transmission Service (DTS) menyediakan fitur pengiriman data yang memungkinkan Anda menggunakan SDK pengiriman data untuk mengirim data dari berbagai jenis sumber data ke DTS dan kemudian menyinkronkan data ke database tujuan. Dengan cara ini, Anda dapat memanfaatkan lebih banyak jenis sumber data.
Skenario
Fitur pengiriman data dapat digunakan dalam skenario berikut:
Menyinkronkan data dari database yang tidak didukung oleh DTS, seperti database dari vendor lain di Tiongkok.
Mensinkronkan data log atau data dengan tipe khusus.
Database sumber tidak dapat terhubung langsung ke DTS karena alasan keamanan, seperti kerahasiaan akun dan kata sandi database.
Prasyarat
Sebuah instance database tujuan telah dibuat untuk menerima data. Hanya instance AnalyticDB for PostgreSQL yang didukung. Untuk informasi lebih lanjut, lihat Buat sebuah instance.
Sebuah database dan skema telah dibuat di instance AnalyticDB for PostgreSQL tujuan untuk menerima data. Dalam contoh ini, skema dts_deliver_test telah dibuat. Untuk informasi lebih lanjut, lihat bagian Impor data dari topik "Gunakan SQL untuk mengimpor data vektor".
Jika Anda menyetel parameter Access Method ke Express Connect, VPN Gateway, or Smart Access Gateway untuk database sumber, Anda harus mengizinkan DTS untuk mengakses database melalui gateway VPN. Untuk informasi lebih lanjut, lihat Hubungkan pusat data ke DTS menggunakan VPN Gateway.
Catatan Penggunaan
Kemampuan enkoding diperlukan jika Anda ingin menggunakan SDK pengiriman data untuk mengirim data dari sumber data ke DTS.
Nama skema instance AnalyticDB for PostgreSQL tujuan harus sama dengan nama database yang ditentukan dalam langkah Drop data object configuration dan nilai parameter dbName dalam SDK pengiriman data. Jika tidak, database tujuan mungkin gagal menerima data.
Setelah instance pengiriman data dibuat, jumlah shard untuk instance tersebut tidak dapat diubah.
Setelah instance pengiriman data dibuat, Anda harus segera menggunakan SDK pengiriman data untuk mengirim data. Jika tidak, data inkremental tidak dapat dikumpulkan dan instance akan gagal.
Aturan Penagihan
Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan.
Buat Instance Pengiriman Data
Pergi ke halaman Tugas Sinkronisasi Data.
Masuk ke Konsol Manajemen Data (DMS).
Di bilah navigasi atas, klik Data + AI.
Di panel navigasi sisi kiri, pilih .
CatatanOperasi mungkin bervariasi berdasarkan mode dan tata letak konsol DMS. Untuk informasi lebih lanjut, lihat Mode Sederhana dan Sesuaikan tata letak dan gaya konsol DMS.
Anda juga dapat pergi ke Halaman Tugas Sinkronisasi Data Konsol DTS Baru.
Di sebelah kanan Data Synchronization Tasks, pilih wilayah tempat instance sinkronisasi data berada.
CatatanJika Anda menggunakan konsol DTS baru, Anda harus memilih wilayah tempat instance sinkronisasi data berada di bilah navigasi atas.
Klik Create Task. Di wizard Buat Tugas, konfigurasikan database sumber dan tujuan. Tabel berikut menjelaskan parameter.
Bagian
Parameter
Deskripsi
Tidak Ada
Task Name
Nama tugas DTS. DTS secara otomatis menghasilkan nama tugas. Kami sarankan Anda menentukan nama deskriptif yang memudahkan identifikasi tugas. Anda tidak perlu menentukan nama tugas unik.
Source Database
Select DMS Database Instance
Jangan pilih instance database yang ada. Anda harus mengonfigurasi parameter database secara manual untuk tugas pengiriman data.
Database Type
Jenis database sumber. Pilih Data Shipping.
Access Method
Metode akses database sumber. Dalam contoh ini, Public IP Address dipilih.
CatatanJika Anda memilih Express Connect, VPN Gateway, or Smart Access Gateway, Anda juga harus mengonfigurasi parameter VPC dan vSwitch untuk gateway VPN yang Anda gunakan.
Instance Region
Wilayah tempat database sumber berada.
CatatanJika wilayah tempat database sumber berada tidak ditampilkan dalam daftar drop-down, pilih wilayah yang secara geografis paling dekat dengan database sumber.
Destination Database
Select DMS Database Instance
Database yang ingin Anda gunakan. Anda dapat memilih apakah akan menggunakan database yang ada berdasarkan kebutuhan bisnis Anda.
Jika Anda memilih database yang ada, DTS secara otomatis mengisi parameter untuk database tersebut.
Jika Anda tidak memilih database yang ada, Anda harus mengonfigurasi informasi database berikut.
Database Type
Jenis database tujuan. Pilih AnalyticDB for PostgreSQL.
Access Method
Metode akses database tujuan. Pilih Alibaba Cloud Instance.
Instance Region
Wilayah tempat instance AnalyticDB for PostgreSQL tujuan berada.
Instance ID
ID instance AnalyticDB for PostgreSQL tujuan.
Database Name
Nama database yang digunakan untuk menerima data di instance AnalyticDB for PostgreSQL tujuan.
Database Account
Akun database instance AnalyticDB for PostgreSQL tujuan. Akun tersebut harus memiliki izin baca dan tulis pada database tujuan. Untuk informasi lebih lanjut tentang cara membuat akun database, lihat Buat dan kelola akun database.
Database Password
Kata sandi yang digunakan untuk mengakses database.
Di bagian bawah halaman, klik Test Connectivity and Proceed.
Jika database sumber atau tujuan adalah instance database Alibaba Cloud, seperti instance ApsaraDB RDS for MySQL atau ApsaraDB for MongoDB, DTS secara otomatis menambahkan blok CIDR server DTS ke daftar putih instance tersebut. Jika database sumber atau tujuan adalah database mandiri yang di-hosting pada instance Elastic Compute Service (ECS), DTS secara otomatis menambahkan blok CIDR server DTS ke aturan grup keamanan instance ECS, dan Anda harus memastikan bahwa instance ECS dapat mengakses database. Jika database sumber atau tujuan adalah database mandiri yang ditempatkan di pusat data atau disediakan oleh penyedia layanan cloud pihak ketiga, Anda harus secara manual menambahkan blok CIDR server DTS ke daftar putih database untuk mengizinkan DTS mengakses database. Untuk informasi lebih lanjut, lihat Tambahkan blok CIDR server DTS.
PeringatanJika blok CIDR server DTS ditambahkan secara otomatis atau manual ke daftar putih database atau instance, atau ke aturan grup keamanan ECS, risiko keamanan mungkin timbul. Oleh karena itu, sebelum menggunakan DTS untuk menyinkronkan data, Anda harus memahami dan mengakui potensi risiko serta mengambil langkah-langkah pencegahan, termasuk tetapi tidak terbatas pada: meningkatkan keamanan nama pengguna dan kata sandi, membatasi port yang diekspos, mengotentikasi panggilan API, secara teratur memeriksa daftar putih atau aturan grup keamanan ECS dan melarang blok CIDR yang tidak sah, atau menghubungkan database ke DTS menggunakan Express Connect, VPN Gateway, atau Smart Access Gateway.
Konfigurasikan objek yang akan dikirim dan pengaturan lanjutan.
Parameter
Deskripsi
Processing Mode of Conflicting Tables
Precheck and Report Errors: memeriksa apakah database tujuan berisi tabel yang memiliki nama yang sama dengan tabel di database sumber. Jika database sumber dan tujuan tidak berisi tabel dengan nama tabel yang identik, pemeriksaan awal diluluskan. Jika tidak, kesalahan akan dikembalikan selama pemeriksaan awal, dan tugas sinkronisasi data tidak dapat dimulai.
CatatanJika database sumber dan tujuan berisi tabel dengan nama identik dan tabel di database tujuan tidak dapat dihapus atau diubah namanya, Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama tabel yang disinkronkan ke database tujuan. Untuk informasi lebih lanjut, lihat Peta nama objek.
Ignore Errors and Proceed: melewati pemeriksaan awal untuk nama tabel identik di database sumber dan tujuan.
PeringatanJika Anda memilih Ignore Errors and Proceed, ketidaksesuaian data mungkin terjadi dan bisnis Anda mungkin terpapar risiko potensial.
Jika database sumber dan tujuan memiliki skema yang sama dan catatan data di database tujuan memiliki nilai kunci utama atau nilai kunci unik yang sama dengan catatan data di database sumber:
Selama sinkronisasi data penuh, DTS tidak menyinkronkan catatan data ke database tujuan. Catatan data yang ada di database tujuan dipertahankan.
Selama sinkronisasi data inkremental, DTS menyinkronkan catatan data ke database tujuan. Catatan data yang ada di database tujuan ditimpa.
Jika database sumber dan tujuan memiliki skema yang berbeda, data mungkin gagal diinisialisasi. Dalam hal ini, hanya beberapa kolom yang disinkronkan, atau instance sinkronisasi data gagal. Lanjutkan dengan hati-hati.
Capitalization of Object Names in Destination Instance
Huruf besar/kecil nama database, nama tabel, dan nama kolom di instance tujuan. Secara default, DTS default policy dipilih. Anda dapat memilih opsi lain untuk memastikan bahwa huruf besar/kecil nama objek konsisten dengan yang ada di database sumber atau tujuan. Untuk informasi lebih lanjut, lihat Tentukan huruf besar/kecil nama objek di instance tujuan.
Drop data object configuration
Klik Add Library. Di kotak dialog New Database, masukkan nama database sumber.
PentingNama database sumber harus sama dengan nama skema instance AnalyticDB for PostgreSQL tujuan. Dalam contoh ini, dts_deliver_test dimasukkan.
Jika database ditampilkan dalam daftar dan Anda ingin menambahkan yang baru, klik Add di sebelah kanan database yang ada.
Klik OK.
Klik ikon
di sebelah kiri database yang Anda tambahkan untuk melihat daftar database.Klik Add Table di sebelah kanan Tabel. Di kotak dialog Add Table, masukkan nama tabel.
PentingNama tabel database sumber harus konsisten dengan parameter tableName yang ditentukan dalam SDK pengiriman data. Dalam contoh ini, tab1, tab2, and tab3 dimasukkan. Untuk informasi lebih lanjut, lihat parameter yang dijelaskan dalam bagian Gunakan SDK untuk mengirim data ke DTS dari topik ini.
Klik OK.
Opsional. Konfigurasikan pemetaan antara nama tabel dan nama kolom.
Klik Edit di sebelah kanan tabel yang Anda buat.
Konfigurasikan pemetaan nama tabel.
Ubah parameter Table Name.
Konfigurasikan pemetaan nama kolom.
Hapus centang Sync All Columns, lalu ubah parameter Column Name dan Map column name.
PentingParameter Column Name dan Map column name harus digunakan bersama dengan SDK pengiriman data. Nilai parameter Column Name adalah name dalam metode createField file FakeSource.java. Nilai parameter Map column name adalah nama kolom di instance AnalyticDB for PostgreSQL tujuan.
Klik tombol
untuk menambahkan lebih banyak kolom.
Setelah konfigurasi selesai, klik OK.
CatatanAnda dapat mengulangi langkah-langkah sebelumnya untuk menambah, mengedit, atau menghapus database atau tabel berdasarkan kebutuhan bisnis Anda.
Klik Next: Advanced Settings untuk mengonfigurasi pengaturan lanjutan. Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas ke klaster bersama. Anda tidak perlu mengonfigurasi parameter ini. Anda juga dapat membeli klaster khusus dengan spesifikasi tertentu untuk menjalankan tugas DTS. Untuk informasi lebih lanjut, lihat Apa itu klaster khusus DTS?
Set Alerts
Menentukan apakah akan mengonfigurasi peringatan untuk instance sinkronisasi data. Jika tugas gagal atau latensi sinkronisasi melebihi ambang batas yang ditentukan, kontak peringatan akan menerima notifikasi. Nilai valid:
No: tidak mengaktifkan peringatan.
Yes: mengonfigurasi peringatan. Dalam hal ini, Anda juga harus mengonfigurasi ambang batas peringatan dan pengaturan notifikasi peringatan. Untuk informasi lebih lanjut, lihat bagian "Konfigurasikan pemantauan dan peringatan saat Anda membuat tugas DTS" dari topik Konfigurasikan pemantauan dan peringatan.
Retry Time for Failed Connections
Rentang waktu ulang untuk koneksi gagal. Jika database sumber atau tujuan gagal terhubung setelah tugas sinkronisasi data dimulai, DTS segera mencoba kembali koneksi dalam rentang waktu tersebut. Nilai valid: 10 hingga 1440. Unit: menit. Nilai default: 720. Kami sarankan Anda menyetel parameter ini ke nilai lebih besar dari 30. Jika DTS berhasil menyambung kembali ke database sumber dan tujuan dalam rentang waktu yang ditentukan, DTS melanjutkan tugas sinkronisasi data. Jika tidak, tugas sinkronisasi data gagal.
CatatanJika Anda menentukan rentang waktu ulang yang berbeda untuk beberapa tugas sinkronisasi data yang memiliki database sumber atau tujuan yang sama, rentang waktu ulang terpendek yang diambil menjadi prioritas.
Saat DTS mencoba kembali koneksi, Anda akan dikenakan biaya untuk instance DTS. Kami sarankan Anda menentukan rentang waktu ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS sesegera mungkin setelah instance sumber dan tujuan dilepaskan.
Retry Time for Other Issues
Rentang waktu ulang untuk masalah lainnya. Misalnya, jika operasi DDL atau DML gagal dilakukan setelah tugas sinkronisasi data dimulai, DTS segera mencoba kembali operasi dalam rentang waktu tersebut. Nilai valid: 1 hingga 1440. Unit: menit. Nilai default: 10. Kami sarankan Anda menyetel parameter ini ke nilai lebih besar dari 10. Jika operasi gagal berhasil dilakukan dalam rentang waktu yang ditentukan, DTS melanjutkan tugas sinkronisasi data. Jika tidak, tugas sinkronisasi data gagal.
PentingNilai parameter Retry Time for Other Issues harus lebih kecil dari nilai parameter Retry Time for Failed Connections.
Enable Throttling for Incremental Data Synchronization
Menentukan apakah akan mengaktifkan pembatasan untuk sinkronisasi data inkremental. Anda dapat mengaktifkan pembatasan untuk sinkronisasi data inkremental berdasarkan kebutuhan bisnis Anda. Untuk mengonfigurasi pembatasan, Anda harus mengonfigurasi parameter RPS of Incremental Data Migration dan BPS of Incremental Data Migration. Ini mengurangi beban pada server database tujuan.
Environment Tag
Tag lingkungan yang digunakan untuk mengidentifikasi instance DTS. Anda dapat memilih tag lingkungan berdasarkan kebutuhan bisnis Anda.
Configure ETL
Menentukan apakah akan mengaktifkan fitur ekstraksi, transformasi, dan pemuatan (ETL). Untuk informasi lebih lanjut, lihat Apa itu ETL? Nilai valid:
Yes: mengonfigurasi fitur ETL. Anda dapat memasukkan pernyataan pemrosesan data di editor kode. Untuk informasi lebih lanjut, lihat Konfigurasikan ETL dalam tugas migrasi data atau sinkronisasi data.
No: tidak mengonfigurasi fitur ETL.
Simpan pengaturan tugas dan jalankan pemeriksaan awal.
Untuk melihat parameter yang harus ditentukan saat Anda memanggil operasi API terkait untuk mengonfigurasi tugas DTS, gerakkan pointer ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
Jika Anda tidak perlu melihat atau telah melihat parameter, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum memulai tugas sinkronisasi data, DTS melakukan pemeriksaan awal. Anda hanya dapat memulai tugas sinkronisasi data setelah tugas tersebut lulus pemeriksaan awal.
Jika tugas sinkronisasi data gagal dalam pemeriksaan awal, klik View Details di sebelah setiap item yang gagal. Setelah menganalisis penyebab berdasarkan hasil pemeriksaan, atasi masalah tersebut. Kemudian, jalankan kembali pemeriksaan awal.
Jika peringatan dipicu untuk suatu item selama pemeriksaan awal:
Jika item peringatan tidak dapat diabaikan, klik View Details di sebelah item yang gagal dan atasi masalah tersebut. Kemudian, jalankan kembali pemeriksaan awal.
Jika item peringatan dapat diabaikan, klik Confirm Alert Details. Di kotak dialog Lihat Detail, klik Ignore. Di pesan yang muncul, klik OK. Kemudian, klik Precheck Again untuk menjalankan kembali pemeriksaan awal. Jika Anda mengabaikan item peringatan, ketidaksesuaian data mungkin terjadi dan bisnis Anda mungkin terpapar risiko potensial.
Tunggu hingga Success Rate menjadi 100%. Kemudian, klik Next: Purchase Instance.
Di halaman Purchase Instance, konfigurasikan parameter Metode Penagihan dan Kelas Instance untuk instance sinkronisasi data. Tabel berikut menjelaskan parameter.
Kategori
Parameter
Deskripsi
New Instance Class
Metode Penagihan
Langganan: Anda membayar langganan saat membuat instance. Metode penagihan langganan lebih hemat biaya daripada metode penagihan bayar sesuai pemakaian untuk penggunaan jangka panjang.
Bayar sesuai pemakaian: Instance bayar sesuai pemakaian dibebankan per jam. Kami sarankan Anda memilih metode penagihan bayar sesuai pemakaian untuk penggunaan jangka pendek. Jika Anda tidak lagi memerlukan instance bayar sesuai pemakaian, Anda dapat melepaskan instance tersebut untuk mengurangi biaya.
Jumlah Shard
Jumlah partisi di topik tujuan.
PentingSetelah instance dibuat, Anda tidak dapat mengubah jumlah shard untuk instance tersebut. Lanjutkan dengan hati-hati.
Pengaturan Grup Sumber Daya
Grup sumber daya tempat instance tersebut termasuk. Nilai default: default resource group. Untuk informasi lebih lanjut, lihat Apa itu Resource Management?
Kelas Instance
DTS menyediakan berbagai spesifikasi sinkronisasi yang memberikan performa berbeda. Kecepatan sinkronisasi bervariasi berdasarkan spesifikasi sinkronisasi yang Anda pilih. Anda dapat memilih spesifikasi sinkronisasi berdasarkan kebutuhan bisnis Anda. Untuk informasi lebih lanjut, lihat Kelas instance instance sinkronisasi data.
Durasi Langganan
Jika Anda memilih metode penagihan langganan, tetapkan durasi langganan dan jumlah instance yang ingin Anda buat. Durasi langganan bisa satu hingga sembilan bulan, satu tahun, dua tahun, tiga tahun, atau lima tahun.
CatatanParameter ini tersedia hanya jika Anda memilih metode penagihan Subscription.
Baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start. Di kotak dialog yang muncul, klik OK.
Anda dapat melihat kemajuan tugas di daftar tugas.
Gunakan SDK untuk Mengirim Data ke DTS
Konfigurasikan SDK pengiriman data.
Buka alat pengembangan SDK, seperti IntelliJ IDEA, dan buat proyek bisnis.
Di proyek yang Anda buat, temukan file pom.xml.
Tambahkan dependensi berikut ke file pom.xml:
<dependency> <groupId>com.aliyun.dts.deliver</groupId> <artifactId>dts-deliver-client</artifactId> <version>1.0.0</version> </dependency>CatatanAnda dapat melihat versi terbaru SDK pengiriman data di halaman dts-deliver-client.
Unduh kode contoh, lalu modifikasi berdasarkan file DtsDeliverTest.java di dalam folder dts-deliver-test. Untuk informasi lebih lanjut, lihat dts-deliver-test.
CatatanDi file FakeSource.java, metode read memberikan contoh sumber data dan name di metode createField adalah nama kolom tabel sumber. Lakukan enkoding berdasarkan situasi aktual.
Di halaman Data Synchronization Tasks, klik ID instance pengiriman data yang Anda buat. Di halaman detail instance, klik Basic Information di panel sisi kiri untuk mendapatkan nilai parameter untuk SDK pengiriman data. Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
Cara mendapatkan nilai parameter
ip:port
Titik akhir instance pengiriman data.
Di bagian Shipping Channel Information, klik Copy di sebelah kanan parameter Public Endpoint atau VPC Endpoint.
PentingAnda hanya dapat menggunakan VPC Endpoint jika database sumber berada di VPC instance pengiriman data.
ak
ID AccessKey dan rahasia AccessKey akun tempat instance pengiriman data tersebut milik.
Untuk informasi lebih lanjut, lihat Buat pasangan AccessKey dan Lihat informasi tentang pasangan AccessKey pengguna RAM.
secret
dts_job_id
CatatanInformasi yang harus dimasukkan di DTS_JOB_ID.getKey().
ID tugas instance pengiriman data.
PentingJangan masukkan ID instance pengiriman data.
Anda dapat memanggil operasi DescribeDtsJobs untuk menanyakan ID tugas.
CatatanDapatkan nilai parameter Shipped Topic dan atur parameter dts_job_id ke bidang antara _vpc_ dan _data_delivery_ dari nilainya. Sebagai contoh, jika nilai parameter Shipped Topic adalah cn_hangzhou_vpc_cxti86dc11z***_data_delivery_version2, atur parameter dts_job_id menjadi cxti86dc11z***.
topic
Topik tujuan instance pengiriman data.
Di bagian Shipping Channel Information, klik Copy di sebelah kanan parameter Shipped Topic.
partition
Jumlah shard di topik tujuan.
Di bagian Shipping Channel Information, lihat jumlah shard di topik tujuan.
region
Wilayah tempat instance pengiriman data berada.
Di bagian Shipping Channel Information, lihat nilai parameter Instance Region.
dbName
Nama database sumber. Nama database sumber harus sama dengan nama skema instance AnalyticDB for PostgreSQL tujuan.
Dalam contoh ini, dts_deliver_test dimasukkan.
tableName
Nama tabel sumber. Nama tabel sumber harus sama dengan nama tabel yang Anda tentukan dalam langkah Drop data object configuration.
Dalam contoh ini, tab1, tab2, dan tab3 dimasukkan.
Setelah parameter dikonfigurasi, catat waktu saat ini dan mulai SDK pengiriman data.
Ubah offset saat ini dari instance pengiriman data. Untuk informasi lebih lanjut, lihat Ubah offset saat ini dari instance sinkronisasi atau migrasi data.
CatatanSecara default, Current Offset dari instance pengiriman data adalah titik waktu ketika modul Incremental Write mulai berjalan. Anda perlu mengubah offset saat ini ke titik waktu ketika SDK pengiriman data mulai berjalan.
Lihat data yang disinkronkan ke database tujuan.