Importer et exporter des données dans le Cache Azure pour Redis

Utilisez la fonctionnalité d’importation et d’exportation dans Azure Cache pour Redis en tant qu’opération de gestion des données. Vous importez des données dans votre instance de cache ou exportez des données à partir d’un instance de cache à l’aide d’un instantané de base de données Azure Cache pour Redis (RDB). Les instantanés sont importés ou exportés à l’aide d’un objet blob dans un compte de stockage Azure.

Import/Export est pris en charge dans les niveaux Premium, Enterprise et Enterprise Flash :

  • Exportation : vous pouvez exporter vos instantanés Azure Cache pour Redis RDB vers un objet blob de pages (niveau Premium) ou un objet blob de blocs (niveaux Enterprise).
  • Importation : vous pouvez importer vos captures instantanées du cache Azure pour Redis RDB à partir d’un objet blob de pages ou d’un objet blob de blocs.

Vous pouvez utiliser le service Import/Export pour opérer une migration entre différentes instances d’Azure Cache pour Redis, ou de remplir le cache de données avant utilisation.

Cet article fournit un guide pour l’importation et l’exportation de données avec le Cache Azure pour Redis et répond aux questions fréquemment posées.

Étendue de la disponibilité

Niveau De base, Standard Premium Enterprise, Enterprise Flash
Disponible Non Oui Oui

Compatibilité

  • Les données sont exportées en tant qu’objet blob de pages RDB dans le niveau Premium. Dans les niveaux Enterprise et Enterprise Flash, les données sont exportées en tant qu’objet blob de blocs .gz.
  • Les caches exécutant Redis 4.0 prennent en charge RDB version 8 et antérieure. Les caches exécutant Redis 6.0 prennent en charge RDB version 9 et antérieure.
  • Les sauvegardes exportées à partir de versions plus récentes de Redis (par exemple, Redis 6.0) ne peuvent pas être importées dans des versions antérieures de Redis (par exemple, Redis 4.0)
  • Les fichiers RDB des caches de niveau Premium peuvent être importés dans les caches de niveau Enterprise et Enterprise Flash.

Importer

Utilisez l’importation pour récupérer les fichiers RDB compatibles Redis depuis un serveur Redis en cours d’exécution dans un environnement ou un cloud, y compris si Redis est exécuté sur Linux, Windows ou n’importe quel fournisseur de cloud, tel qu’Amazon Web Services. Importer des données est un moyen simple de créer un cache prérempli de données. Pendant le processus d’importation, le Cache Azure pour Redis charge les fichiers RDB du stockage Azure dans la mémoire, puis insère les clés dans le cache.

Notes

Avant de commencer l’opération d’importation, vérifiez que le ou les fichier(s) de votre base de données Redis (RDB) sont téléchargés vers des objets blob de pages ou de blocs dans le stockage Azure, dans les mêmes région et abonnement que votre instance de Cache Azure pour Redis. Si vous utilisez une identité managée pour l’authentification, il est possible que le compte de stockage se trouve dans un autre abonnement. Pour plus d’informations, consultez l’article Prise en main du stockage d’objets blob Azure. Si vous avez exporté votre fichier RDB à l’aide de la fonctionnalité Exportation du cache Azure pour Redis, votre fichier RDB est déjà stocké dans un objet blob de pages et est prêt pour l’importation.

Important

