All Products
Search
Document Center

Data Transmission Service:Migrasi data dari database Redis yang dikelola sendiri ke instans Tair (kompatibel dengan Redis OSS)

Last Updated:Mar 29, 2026

Layanan Transmisi Data (DTS) memungkinkan migrasi data dari database Redis yang dikelola sendiri ke instans Tair (kompatibel dengan Redis OSS) dengan downtime minimal. Jalankan migrasi data penuh dan migrasi data inkremental secara bersamaan agar aplikasi Anda tetap online selama proses migrasi.

Prasyarat

Sebelum memulai, pastikan hal-hal berikut:

  • Database Redis sumber yang dikelola sendiri dan instans Tair (kompatibel dengan Redis OSS) tujuan telah dibuat. Untuk membuat instans Tair, lihat Langkah 1: Buat instans Tair.

  • Instans Tair (kompatibel dengan Redis OSS) tujuan menggunakan mode koneksi langsung. DTS tidak mendukung mode koneksi lainnya.

  • Perintah PSYNC atau SYNC dapat dijalankan pada database sumber. Untuk migrasi data inkremental, akun database sumber juga harus memiliki izin PSYNC dan SYNC.

  • Ruang penyimpanan yang tersedia pada instans tujuan lebih besar daripada ukuran total data pada database sumber.

  • Untuk versi database sumber dan tujuan yang didukung, lihat Ikhtisar skenario migrasi data.

Jenis migrasi

DTS mendukung dua jenis migrasi untuk skenario ini.

Jenis migrasiApa yang dimigrasikan oleh DTSDitagih
Full Data MigrationSemua data yang ada di database sumber pada saat tugas dimulaiGratis
Incremental data migrationPerubahan data yang terjadi selama migrasi memungkinkan peralihan dengan waktu henti mendekati nol.Ya — lihat Ikhtisar penagihan

Jalankan Full Data Migration + Incremental Data Migration secara bersamaan untuk memigrasikan data yang ada dan menjaga sinkronisasi target hingga Anda siap beralih sepenuhnya.

Jika hanya menjalankan migrasi data penuh, hentikan operasi tulis ke database sumber selama migrasi untuk mencegah ketidakkonsistenan data.

Biaya lalu lintas internet berlaku ketika Access Method tujuan diatur ke Public IP Address.

Perintah yang didukung untuk migrasi data inkremental

Migrasi data inkremental mendukung perintah Redis berikut:

APPEND; BITOP, BLPOP, BRPOP, BRPOPLPUSH; DECR, DECRBY, DEL; EVAL, EVALSHA, EXEC, EXPIRE, EXPIREAT; FLUSHALL, FLUSHDB; 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, PUBLISH; 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; XADD, XCLAIM, XDEL, XAUTOCLAIM, XGROUP CREATECONSUMER, XTRIM

Catatan penggunaan

Tinjau batasan berikut sebelum memulai migrasi.

Batasan database sumber

BatasanDetail
BandwidthServer yang menghosting database sumber harus memiliki bandwidth keluar yang mencukupi. Bandwidth yang tidak mencukupi akan mengurangi kecepatan migrasi.
Operasi tulis selama migrasi penuhJangan menulis ke database sumber selama migrasi hanya penuh. Operasi tulis bersamaan menyebabkan ketidakkonsistenan data antara sumber dan tujuan.
Operasi cross-slot klusterSaat memigrasikan dari database Redis standalone ke arsitektur kluster, setiap perintah harus beroperasi pada satu slot saja. Perintah cross-slot menyebabkan error berikut dan mengganggu migrasi: CROSSSLOT Keys in request don't hash to the same slot. Lakukan operasi single-key selama migrasi.
Kedaluwarsa kunciKunci dengan kebijakan kedaluwarsa mungkin tidak langsung dihapus setelah kedaluwarsa. Akibatnya, jumlah kunci di tujuan mungkin lebih rendah daripada di sumber. Jalankan perintah INFO pada tujuan untuk memeriksa jumlah kunci. Kunci tanpa TTL atau kunci yang masih dalam masa TTL-nya konsisten antara sumber dan tujuan.
Heartbeat keyDTS menyisipkan kunci dengan awalan DTS_REDIS_TIMESTAMP_HEARTBEAT ke database sumber untuk melacak pembaruan data. Dalam mode kluster, DTS menyisipkan kunci ini ke setiap shard. Kunci tersebut difilter selama migrasi dan kedaluwarsa setelah tugas selesai.
Akurasi latensiJika database sumber bersifat read-only atau akun sumber tidak memiliki izin SETEX, latensi migrasi yang dilaporkan mungkin tidak akurat.

Batasan lainnya

