All Products
Search
Document Center

Data Transmission Service:Sinkronisasi satu arah antar instans Tair (Redis OSS-compatible)

Last Updated:Mar 29, 2026

Layanan Transmisi Data (DTS) mendukung sinkronisasi satu arah antar instans ApsaraDB for Tair (Redis OSS-compatible). Fitur ini dapat digunakan untuk redundansi geo-aktif dan pemulihan bencana geo.

Prasyarat

Sebelum memulai, pastikan hal-hal berikut:

  • Instans ApsaraDB for Tair (Redis OSS-compatible) tujuan telah dibuat. Untuk informasi lebih lanjut, lihat Langkah 1: Buat instans.

  • Ruang penyimpanan yang tersedia pada instans tujuan lebih besar daripada ruang penyimpanan yang digunakan pada instans sumber.

  • Versi database tujuan sama dengan atau lebih baru daripada versi database sumber. Versi tujuan yang lebih lama dapat menyebabkan masalah kompatibilitas.

  • Akun database sumber memiliki izin baca, sedangkan akun database tujuan memiliki izin baca dan tulis. Untuk informasi selengkapnya, lihat Buat dan kelola akun database.

  • Enkripsi Data Transparan (TDE) not diaktifkan pada instans sumber atau tujuan. Instans yang telah diaktifkan TDE tidak dapat digunakan dengan DTS.

  • Jika sumber adalah instans ApsaraDB for Tair (Edisi Perusahaan) dengan media penyimpanan Persistent Memory, parameter appendonly diatur ke yes. Untuk informasi lebih lanjut, lihat Nonaktifkan Persistensi AOF.

  • Jalankan config set repl-timeout 600 pada instans sumber untuk mengatur timeout replikasi master-replika menjadi 600 detik. Jika instans sumber menyimpan data dalam jumlah besar, tingkatkan nilai ini sesuai kebutuhan.

  • Tingkatkan nilai repl-backlog-size dalam redis.conf pada instans sumber untuk meningkatkan stabilitas sinkronisasi.

Penagihan

Jenis sinkronisasiBiaya
Sinkronisasi data penuhGratis
Sinkronisasi data inkrementalDikenai biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan.

Topologi sinkronisasi yang didukung

  • Sinkronisasi satu arah satu-ke-satu

  • Sinkronisasi satu arah satu-ke-banyak

  • Sinkronisasi kaskade satu arah

Untuk detailnya, lihat Topologi sinkronisasi.

Perintah yang dapat disinkronkan

Perintah berikut dapat disinkronkan:

APPEND; BITOP, BLPOP, BRPOP, BRPOPLPUSH; DECR, DECRBY, DEL; EVAL, EVALSHA, EXEC, EXPIRE, EXPIREAT; GEOADD, GETSET; HDEL, HINCRBY, HINCRBYFLOAT, HMSET, HSET, HSETNX; INCR, INCRBY, INCRBYFLOAT; LINSERT, LPOP, LPUSH, LPUSHX, LREM, LSET, LTRIM; MOVE, MSET, MSETNX, MULTI; PERSIST, PEXPIRE, PEXPIREAT, PFADD, PFMERGE, PSETEX; RENAME, RENAMENX, RESTORE, RPOP, RPOPLPUSH, RPUSH, RPUSHX; SADD, SDIFFSTORE, SELECT, SET, SETBIT, SETEX, SETNX, SETRANGE, SINTERSTORE, SMOVE, SPOP, SREM, SUNIONSTORE; ZADD, ZINCRBY, ZINTERSTORE, ZREM, ZREMRANGEBYLEX, ZUNIONSTORE, ZREMRANGEBYRANK, ZREMRANGEBYSCORE; SWAPDB, UNLINK (hanya untuk versi mesin sumber 4.0); XADD, XCLAIM, XDEL, XAUTOCLAIM, XGROUP CREATECONSUMER, XTRIM.

Perintah berikut tidak dapat disinkronkan:

  • PUBLISH: tidak didukung.

  • EVAL/EVALSHA (skrip Lua): DTS tidak dapat memastikan apakah skrip Lua dieksekusi pada tujuan selama sinkronisasi inkremental karena tujuan tidak mengembalikan hasil eksplisit.

  • SYNC/PSYNC untuk data LIST: DTS tidak menghapus data yang sudah ada sebelum melakukan sinkronisasi, sehingga tujuan mungkin berisi catatan duplikat.