Actuellement, l’importation du niveau Redis Enterprise vers le niveau Premium n’est pas prise en charge.

  1. Pour importer un ou plusieurs objets blob de cache exportés, accédez à votre cache dans le portail Azure et sélectionnez Importer des données dans le menu Ressource. Dans le volet de travail, vous voyez Choisir des objets blob où vous pouvez trouver . Fichiers RDB.

    Capture d’écran montrant les données importées sélectionnées dans le menu des ressources.

  2. Sélectionnez Choisir un ou plusieurs objets blob et sélectionnez le compte de stockage contenant les données à importer.

    Capture d’écran montrant une liste des comptes de stockage.

  3. Sélectionnez le conteneur des données à importer.

    Capture d’écran montrant la liste des conteneurs du compte de stockage précédemment choisi.

  4. Sélectionnez un ou plusieurs objets blob à importer en sélectionnant la zone située à gauche de leurs noms, puis en sélectionnant Sélectionner.

    Capture d’écran montrant un objet blob issu du conteneur.

  5. Sélectionnez Importer pour commencer le processus d’importation.

    Important

    Pendant le processus d’importation, le cache n’est pas accessible par les clients de cache, et toutes les données existantes dans le cache sont supprimées.

    Capture d’écran montrant le bouton Importer pour commencer l’importation.

    Vous pouvez surveiller la progression de l’importation grâce aux notifications du portail Azure ou aux événements dans le journal d’activité.

    Important

    La prise en charge des journaux d’activité n’est pas encore disponible dans les niveaux Enterprise.

    Capture d’écran montrant la progression de l’importation dans la zone des notifications.

Exporter

L’exportation vous permet d’exporter les données stockées dans le Cache Azure pour Redis vers un ou plusieurs fichiers RDB compatibles. Vous pouvez utiliser cette fonctionnalité pour déplacer des données d’une instance de Cache Azure pour Redis à une autre, ou vers un autre serveur Redis. Pendant le processus d’exportation, un fichier temporaire est créé sur la machine virtuelle qui héberge l’instance de serveur Azure Cache pour Redis. Ensuite, le fichier est chargé sur le compte de stockage choisi. Lorsque l’opération d’exportation se termine avec un état de réussite ou d’échec, le fichier temporaire est supprimé.

  1. Pour exporter le contenu actuel du cache vers un espace de stockage, accédez à votre cache dans le portail Azure, puis sélectionnez Exporter des données à partir du Menu Ressource. Vous voyez Choisir un conteneur de stockage dans le volet de travail.

    Capture d’écran montrant les données exportées sélectionnées dans le menu des ressources.

  2. Sélectionnez Choisir un conteneur de stockage et afficher une liste de comptes de stockage disponibles. Sélectionnez le compte de stockage que vous souhaitez. Le compte de stockage doit se trouver dans la même région que votre cache. Si vous utilisez une identité managée pour l’authentification, il est possible que le compte de stockage se trouve dans un autre abonnement. Autrement, le compte de stockage doit se trouver dans le même abonnement que votre cache.

    Important

    • La fonctionnalité d’exportation s’utilise sur les objets blob de pages qui sont pris en charge par les comptes de stockage Resource Manager et classiques.
    • Azure Cache pour Redis ne prend pas en charge l’exportation vers les comptes de stockage ADLS Gen2.
    • L’exportation n’est pas prise en charge par les comptes de stockage d’objets blob pour l’instant.
    • Si l’exportation de vos données de cache vers des comptes de stockage avec pare-feu échoue, reportez-vous à Que se passe-t-il si j’ai un pare-feu activé sur mon compte de stockage ?

    Pour plus d’informations, consultez Vue d’ensemble des comptes de stockage Azure.

    Capture d’écran montrant une liste de conteneurs dans le volet de travail.

  3. Choisissez le conteneur de stockage que vous choisir pour conserver votre exportation, puis cliquez sur Sélectionner. Pour utiliser un nouveau conteneur, sélectionnez d’abord Ajouter un conteneur pour l’ajouter, puis sélectionnez-le dans la liste.

    Capture d’écran d’une liste de conteneurs avec un conteneur mis en surbrillance et un bouton Sélectionner.

  4. Tapez un préfixe de nom d’objet blob et sélectionnez Exporter pour lancer le processus d’exportation. Le préfixe de nom d’objet blob est utilisé pour préfixer les noms des fichiers générés par cette opération d’exportation.

    Capture d’écran montrant un préfixe de nom d’objet blob et un bouton Exporter.

    Vous pouvez surveiller la progression de l’exportation grâce aux notifications du portail Azure ou aux événements du journal d’audit.

    Capture d’écran montrant la progression de l’exportation dans la zone des notifications.

    Les caches restent disponibles pendant le processus d’exportation.

FAQ sur l’Importation/Exportation

Cette section contient les questions fréquemment posées sur la fonctionnalité d’Importation/Exportation.