BatasanDetail
Dampak performaMigrasi data penuh mengonsumsi resource pada sumber dan tujuan. Jalankan migrasi selama jam sepi untuk dataset besar atau server dengan kapasitas terbatas.
Pengusiran MemoriKebijakan penggantian default (maxmemory-policy) pada instans Tair tujuan adalah volatile-lru. Jika tujuan kehabisan memori, ketidakkonsistenan data dapat terjadi tanpa kegagalan tugas. Atur kebijakan penggantian menjadi noeviction untuk mencegah kehilangan data diam-diam — DTS akan secara eksplisit gagal menulis jika memori tidak mencukupi, bukan mengganti data diam-diam. Untuk detail kebijakan penggantian, lihat Apa kebijakan penggantian default Tair?
Skrip LuaDTS tidak dapat memastikan apakah skrip Lua yang dipanggil melalui EVAL atau EVALSHA dieksekusi di tujuan selama migrasi inkremental, karena tujuan tidak mengembalikan hasil eksekusi eksplisit untuk perintah-perintah ini.
Duplikat tipe LISTSaat DTS mentransfer data LIST menggunakan PSYNC atau SYNC, DTS tidak menghapus data yang sudah ada di instans tujuan. Hal ini dapat menyebabkan catatan duplikat di tujuan.
Pemicu rekonfigurasiAnda harus mengonfigurasi ulang tugas migrasi jika salah satu hal berikut terjadi selama migrasi: jumlah shard di kluster sumber berubah, spesifikasi database sumber berubah (misalnya skalabilitas vertikal memori), atau endpoint sumber berubah. Hapus data yang telah dimigrasikan dari tujuan sebelum mengonfigurasi ulang untuk memastikan konsistensi data.
Risiko pelanjutan tugasJika tugas yang gagal dilanjutkan secara otomatis, data dari sumber dapat menimpa data di tujuan. Hentikan atau lepaskan tugas sebelum mengalihkan beban kerja ke tujuan.
Destination OOMJika sebuah shard di kluster tujuan mencapai batas memorinya, atau ruang penyimpanan yang tersedia tidak mencukupi, tugas gagal dengan error out of memory (OOM).
TDEJika Transparent Data Encryption (TDE) diaktifkan pada database tujuan, DTS tidak dapat memigrasikan data.
Pemicu remigrasi penuhData penuh mungkin dimigrasikan ulang — berpotensi menyebabkan ketidakkonsistenan — jika unggah yang dapat dilanjutkan gagal karena error koneksi sementara, terjadi alih bencana primary/secondary atau failover, atau endpoint berubah di salah satu sisi.
TLSJika TLS (Transport Layer Security) diaktifkan pada instans Tair tujuan, hubungkan melalui SSL-encrypted (TLSv1.3 tidak didukung). Instans Tair dengan TLS yang diaktifkan tidak dapat dihubungkan ke DTS sebagai Alibaba Cloud Instance.
Restart tugasJika tugas yang berisi migrasi penuh dan inkremental direstart, DTS mungkin merestart kedua subtugas tersebut.
Pemulihan dukungan DTSJika tugas DTS gagal, dukungan teknis DTS akan mencoba memulihkannya dalam waktu 8 jam. Selama pemulihan, tugas mungkin direstart dan parameter tugas mungkin dimodifikasi. Parameter database tidak dimodifikasi.
Peringatan

Jika Anda memilih Ignore Errors and Proceed untuk kunci yang bertentangan, data sumber akan menimpa data tujuan dengan kunci yang sama. Hal ini dapat menyebabkan kehilangan data di tujuan. Lanjutkan dengan hati-hati.

Persiapan untuk migrasi data inkremental

Lewati bagian ini jika hanya menjalankan migrasi data penuh.

Hapus batas buffer output replikasi pada database sumber untuk memastikan tugas migrasi inkremental berjalan tanpa gangguan.

  1. Hubungkan ke database Redis sumber menggunakan redis-cli. Instal client Redis terlebih dahulu jika diperlukan. Lihat situs resmi komunitas Redis.

    PlaceholderDeskripsiContoh
    <host>Endpoint database sumber127.0.0.1
    <port>Port layanan database sumber6379 (default)
    <password>Password database sumberTest123456
    redis-cli -h <host> -p <port> -a <password>

    Ganti placeholder berikut:

  2. Jalankan perintah berikut untuk menghapus batas buffer output replikasi:

    config set client-output-buffer-limit 'slave 0 0 0'

Buat tugas migrasi

Langkah 1: Buka halaman Data Migration

Gunakan salah satu konsol berikut:

Konsol DTS

  1. Login ke Konsol DTS.Konsol DTS

  2. Di panel navigasi kiri, klik Data Migration.

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

Konsol DMS

Langkah-langkah aktual bervariasi tergantung pada mode dan tata letak konsol DMS. Untuk informasi lebih lanjut, lihat Simple mode dalam dokumentasi DMS, atau Sesuaikan tata letak dan gaya konsol DMS jika Anda menggunakan tata letak kustom.
  1. Login ke Konsol DMS.Konsol DMS

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

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

