Tous les produits
Search
Centre de documentation

Data Transmission Service:Migrate data between Tair (Redis OSS-compatible) instances

Dernière mise à jour :Sep 22, 2026

Utilisez Data Transmission Service (DTS) pour migrer des données entre des instances Tair (compatibles avec Redis OSS) avec un temps d'arrêt minimal. DTS prend en charge la migration complète des données et la migration incrémentielle des données, ce qui vous permet de maintenir votre instance source en cours d'exécution pendant la migration.

Prérequis

Avant de commencer, assurez-vous que vous disposez des éléments suivants :

  • Une instance source et une instance de destination Tair (compatible avec Redis OSS). Pour créer des instances, consultez Étape 1 : Créer une instance

  • Un espace de stockage libre suffisant sur l'instance de destination ; il doit être supérieur à l'espace de stockage utilisé par l'instance source

  • Un compte d'instance source disposant d'autorisations de lecture ; un compte d'instance de destination disposant d'autorisations de lecture et d'écriture

Pour connaître les versions de base de données prises en charge, consultez Présentation des solutions de migration .

Choisir un type de migration

Sélectionnez le type de migration en fonction de votre tolérance aux temps d'arrêt :

Type de migration

Fonctionnement

Cas d'utilisation

Full data migration

Copie toutes les données existantes de la source vers la destination. Gratuit. Lorsque la méthode d'accès de la destination Access Method est définie sur Public IP Address, des frais de trafic Internet s'appliquent — consultez Présentation de la facturation.

Vous pouvez tolérer une fenêtre de maintenance et arrêterez les écritures sur la source pendant la migration.

Full + incremental data migration

Copie les données existantes, puis réplique continuellement les écritures jusqu'au basculement. La phase incrémentielle est facturée — consultez Présentation de la facturation.

Vous avez besoin d'un temps d'arrêt nul ou quasi nul. Recommandé pour les charges de travail de production.

Important

Si vous sélectionnez uniquement la migration complète des données, arrêtez toutes les écritures sur l'instance source pendant la migration. Les écritures sur la source après la prise du snapshot ne sont pas reflétées dans la destination, ce qui entraîne une incohérence des données.

Limites

Examinez ces limites avant de démarrer votre tâche de migration.

Limites de l'instance source :

  • La version de l'instance source ne peut pas être la 2,8.

  • Le serveur hébergeant l'instance source doit disposer d'une bande passante sortante suffisante. Une bande passante insuffisante réduit la vitesse de migration.

  • DTS écrit une clé de heartbeat préfixée par DTS_REDIS_TIMESTAMP_HEARTBEAT dans l'instance source (une par shard dans les déploiements en cluster). La clé est filtrée pendant la migration et expire une fois la tâche terminée.

  • Si la source est une instance Tair (Enterprise Edition) avec Storage Medium: Persistent Memory, définissez le paramètre appendonly sur yes avant la migration. Consultez Désactiver la persistance AOF.

  • Si la source est en lecture seule, ou si le compte ne dispose pas de l'autorisation SETEX , la latence de migration signalée peut être inexacte.

  • Architecture en cluster : chaque commande Redis opère sur un seul slot. Les opérations cross-slot sur la source provoquent cette erreur et interrompent la tâche de migration :

    CROSSSLOT Keys in request don't hash to the same slot

    Opérez sur une seule clé à la fois pendant la migration.

Limites de l'instance de destination :

  • Les instances optimisées pour le stockage de Tair (Compatible avec Redis OSS) Enhanced Edition ne peuvent pas être utilisées comme source ou destination.

  • La version de l'instance de destination doit être identique ou supérieure à celle de la source.

  • Si Transparent Data Encryption (TDE) est activé sur la destination, DTS ne peut pas y migrer les données.

  • Si un shard de cluster de destination manque de mémoire ou d'espace de stockage, la tâche de migration échoue avec une erreur out of memory (OOM).

  • La politique d'éviction par défaut (maxmemory-policy) est volatile-lru. Si la destination manque de mémoire, une incohérence des données peut en résulter. Définissez la politique d'éviction sur noeviction afin que DTS échoue explicitement les écritures plutôt que d'évincer silencieusement les données. Pour plus de détails, consultez Comment Tair (compatible avec Redis OSS) évince-t-il les données par défaut ?