Catatan penggunaan

Sebelum mengonfigurasi tugas

KategoriCatatan
Batasan database sumberDTS menyisipkan kunci dengan awalan DTS_REDIS_TIMESTAMP_HEARTBEAT ke database sumber untuk melacak timestamp pembaruan. Pada arsitektur kluster, DTS menyisipkan kunci ini ke setiap shard. Kunci ini difilter selama sinkronisasi dan kedaluwarsa saat tugas berakhir.
Batasan database sumberJika database sumber bersifat read-only atau akun DTS tidak memiliki izin WRITE (SETEX), latensi sinkronisasi yang dilaporkan mungkin tidak akurat.
Batasan database sumberJangan menjalankan perintah FLUSHDB atau FLUSHALL pada database sumber. Perintah ini menyebabkan ketidakkonsistenan data antara sumber dan tujuan.
Batasan database sumberJika kebijakan kedaluwarsa diatur pada kunci sumber tertentu, kunci tersebut mungkin tidak segera dihapus setelah kedaluwarsa. Akibatnya, tujuan mungkin berisi lebih sedikit kunci daripada sumber. Jalankan perintah info untuk memeriksa jumlah kunci pada tujuan.
Batasan database sumberJika sumber adalah instans Redis standalone yang dikelola sendiri yang disinkronkan ke kluster Redis: setiap perintah hanya dapat beroperasi pada satu slot. Melakukan operasi pada kunci yang termasuk dalam slot berbeda menyebabkan error berikut dan menghentikan sinkronisasi: CROSSSLOT Keys in request don't hash to the same slot. Lakukan operasi hanya pada satu kunci dalam satu waktu selama sinkronisasi.
Batasan database tujuanSelama sinkronisasi data penuh, DTS menggunakan resource baca dan tulis dari kedua instans, yang dapat meningkatkan beban server. Sinkronkan data selama jam sepi.
Batasan database tujuanHanya gunakan DTS untuk menulis data ke tujuan selama sinkronisasi. Menulis dari sumber lain menyebabkan ketidakkonsistenan data.
Batasan database tujuanJika tujuan diterapkan dalam arsitektur kluster dan sebuah shard mencapai batas memorinya atau instans kehabisan storage, tugas gagal karena out of memory (OOM).
Batasan database tujuanKebijakan default maxmemory-policy untuk instans Tair (Redis OSS-Compatible) adalah volatile-lru. Jika tujuan memiliki memori yang tidak mencukupi, penggantian data (eviction) dapat menyebabkan ketidakkonsistenan antar instans tanpa menghentikan tugas. Untuk mencegah kehilangan data, atur maxmemory-policy menjadi noeviction pada tujuan — tugas akan gagal jika memori habis, tetapi tidak ada data yang hilang secara diam-diam. Untuk informasi lebih lanjut, lihat Apa kebijakan penggantian default Tair?
TLS/SSLJika instans ApsaraDB for Tair (Redis OSS-Compatible) mengaktifkan TLS, hubungkan ke DTS menggunakan SSL-encrypted. TLSv1.3 tidak didukung. Instans yang mengaktifkan TLS tidak dapat terhubung ke DTS sebagai Alibaba Cloud Instance.
Kompatibilitas versiVersi database tujuan harus sama dengan atau lebih baru daripada versi sumber.

Selama dan setelah sinkronisasi