Quels niveaux prennent en charge Import/Export ?

Les fonctionnalités d’importation et d’exportation sont disponibles uniquement dans les niveaux Premium, Enterprise et Enterprise Flash.

Puis-je importer des données à partir de n’importe quel serveur Redis ?

Oui, vous pouvez importer des données exportées à partir d’instances Azure Cache pour Redis. Vous pouvez importer des fichiers RDB à partir de n’importe quel serveur Redis en cours d’exécution dans un cloud ou tout autre environnement. Les environnements comprennent Linux, Windows ou des fournisseurs cloud, tels que Amazon Web Services. Pour importer ces données, chargez le fichier RDB à partir du serveur Redis de votre choix, dans un objet blob de pages ou de blocs d’un compte de stockage Azure. Ensuite, importez-le dans votre instance Premium Azure Cache pour Redis.

Vous pouvez, par exemple, souhaiter effectuer les opérations suivantes :

  1. Exportez les données à partir de votre cache de production.

  2. Importez-les ensuite dans un cache utilisé dans le cadre d’un environnement intermédiaire à des fins de test ou de migration.

Important

Pour importer correctement des données exportées à partir de serveurs Redis autres que le Cache Azure pour Redis lors de l’utilisation d’un objet blob de pages, la taille de l’objet blob de pages doit être alignée sur une limite de 512 octets. Pour obtenir un exemple de code permettant d’exécuter un remplissage d’octets, consultez Sample page blob upload.

Quelles versions RDB puis-je importer ?

Pour plus d’informations sur les versions RDB prises en charge utilisées avec l’importation, consultez la section Compatibilité.

Mon cache est-il disponible pendant une opération d’Importation/Exportation ?

  • Exporter - Les caches restent disponibles et vous pouvez continuer à utiliser votre cache pendant une opération d’exportation.
  • Importer - Les caches deviennent indisponibles au démarrage d’une opération d’importation, puis redeviennent disponibles lorsqu’elle est terminée.

Puis-je utiliser l’Importation/Exportation avec le cluster Redis ?

Oui, et vous pouvez effectuer une importation/exportation de données entre un cache en cluster et un cache non cluster. Depuis que le cluster Redis ne prend en charge que la base de données 0, toutes les données de bases de données différentes de 0 ne sont pas importées. Lorsque vous importez des données d’un cache en cluster, les clés sont redistribuées entre les partitions du cluster.

Comment l’importation/exportation fonctionne avec un paramètre de base de données personnalisé ?

Certains niveaux tarifaires sont associés à des limites de bases de données différentes. Certains aspects doivent donc être pris en compte lors d’une importation si vous avez configuré une valeur personnalisée pour le paramètre databases lors de la création du cache.

  • Lorsque vous procédez à une importation vers un niveau tarifaire avec une priorité inférieure à databases par rapport au niveau à partir duquel vous effectuez l’exportation :
    • Si vous utilisez le nombre par défaut de databases, c’est-à-dire 16 pour tous les niveaux tarifaires, vous ne perdrez aucune donnée.
    • Si vous utilisez un nombre personnalisé de databases qui se trouve dans les limites du niveau tarifaire vers lequel vous effectuez l’importation, vous ne perdrez aucune donnée.
    • Si vos données exportées contenaient des données d’une base de données dépassant les limites du nouveau niveau, les données de telles bases de données plus élevées ne sont pas importées.

En quoi l’Importation/Exportation est-elle différente de la persistance Redis ?

La fonctionnalité de persistance Azure Cache pour Redis est principalement une fonctionnalité de durabilité des données. À l’inverse, la fonctionnalité d’importation/exportation est conçue comme une méthode permettant d’effectuer des sauvegardes de données périodiques pour une récupération jusqu`à une date et heure.

Quand la persistance est configurée, votre cache conserve un instantané des données sur disque selon une fréquence de sauvegarde configurable. Les données sont écrites avec un format binaire propriétaire Redis. Si un événement catastrophique se produit et provoque la désactivation du cache principal et du réplica, les données du cache sont automatiquement rétablies à l’aide de l’instantané le plus récent.

La persistance des données est conçue pour la récupération d’urgence. Il n’est pas conçu comme un mécanisme de récupération jusqu`à une date et heure.

  • Sur le niveau Premium, le fichier de persistance des données est stocké dans Stockage Azure, mais il ne peut pas être importé dans un autre cache.
  • Dans les niveaux Enterprise, le fichier de persistance des données est stocké sur un disque monté qui n’est pas accessible à l’utilisateur.