Autres limites :

  • DTS ne vide pas les données LIST existantes dans la destination avant l'écriture. Si la destination contient déjà des clés LIST, des doublons peuvent apparaître.

  • Scripts Lua EVAL et EVALSHA : DTS ne peut pas confirmer l'exécution sur la destination pendant la migration incrémentielle.

  • Les clés avec des politiques d'expiration peuvent ne pas être supprimées immédiatement après l'expiration, de sorte que le nombre de clés de destination peut être inférieur à celui de la source.

  • Si la Access Method pour une base de données Redis auto-gérée est Public IP Address, vous ne pouvez pas définir Instance Mode sur Cluster.

  • TLS : Si TLS est activé sur une instance Tair, connectez-vous via SSL-encrypted. TLSv1.3 n'est pas pris en charge et vous ne pouvez pas connecter une instance activée pour SSL en tant qu'Alibaba Cloud Instance.

  • La modification de la configuration de l'instance (spécifications, numéro de port) pendant la migration interrompt la tâche. Supprimez les données de destination et reconfigurez la tâche de migration après toute modification de configuration.

  • DTS relance les tâches de migration ayant échoué pendant sept jours maximum. Avant de basculer les charges de travail vers la destination, arrêtez ou libérez toutes les tâches DTS ayant échoué. Sinon, une tâche reprise peut écraser les données de destination avec des données obsolètes de la source.

  • Si une instance de migration de données contient à la fois des tâches de migration complète et incrémentielle des données, DTS peut redémarrer les deux tâches après le redémarrage de l'instance.

  • Si l'instance ne parvient pas à s'exécuter, le support technique DTS tentera de la restaurer dans un délai de 8 heures. Pendant la restauration, l'instance peut être redémarrée ou les paramètres de l'instance DTS peuvent être ajustés (les paramètres de la base de données ne sont pas modifiés). Pour les paramètres susceptibles d'être ajustés, consultez Modifier les paramètres de l'instance.

  • Les événements suivants peuvent provoquer une remigration complète, entraînant une éventuelle incohérence des données :

    • Échec du téléchargement reprenable dû à des connexions transitoires

    • Basculement primaire/secondaire ou failover sur la source ou la destination

    • Changement d'endpoint sur la source ou la destination

Redis auto-géré uniquement :

  • Un basculement primaire/secondaire sur la source pendant la migration entraîne l'échec de la tâche.

  • La latence de migration est calculée à partir de l'horodatage du dernier enregistrement migré par rapport à l'heure actuelle de la source. Si la source n'a aucune activité DML pendant une période prolongée, la latence signalée peut être inexacte. Pour maintenir la précision de la latence, créez une table de heartbeat qui écrit chaque seconde lors de la migration d'une base de données entière.

Commandes prises en charge pour la migration incrémentielle des données

DTS prend en charge les commandes Redis suivantes lors de la migration incrémentielle des données :

  • 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

Créer une tâche de migration

Étape 1 : Accéder à la page Data Migration

Utilisez la console DTS ou la console DMS.

Console DTS

  1. Connectez-vous à la console DTS.console DTS

  2. Dans le volet de navigation de gauche, cliquez sur Data Migration.

  3. Dans le coin supérieur gauche, sélectionnez la région où se trouve votre instance de migration.

Console DMS

Les étapes peuvent varier selon le mode et la disposition de la console DMS. Consultez les rubriques Simple mode et Customize the layout and style of the DMS console .
  1. Connectez-vous à la console DMS.console DMS

  2. Dans la barre de navigation supérieure, accédez à Data + AI > DTS (DTS) > Data Migration.

  3. Dans la liste déroulante située à droite de Data Migration Tasks, sélectionnez la région où se trouve votre instance de migration.