KategoriCatatan
Perlu dikonfigurasi ulangJika jumlah shard pada instans sumber berubah, atau Anda melakukan scaling spesifikasi database (seperti kapasitas memori), konfigurasi ulang tugas sinkronisasi. Hapus data yang sebelumnya telah disinkronkan dari tujuan sebelum mengonfigurasi ulang untuk memastikan konsistensi.
Perlu dikonfigurasi ulangJika alamat koneksi database Redis yang dikelola sendiri (sumber atau tujuan) berubah selama sinkronisasi, konfigurasi ulang tugas tersebut.
Pemicu resinkronisasi penuhSituasi berikut dapat menyebabkan DTS melakukan resinkronisasi semua data ke tujuan, sehingga menyebabkan ketidakkonsistenan data sementara: kegagalan koneksi sementara di mana breakpoint resume gagal; pergantian master-slave atau failover pada sumber atau tujuan; perubahan alamat koneksi; atau modifikasi objek sinkronisasi.
Menjalankan ulang tugasMenjalankan ulang instans sinkronisasi yang mencakup tugas penuh dan inkremental menyebabkan DTS menjalankan ulang kedua fase tersebut.
Pemulihan tugas DTSJika tugas DTS gagal, dukungan teknis DTS akan berusaha memulihkannya dalam waktu 8 jam. Selama proses ini, tugas mungkin dijalankan ulang dan parameter tugas (bukan parameter database) mungkin dimodifikasi. Parameter yang mungkin dimodifikasi tercantum dalam Modifikasi parameter instans.

Konfigurasi tugas sinkronisasi satu arah

Langkah 1: Buka halaman Sinkronisasi Data

Gunakan salah satu metode berikut untuk membuka halaman Sinkronisasi Data.

Konsol DTS

  1. Masuk ke Konsol DTS.

  2. Di panel navigasi kiri, klik Data Synchronization.

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

Konsol DMS

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

  2. Di bilah navigasi atas, arahkan pointer ke Data + AI, lalu pilih DTS (DTS) > Data Synchronization.

  3. Dari daftar drop-down di samping Data Synchronization Tasks, pilih wilayah tempat instans sinkronisasi berada.

Langkah 2: Buat tugas

Klik Create Task untuk membuka halaman konfigurasi tugas.

Langkah 3: Konfigurasi database sumber dan tujuan

BagianParameterDeskripsi
N/ATask NameNama tugas. DTS menghasilkan nama secara otomatis. Tentukan nama deskriptif agar mudah diidentifikasi. Nama tidak perlu unik.
Source DatabaseSelect Existing ConnectionJika instans sudah terdaftar di DTS, pilih dari daftar drop-down — DTS akan mengisi otomatis parameter lainnya. Lihat Kelola koneksi database. Di Konsol DMS, gunakan daftar drop-down Select a DMS database instance. Jika instans belum terdaftar, konfigurasi parameter di bawah secara manual.
Source DatabaseDatabase TypePilih Tair/Redis.
Source DatabaseAccess MethodPilih Alibaba Cloud Instance.
Source DatabaseInstance RegionPilih wilayah instans ApsaraDB for Tair (Redis OSS-Compatible) sumber.
Source DatabaseReplicate Data Across Alibaba Cloud AccountsPilih No (contoh ini menggunakan instans dalam akun yang sama).
Source DatabaseInstance IDPilih ID instans sumber.
Source DatabaseAuthentication MethodPilih Password Login untuk contoh ini.
Catatan

Account + Password Login memerlukan Redis versi 6.0 atau lebih baru. Untuk Secret-free login, aktifkan akses tanpa password pada instans terlebih dahulu — lihat Aktifkan akses tanpa password.

Source DatabaseDatabase PasswordMasukkan password untuk instans sumber. Formatnya adalah <user>:<password> — contohnya, admin:Rp829dlwa. Untuk izin akun, lihat bagian Prasyarat.
Source DatabaseEncryptionPilih Non-encrypted atau SSL-encrypted. Jika Access Method bukan Alibaba Cloud Instance dan Anda memilih SSL-encrypted, unggah CA Certificate dan masukkan CA Key.
Destination DatabaseSelect Existing ConnectionSama seperti database sumber.
Destination DatabaseDatabase TypePilih Tair/Redis.
Destination DatabaseAccess MethodPilih Alibaba Cloud Instance.
Destination DatabaseInstance RegionPilih wilayah instans ApsaraDB for Tair (Redis OSS-Compatible) tujuan.
Destination DatabaseReplicate Data Across Alibaba Cloud AccountsPilih No (contoh ini menggunakan instans dalam akun yang sama).
Destination DatabaseInstance IDPilih ID instans tujuan.
Destination DatabaseAuthentication MethodPilih Password Login untuk contoh ini. Catatan yang sama berlaku seperti untuk sumber.
Destination DatabaseDatabase PasswordMasukkan password untuk instans tujuan. Formatnya adalah <user>:<password>.
Destination DatabaseEncryptionPilih Non-encrypted atau SSL-encrypted.