Langkah 2: Konfigurasikan database sumber dan tujuan

Klik Create Task, lalu konfigurasikan parameter berikut.

Nama tugas

ParameterDeskripsi
Task NameNama untuk tugas DTS. DTS menghasilkan nama secara otomatis. Gunakan nama deskriptif untuk mengidentifikasi tugas — tidak perlu unik.

Database sumber

ParameterDeskripsi
Select Existing ConnectionPilih instans database yang sudah terdaftar di DTS untuk mengisi otomatis parameter koneksi. Lihat Manage database connections. Jika instans belum terdaftar, konfigurasikan parameter secara manual.
Database TypePilih Tair/Redis.
Access MethodPilih Self-managed Database on ECS. Untuk metode akses lainnya, lihat Preparation overview.
Instance RegionWilayah tempat instans Elastic Compute Service (ECS) yang menghosting database Redis sumber berada.
Replicate Data Across Alibaba Cloud AccountsPilih No untuk migrasi dalam akun yang sama.
ECS Instance IDID instans ECS yang menghosting database Redis sumber. Untuk sumber mode kluster, pilih ID instans ECS yang menjalankan node master, dan tambahkan Blok CIDR server DTS ke aturan grup keamanan setiap instans ECS. Lihat Create a security group untuk membuatnya, Associate security groups with an instance (primary ENI) untuk mengaitkannya, dan Add the CIDR blocks of DTS servers untuk daftar blok CIDR.
Instance ModeArsitektur penerapan database Redis sumber: Standalone atau Cluster. Jika Access Method diatur ke Public IP Address, Cluster tidak didukung.
PortPort layanan database sumber. Default: 6379. Untuk sumber mode kluster, masukkan port node master.
Authentication MethodPilih berdasarkan pengaturan Anda. Account + Password Login memerlukan Redis 6.0 atau lebih baru. Untuk Secret-free login, aktifkan akses tanpa password terlebih dahulu pada database sumber.
Database PasswordPassword untuk database sumber. Biarkan kosong jika tidak ada password yang diatur. Format: <user>:<password> (contoh: admin:Rp829dlwa).
EncryptionPilih Non-encrypted atau SSL-encrypted. Jika Access Method bukan Alibaba Cloud Instance dan Anda memilih SSL-encrypted, unggah CA Certificate dan masukkan CA Key.

Database tujuan

ParameterDeskripsi
Select Existing ConnectionPilih instans DTS terdaftar untuk mengisi otomatis parameter koneksi, atau konfigurasikan secara manual.
Database TypePilih Tair/Redis.
Access MethodPilih Alibaba Cloud Instance.
Instance RegionWilayah tempat instans Tair (kompatibel dengan Redis OSS) tujuan berada.
Replicate Data Across Alibaba Cloud AccountsPilih No untuk migrasi dalam akun yang sama.
Instance IDID instans Tair (kompatibel dengan Redis OSS) tujuan.
Authentication MethodPilih berdasarkan pengaturan Anda. Account + Password Login memerlukan Redis 6.0 atau lebih baru. Untuk Secret-free login, aktifkan akses tanpa password terlebih dahulu pada instans tujuan. Lihat Enable password-free access.
Database PasswordPassword untuk instans tujuan. Format: <user>:<password> (contoh: admin:Rp829dlwa).
EncryptionPilih Non-encrypted atau SSL-encrypted.

Langkah 3: Uji konektivitas dan lanjutkan

Klik Test Connectivity and Proceed di bagian bawah halaman.

Server DTS harus dapat mengakses database sumber dan tujuan. Tambahkan Blok CIDR server DTS ke pengaturan keamanan kedua database sebelum melanjutkan — lihat Add the CIDR blocks of DTS servers untuk instruksi. Jika sumber atau tujuan menggunakan metode akses selain Alibaba Cloud Instance, klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.