Étape 2 : Configurer les bases de données source et de destination

  1. Cliquez sur Create Task pour ouvrir la page de configuration de la tâche.

  2. Configurez les bases de données source et de destination à l'aide des paramètres du tableau suivant.

    Catégorie

    Paramètre

    Description

    N/A

    Nom de la tâche

    Saisissez un nom descriptif pour la tâche DTS. Le nom n'a pas besoin d'être unique.

    Base de données source

    Sélectionner une connexion existante

    Sélectionnez une instance de base de données enregistrée dans la liste déroulante pour remplir automatiquement les champs ci-dessous. Si l'instance n'est pas enregistrée, remplissez manuellement les champs.

    Type de base de données

    Sélectionnez Tair/Redis.

    Access Method

    Sélectionnez Alibaba Cloud Instance.

    Région de l'instance

    Sélectionnez la région de l'instance source Tair (compatible avec Redis OSS).

    Répliquer les données entre les comptes Alibaba Cloud

    Sélectionnez No pour une migration au sein du même compte.

    Instance ID

    Sélectionnez l'ID de l'instance source.

    Méthode d'authentification

    Sélectionnez une méthode d'authentification. Cet exemple utilise Password Login. L'option Account + Password Login nécessite Redis 6.0 ou une version ultérieure. Pour l'option Secret-free login, activez d'abord l'accès sans mot de passe sur l'instance ; consultez la rubrique Enable password-free access.

    Mot de passe de la base de données

    Saisissez le mot de passe de l'instance source (des autorisations en lecture sont requises). Pour le compte par défaut, saisissez uniquement le mot de passe. Pour un compte personnalisé, utilisez le format <account>:<password> — par exemple, testaccount:Test1234. Laissez ce champ vide si aucun mot de passe n'est défini. Pour réinitialiser un mot de passe oublié, consultez la rubrique Modifier ou réinitialiser un mot de passe.

    Chiffrement

    Sélectionnez Non-encrypted ou SSL-encrypted. Pour une instance Redis gérée par vos soins avec SSL, téléchargez un CA Certificate et saisissez une CA Key.

    Base de données de destination

    Sélectionner une connexion existante

    Identique à la source : sélectionnez une instance enregistrée ou remplissez manuellement les champs.

    Type de base de données

    Sélectionnez Tair/Redis.

    Access Method

    Sélectionnez Alibaba Cloud Instance.

    Région de l'instance

    Sélectionnez la région de l'instance de destination Tair (compatible avec Redis OSS).

    Répliquer les données entre les comptes Alibaba Cloud

    Sélectionnez No pour une migration au sein du même compte.

    Instance ID

    Sélectionnez l'ID de l'instance de destination.

    Méthode d'authentification

    Mêmes options que pour la source.

    Mot de passe de la base de données

    Saisissez le mot de passe de l'instance de destination (des autorisations en lecture et en écriture sont requises). Utilisez le même format de mot de passe que pour la source.

    Chiffrement

    Sélectionnez Non-encrypted ou SSL-encrypted.

  3. Cliquez sur Test Connectivity and Proceed.

    Ajoutez les blocs CIDR des serveurs DTS aux paramètres de sécurité de vos instances source et de destination. Consultez la rubrique Add the CIDR blocks of DTS servers . Pour les bases de données gérées par vos soins qui n'utilisent pas l'accès Alibaba Cloud Instance , cliquez sur Test Connectivity dans la boîte de dialogue CIDR Blocks of DTS Servers .