Klik Test Connectivity and Proceed di bagian bawah halaman.

Pastikan blok CIDR server DTS telah ditambahkan ke pengaturan keamanan kedua instans untuk mengizinkan akses DTS. Untuk informasi lebih lanjut, lihat Tambahkan blok CIDR server DTS.
Jika sumber atau tujuan adalah database yang dikelola sendiri dan tidak diakses melalui Alibaba Cloud Instance, klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.

Langkah 4: Konfigurasi objek sinkronisasi

  1. Pada langkah Configure Objects, atur parameter berikut:

    ParameterDeskripsi
    Synchronization TypesPilih Incremental Data Synchronization, atau Full Data Synchronization + Incremental Data Synchronization.
    Catatan

    Jika Anda memilih Incremental Data Synchronization, Anda juga harus memilih Full Data Synchronization.

    Synchronization TopologyPilih One-way Synchronization.
    Catatan

    Parameter ini hanya tersedia jika baik sumber maupun tujuan adalah instans Tair (Edisi Perusahaan).

    Processing Mode of Conflicting TablesPrecheck and Report Errors: DTS memeriksa apakah data sudah ada di tujuan. Jika data sudah ada, pemeriksaan awal gagal dan tugas tidak dapat dimulai. Ignore Errors and Proceed: Melewati pemeriksaan keberadaan data.
    Peringatan

    Hal ini dapat menyebabkan kehilangan data — catatan sumber akan menimpa catatan tujuan yang memiliki kunci yang sama.

    Source ObjectsPilih database yang akan disinkronkan dan klik ikon panah untuk menambahkannya ke Selected Objects. Anda hanya dapat memilih database, bukan kunci individual. Untuk menyaring kunci tertentu, gunakan fitur data filtering di Selected Objects.
    Selected ObjectsUntuk memetakan data ke database tertentu (DB 0–DB 255) atau menyaring berdasarkan awalan kunci, klik kanan database di Selected Objects dan konfigurasikan pengaturan di dialog Edit Schema. Lihat Map object names dan Tentukan kondisi filter.
  2. Klik Next: Advanced Settings dan konfigurasikan hal berikut:

    ParameterDeskripsi
    Dedicated Cluster for Task SchedulingSecara default, DTS menggunakan klaster bersama. Beli klaster khusus untuk stabilitas tugas yang lebih tinggi. Lihat Apa itu klaster khusus DTS.
    Retry Time for Failed ConnectionsDurasi DTS mencoba ulang jika sumber atau tujuan tidak tersedia. Nilai valid: 10–1440 menit. Default: 720 menit. Atur nilai ini lebih dari 30 menit. Jika DTS terhubung kembali dalam periode ini, tugas dilanjutkan; jika tidak, tugas gagal.
    Catatan

    Jika beberapa tugas menggunakan database sumber atau tujuan yang sama, waktu retry terpendek yang berlaku. Biaya tetap berjalan selama DTS mencoba ulang.

    Retry Time for Other IssuesDurasi DTS mencoba ulang jika operasi DDL atau DML gagal. Nilai valid: 1–1440 menit. Default: 10 menit. Atur nilai ini lebih dari 10 menit. Nilai ini harus lebih kecil daripada Retry Time for Failed Connections.
    Enable Throttling for Full Data SynchronizationBatasi penggunaan resource DTS pada sumber dan tujuan selama sinkronisasi penuh dengan mengatur Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Opsi ini hanya tersedia jika Full Data Synchronization dipilih.
    Enable Throttling for Incremental Data SynchronizationBatasi penggunaan resource DTS selama sinkronisasi inkremental dengan mengatur RPS of Incremental Data Synchronization dan Data synchronization speed for incremental synchronization (MB/s).
    Environment TagTag opsional untuk mengidentifikasi instans DTS.
    Extend Expiration Time of Destination Database KeyMemperpanjang periode validitas kunci yang disinkronkan ke tujuan. Aktifkan opsi ini jika alur kerja Anda menggunakan perintah berikut untuk memastikan konsistensi: EXPIRE key seconds, PEXPIRE key milliseconds, EXPIREAT key timestamp, PEXPIREAT key timestampMs.
    Catatan

    Dalam skenario kunci terdistribusi, perpanjangan masa kedaluwarsa dapat menunda pelepasan kunci.

    Configure ETLPilih Yes untuk mengonfigurasi fitur ekstrak, transformasi, dan muat (ETL), lalu masukkan pernyataan pemrosesan di editor kode. Pilih No untuk melewati. Lihat Apa itu ETL? dan Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data.
    Monitoring and AlertingPilih Yes untuk mengonfigurasi peringatan jika tugas gagal atau latensi melebihi ambang batas, lalu atur ambang batas peringatan dan kontak notifikasi. Pilih No untuk melewati. Lihat Konfigurasi pemantauan dan peringatan saat membuat tugas DTS.
  3. Klik Next Step: Data Verification untuk mengonfigurasi verifikasi data. Untuk informasi lebih lanjut, lihat Konfigurasi tugas verifikasi data.