Si vous souhaitez effectuer des sauvegardes de données périodiques pour une récupération à un instant dans le passé, nous vous recommandons d’utiliser la fonctionnalité d’importation/exportation. Pour plus d’informations, consultez Configurer la persistance des données pour Azure Cache pour Redis.

Puis-je automatiser l’Importation/Exportation à l’aide de PowerShell, de CLI ou d’autres clients de gestion ?

Oui, consultez les instructions suivantes pour le niveau Premium :

Pour les niveaux Enterprise et Enterprise Flash :

J’ai reçu une erreur de délai d’attente pendant mon opération d’Importation/Exportation. Qu’est-ce que cela signifie ?

Sur la gauche, si vous restez sur Importer des données ou Exporter des données pendant plus de 15 minutes avant de démarrer l’opération, vous recevez une erreur avec un message similaire à ce qui suit :

The request to import data into cache 'contoso55' failed with status 'error' and error 'One of the SAS URIs provided could not be used for the following reason: The SAS token end time (se) must be at least 1 hour from now and the start time (st), if given, must be at least 15 minutes in the past.

Pour corriger cette erreur, démarrez l’importation ou l’exportation avant que les 15 minutes ne se soient écoulées.

J’ai obtenu une erreur en exportant mes données vers un stockage d’objets blob Azure. Que s’est-il passé ?

L’exportation ne fonctionne qu’avec les fichiers RDB stockés sous la forme d’objets blob de pages. Les autres types d’objets blob ne sont pas pris en charge pour l’instant, entre autres les comptes de stockage d’objets blob de niveaux chaud et froid. Pour plus d’informations, consultez Vue d’ensemble des comptes de stockage Azure. Si vous utilisez une clé d’accès pour authentifier un compte de stockage, le fait d’avoir des exceptions de pare-feu sur le compte de stockage tend à provoquer l’échec du processus d’importation/exportation.

Que se passe-t-il si j’ai un pare-feu activé sur mon compte de stockage ?

Si vous utilisez une instance de niveau Premium, vous devez sélectionner « Autoriser les services Azure figurant dans la liste des services approuvés à accéder à ce compte de stockage » dans les paramètres de votre compte de stockage. Utilisez ensuite une identité managée (affectée par l’utilisateur ou le système) et approvisionnez un rôle RBAC de Contributeur aux données Blob du stockage pour cet ID de stockage.

Pour découvrir des informations supplémentaires, voir : Identité managée pour les comptes de stockage – Azure Cache pour Redis

Les instances Enterprise et Enterprise Flash ne prennent pas en charge l’importation ou l’exportation de données vers des comptes de stockage utilisant des pare-feux ou des points de terminaison privés. Le compte de stockage doit avoir accès à un réseau public.

Puis-je importer ou exporter des données à partir d’un compte de stockage dans un autre abonnement que mon cache ?

Dans le niveau Premium, vous pouvez importer et exporter des données à partir d’un compte de stockage dans un abonnement différent de celui de votre cache, mais vous devez utiliser l’identité managée comme méthode d’authentification. Vous devez sélectionner l’abonnement choisi contenant le compte de stockage lors de la configuration de l’importation ou de l’exportation.

Quelles autorisations doivent être accordées au jeton de signature d’accès partagé (SAP) du conteneur de compte de stockage ?

Pour que l’exportation vers un compte de stockage Azure fonctionne correctement, le jeton de signature d’accès partagé (SAP) doit avoir les autorisations suivantes :

  • read
  • add
  • create
  • write
  • delete
  • tag
  • move

Étapes suivantes

En savoir plus sur les fonctionnalités d’Azure Cache pour Redis.