Étape 3 : Sélectionner les objets et configurer les paramètres avancés

  1. Sur la page Configure Objects , configurez les paramètres suivants.

    Paramètre

    Description

    Migration Types

    • Instances Redis Open-Source Edition : sélectionnez Full Data Migration + Incremental Data Migration ou Full Data Migration. Nous vous recommandons de sélectionner Full Data Migration + Incremental Data Migration afin de garantir la cohérence des données. Si le compte DTS ne dispose pas des autorisations SYNC ou PSYNC sur la source, sélectionnez uniquement Full Data Migration.

    • Instances Tair (Enterprise Edition) : sélectionnez Full Data Migration et/ou Incremental Data Migration selon vos besoins. Nous vous recommandons de sélectionner les deux options pour garantir la cohérence des données.

    Processing Mode of Conflicting Tables

    Precheck and Report Errors : vérifie que la destination est vide avant de démarrer ; l'étape de précontrôle échoue si ce n'est pas le cas. Ignore Errors and Proceed : ignore la vérification de vacuité de la destination.

    Avertissement

    Les données source écrasent les données de destination pour les clés correspondantes, ce qui peut entraîner une perte de données.

    Source Objects

    Sélectionnez une ou plusieurs bases de données dans la liste Source Objects , puis cliquez sur l'icône de flèche pour les déplacer vers Selected Objects . Pour migrer des clés spécifiques, utilisez la fonctionnalité de filtrage des données dans la zone Selected Objects .

    Selected Objects

    Pour mapper vers une base de données de destination spécifique (DB 0–DB 255) ou filtrer par préfixe de clé, faites un clic droit sur une base de données dans la zone Selected Objects , puis configurez la boîte de dialogue Edit Schema . Consultez les rubriques Mappage de schéma et Filtrer les données de tâche avec une condition SQL.

  2. Cliquez sur Next: Advanced Settings et configurez les éléments suivants.

    Paramètre

    Description

    Dedicated Cluster for Task Scheduling

    Par défaut, DTS utilise un cluster partagé. Achetez un cluster dédié pour une meilleure stabilité de la migration. Consultez la rubrique Qu'est-ce qu'un cluster dédié DTS ?.

    Retry Time for Failed Connections

    Durée pendant laquelle DTS effectue de nouvelles tentatives après un échec de connexion. Valeurs valides : 10 à 1 440 minutes. Valeur par défaut : 720 minutes. Définissez une valeur d'au moins 30 minutes. Si DTS se reconnecte dans ce délai, la tâche reprend. Sinon, la tâche échoue.

    Remarque

    Lorsque plusieurs tâches partagent la même source ou la même destination, le délai de nouvelle tentative défini le plus récemment est prioritaire. DTS facture l'instance pendant les nouvelles tentatives.

    Retry Time for Other Issues

    Durée pendant laquelle DTS effectue de nouvelles tentatives après des échecs DDL ou DML. Valeurs valides : 1 à 1 440 minutes. Valeur par défaut : 10 minutes. Définissez une valeur supérieure à 10 minutes. Elle doit être inférieure au Retry Time for Failed Connections.

    Enable Throttling for Full Data Migration

    Limite le débit de la migration complète pour réduire la charge sur la source et la destination. Configurez les paramètres Queries per second (QPS) to the source database , RPS of Full Data Migration et Data migration speed for full migration (MB/s) . Disponible uniquement lorsque Types de migration inclut Full Data Migration .

    Enable Throttling for Incremental Data Migration

    Limite le débit de la migration incrémentielle. Configurez les paramètres RPS of Incremental Data Migration et Data migration speed for incremental migration (MB/s) . Disponible uniquement lorsque Types de migration inclut Incremental Data Migration .

    Extend Expiration Time of Destination Database Key

    Ajoute un temps d'expiration supplémentaire aux clés migrées vers la destination. Utilisez cette option lorsque votre application utilise des commandes telles que expire , pexpire , expireat ou pexpireat afin d'éviter l'expiration des clés avant le basculement.

    Remarque

    Cela peut retarder la libération des verrous distribués.

    Environment Tag

    Facultatif. Sélectionnez un tag pour étiqueter l'instance.

    Configure ETL

    Sélectionnez Yesalert notification settings pour configurer les règles ETL (extract, transform, load). Saisissez les instructions de traitement des données dans l'éditeur de code. Consultez la rubrique Configurer ETL dans une tâche de migration ou de synchronisation de données. Sélectionnez No pour ignorer cette étape.

    Monitoring and Alerting

    Sélectionnez Yes pour recevoir des alertes en cas d'échec de la tâche ou si la latence de migration dépasse un seuil. Configurez le seuil d'alerte et les paramètres de notification. Consultez la rubrique Configurer la surveillance et les alertes.

  3. Cliquez sur Next Step: Data Verification pour configurer la vérification des données (facultatif). Consultez la rubrique Configurer une tâche de vérification des données.