Langkah 5: Jalankan pemeriksaan awal

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

  • Klik Next: Save Task Settings and Precheck untuk menyimpan konfigurasi dan memulai pemeriksaan awal.

Tugas hanya dapat dimulai setelah pemeriksaan awal berhasil.
Jika pemeriksaan awal gagal, klik View Details di samping setiap item yang gagal, atasi masalahnya, lalu jalankan ulang pemeriksaan awal.
Jika peringatan dipicu: untuk item yang tidak dapat diabaikan, atasi masalah dan jalankan ulang pemeriksaan awal. Untuk item yang dapat diabaikan, klik Confirm Alert Details, lalu klik Ignore > OK > Precheck Again. Mengabaikan peringatan dapat menyebabkan ketidakkonsistenan data.

Langkah 6: Beli dan mulai instans

  1. Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance.

  2. Di halaman pembelian, konfigurasi parameter berikut:

    BagianParameterDeskripsi
    New Instance ClassBilling 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. Rilis instans saat tidak lagi digunakan untuk menghindari biaya berkelanjutan.
    Resource Group SettingsKelompok sumber daya untuk instans ini. Default: default resource group. Lihat Apa itu Resource Management?
    Instance ClassDTS menyediakan beberapa kelas instans yang berbeda dalam kecepatan sinkronisasi. Pilih berdasarkan kebutuhan throughput Anda. Lihat Kelas instans untuk instansi sinkronisasi data.
    Subscription DurationHanya untuk penagihan subscription: pilih 1–9 bulan, atau 1, 2, 3, atau 5 tahun.
  3. Baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.

  4. Klik Purchase And Start, lalu klik OK di dialog konfirmasi.

Tugas muncul di halaman Sinkronisasi Data. Anda dapat memantau perkembangannya di sana.

Jika tugas mencakup sinkronisasi penuh dan inkremental (Synchronization Types mencakup Full Data Synchronization dan Incremental Data Synchronization), tugas tersebut akan ditampilkan sebagai Incremental Data Synchronization di daftar tugas setelah fase penuh selesai.

Langkah selanjutnya

Setelah tugas sinkronisasi berjalan, verifikasi bahwa data mengalir dengan benar:

  • Periksa status tugas di halaman Sinkronisasi Data — tugas yang sehat menunjukkan status Synchronizing.

  • Pantau latensi sinkronisasi di detail tugas. Latensi yang tinggi atau terus meningkat mungkin menunjukkan bahwa database sumber menghasilkan perubahan lebih cepat daripada yang dapat diterapkan oleh DTS, atau adanya masalah jaringan yang memperlambat replikasi.

  • Jika Anda mengonfigurasi Monitoring and Alerting, pastikan peringatan telah diatur untuk kegagalan tugas dan ambang batas latensi.

  • Jika tugas gagal, periksa detail error dan rujuk ke bagian Catatan penggunaan untuk penyebab umum. Dukungan teknis DTS juga akan berusaha memulihkan tugas yang gagal dalam waktu 8 jam.