Langkah 4: Konfigurasikan objek yang akan dimigrasikan

  1. Di halaman Configure Objects, atur parameter berikut.

    ParameterDeskripsi
    Migration TypesPilih Full Data Migration + Incremental Data Migration. Jika akun sumber tidak memiliki izin SYNC atau PSYNC, pilih hanya Full Data Migration.
    Processing Mode of Conflicting TablesPrecheck and Report Errors: memeriksa apakah database tujuan kosong sebelum memulai. Error dikembalikan jika tujuan tidak kosong. Ignore Errors and Proceed: melewati pemeriksaan tujuan kosong. Data sumber menimpa data tujuan dengan kunci yang sama.
    Source ObjectsPilih satu atau beberapa database dari Source Objects, lalu klik 向右小箭头 untuk menambahkannya ke Selected Objects. Anda dapat memilih database tetapi tidak kunci individual.
    Selected ObjectsUntuk memetakan database (DB 0 hingga DB 255) atau memfilter berdasarkan awalan kunci, klik kanan database di Selected Objects dan konfigurasikan opsi di kotak dialog Edit Schema. Untuk instruksi, lihat Map object names untuk mengganti nama database dan Set filter conditions untuk pemfilteran awalan. Pemetaan nama objek harus dilakukan satu per satu.
  2. Klik Next: Advanced Settings dan konfigurasikan parameter berikut.

    ParameterDeskripsi
    Dedicated Cluster for Task SchedulingSecara default, DTS menjadwalkan tugas ke kluster bersama. Untuk stabilitas lebih tinggi, beli klaster khusus. Lihat What is a DTS dedicated cluster.
    Retry Time for Failed ConnectionsDurasi DTS mencoba ulang setelah kegagalan koneksi. Nilai valid: 10–1.440 menit. Default: 720. Atur minimal 30 menit. Jika beberapa tugas berbagi sumber atau tujuan yang sama, nilai terakhir yang diatur berlaku. DTS menagih instans selama periode percobaan ulang.
    Retry Time for Other IssuesDurasi DTS mencoba ulang setelah kegagalan DDL atau DML. Nilai valid: 1–1.440 menit. Default: 10. Atur minimal 10 menit. Nilai ini harus kurang dari Retry Time for Failed Connections.
    Enable Throttling for Full Data MigrationMembatasi beban baca/tulis pada sumber dan tujuan selama migrasi penuh. Konfigurasikan Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Tersedia hanya jika Full Data Migration dipilih.
    Enable Throttling for Incremental Data MigrationMembatasi beban pada tujuan selama migrasi inkremental. Konfigurasikan RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Tersedia hanya jika Incremental Data Migration dipilih.
    Extend Expiration Time of Destination Database KeyMemperpanjang TTL kunci yang dimigrasikan sejumlah detik tertentu. Atur ini saat menggunakan perintah seperti expire key seconds, pexpire key milliseconds, expireat key timestamp, atau pexpireat key timestampMs untuk menjaga konsistensi data. Perhatikan bahwa ini dapat menunda pelepasan kunci terdistribusi.
    Use Slave NodeTersedia saat Instance Mode sumber adalah Cluster. Menentukan apakah membaca data dari node slave (replika). Default: No (membaca dari node master).
    Environment TagTag opsional untuk mengidentifikasi instans DTS.
    Configure ETLMengaktifkan fitur ekstrak, transformasi, dan muat (ETL). Pilih Yesalert notification settings untuk memasukkan pernyataan pemrosesan data. Lihat Configure ETL in a data migration or data synchronization task.
    Monitoring and AlertingPilih Yes untuk menerima notifikasi saat tugas gagal atau latensi migrasi melebihi ambang batas. Konfigurasikan ambang batas peringatan dan kontak notifikasi. Lihat Configure monitoring and alerting when you create a DTS task.
  3. Klik Next Step: Data Verification untuk mengonfigurasi verifikasi data. Untuk detailnya, lihat Configure a data verification task.

Langkah 5: Simpan pengaturan dan jalankan pemeriksaan awal

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

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

Tugas hanya dapat dimulai setelah lulus pemeriksaan awal.

  • Jika pemeriksaan awal gagal, klik View Details di samping setiap item yang gagal. Perbaiki masalahnya, lalu klik Precheck Again.

  • Jika muncul peringatan pemeriksaan awal:

    • Untuk peringatan yang tidak dapat dilewati: perbaiki masalah dan jalankan ulang pemeriksaan awal.

    • Untuk peringatan yang dapat dilewati: klik Confirm Alert Details > Ignore > OK, lalu klik Precheck Again. Melewatkan peringatan dapat menyebabkan ketidakkonsistenan data.

Langkah 6: Beli instans migrasi

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

  2. Di halaman Purchase Instance, konfigurasikan kelas instans.

    BagianParameterDeskripsi
    New Instance ClassResource GroupKelompok sumber daya untuk instans migrasi. Default: default resource group. Lihat What is Resource Management?
    Instance ClassMenentukan kecepatan migrasi. Pilih berdasarkan kebutuhan Anda. Lihat Instance classes of data migration instances.
  3. Baca dan terima Data Transmission Service (Pay-as-you-go) Service Terms, lalu klik Buy and Start > OK.

Lacak progres di halaman Data Migration.

Untuk tugas dengan migrasi penuh dan inkremental yang dipilih, halaman Data Migration menampilkan Incremental Data Migration sebagai status aktif.

Langkah selanjutnya

Setelah migrasi data inkremental selesai, hentikan atau lepaskan tugas migrasi sebelum mengalihkan aplikasi Anda ke tujuan. Hal ini mencegah sumber menimpa data yang ditulis ke tujuan setelah alih bencana.