Étape 4 : Exécuter le précontrôle

  1. Cliquez sur Next: Save Task Settings and Precheck .

    Pour afficher les paramètres API correspondants avant l'enregistrement, survolez le bouton et cliquez sur Preview OpenAPI parameters .
  2. Attendez la fin du précontrôle. DTS doit réussir le précontrôle avant que la tâche de migration ne démarre.

    • Si un élément de vérification échoue, cliquez sur View Details à côté de l'élément ayant échoué, corrigez le problème, puis cliquez sur Precheck Again .

    • Si une alerte est déclenchée : si elle ne peut pas être ignorée, corrigez-la et relancez la vérification. Si elle peut être ignorée, cliquez sur Confirm Alert Details > Ignore > OK > Precheck Again . Ignorer une alerte peut entraîner une incohérence des données.

Étape 5 : Acheter et démarrer l'instance

  1. Attendez que le Success Rate atteigne 100% , puis cliquez sur Next: Purchase Instance .

  2. Sur la page Purchase Instance , configurez les éléments suivants.

    Section

    Paramètre

    Description

    New Instance Class

    Resource Group

    Groupe de ressources pour l'instance de migration. Par défaut : default resource group . Consultez la rubrique Qu'est-ce que Resource Management ?

    Instance Class

    Sélectionnez une classe d'instance en fonction de la vitesse de migration requise. Consultez la rubrique Classes d'instances pour les instances de migration de données.

  3. Lisez et cochez la case pour accepter les Data Transmission Service (Pay-as-you-go) Service Terms .

  4. Cliquez sur Buy And Start , puis sur OK dans la boîte de dialogue de confirmation.

Suivez la progression sur la page de migration des données.

Si la tâche inclut à la fois une migration complète et une migration incrémentielle, elle apparaît sous la forme Incremental Data Migration dans la liste des tâches.

Après la migration

Une fois la migration en cours d'exécution (ou terminée pour les migrations complètes uniquement), effectuez les étapes suivantes avant de mettre hors service l'instance source.

1. Vérifiez la cohérence des données

Comparez le nombre de clés et effectuez des vérifications ponctuelles des données dans l'instance de destination. Gardez à l'esprit que les clés expirées peuvent entraîner un nombre légèrement inférieur sur l'instance de destination.

Si vous avez configuré la vérification des données lors de la configuration de la tâche, consultez les résultats de la vérification dans la console DTS.

2. Basculez le trafic de l'application

Mettez à jour la chaîne de connexion de votre application pour qu'elle pointe vers l'instance de destination. Pour les migrations incrémentielles, attendez que la latence de migration tombe à zéro ou presque avant d'effectuer le basculement ; cela confirme que l'instance de destination est entièrement synchronisée.

3. Arrêtez et libérez la tâche DTS

Après avoir confirmé que votre application fonctionne correctement avec l'instance de destination, arrêtez la tâche de migration DTS. DTS réessaie les tâches échouées pendant sept jours maximum ; par conséquent, la libération de la tâche empêche sa reprise et l'écrasement des données sur l'instance de destination.

Étapes suivantes