Importación y exportación de datos en Azure Cache for Redis

Use la funcionalidad de importación y exportación de Azure Cache for Redis como operación de administración de datos. Los datos se importan en la instancia de caché o se exportan datos desde una instancia de caché mediante una instantánea de base de datos de Azure Cache for Redis (RDB). Las instantáneas se importan o exportan mediante un blob en una cuenta de Azure Storage.

El servicio Import/Export es compatible con los niveles Premium, Enterprise y Enterprise Flash:

  • Exportación: puede exportar las instantáneas de RDB de Azure Cache for Redis a un blob en páginas (nivel Premium) o blob en bloques (niveles Enterprise).
  • Importar: puede importar las instantáneas de RDB de Azure Cache for Redis desde de un blob en páginas o un blob en bloques.

Puede usar Import/Export para migrar entre diferentes instancias de Azure Cache for Redis o rellenar la memoria caché de datos antes de su uso.

En este artículo se proporciona una guía para importar y exportar datos con Azure Cache for Redis y se responden las preguntas más frecuentes.

Ámbito de disponibilidad

Nivel Básico y Estándar Premium Enterprise o Enterprise Flash
Disponible No

Compatibilidad

  • Los datos se exportan como un blob de página RDB en el nivel Premium. En los niveles Enterprise y Enterprise Flash, los datos se exportan como un blob en bloques .gz.
  • Las cachés que ejecutan Redis 4.0 son compatibles con RDB versión 8 e inferiores. Las cachés que ejecutan Redis 6.0 son compatibles con RDB versión 9 e inferiores.
  • Las copias de seguridad exportadas de versiones más recientes de Redis (por ejemplo, Redis 6.0) no se pueden importar en versiones anteriores de Redis (por ejemplo, Redis 4.0).
  • Los archivos RDB de las cachés de nivel Premium pueden importarse a las cachés de nivel Enterprise y Enterprise Flash.

Importar

Utilice la importación para traer los archivos RDB compatibles de Redis desde cualquier servidor de Redis que se ejecute en cualquier nube o entorno, incluidas las instancias de Redis que se ejecutan en Linux, Windows o cualquier proveedor de nube como, por ejemplo, Amazon Web Services. La importación de datos ofrece una forma fácil de crear una caché con datos rellenados previamente. Durante el proceso de importación, Azure Cache for Redis carga los archivos RDB desde Azure Storage en la memoria y, luego, inserta las claves en la memoria caché.

Nota

Antes de comenzar la operación de importación, asegúrese de que los archivos de base de datos de Redis (RDB) se cargan en los blobs en páginas o en bloques de Azure Storage, en la misma región y suscripción que la instancia de Azure Cache for Redis. Si usa la identidad administrada para la autenticación, la cuenta de almacenamiento puede estar en otra suscripción. Para obtener información, vea Introducción al Almacenamiento de blobs de Azure. Si exportó el archivo RDB mediante la característica Azure Cache for Redis Export, el archivo RDB ya estará almacenado en un blob en páginas y listo para la importación.

Importante

Actualmente, no se admite la importación desde el nivel Enterprise de Redis al nivel Premium.

  1. Para importar uno o varios blobs de caché exportados, vaya a la caché en Azure Portal y seleccione Importar datos en el menú Recurso. En el panel de trabajo verá Elegir blobs donde puede encontrar archivos RDB.

    Screenshot showing Import data selected in the Resource menu.

  2. Seleccione Elegir blobs y, después, la cuenta de almacenamiento que contiene los datos que desea importar.

    Screenshot showing a list of storage accounts.

  3. Seleccione el contenedor con los datos que desea importar.

    Screenshot showing list of containers from the previously chosen storage account.

  4. Seleccione uno o varios blobs para importar; para ello, elija el área a la izquierda del nombre del blob y, a continuación, Seleccionar.

    Screenshot showing a blob from the container.

  5. Seleccione Importar para comenzar el proceso de importación.

    Importante

    Los clientes de la memoria caché no pueden tener acceso a esta durante el proceso de importación, y los datos existentes en la memoria caché se eliminan.

    Screenshot showing the Import button to select to begin the import.

    Puede supervisar el progreso de la operación de importación siguiendo las notificaciones de Azure Portal o viendo los eventos en el registro de actividad.

    Importante

    La compatibilidad con el registro de actividad aún no está disponible en los niveles Enterprise.

    Screenshot showing the import progress in the notifications area.

Exportación

La exportación permite exportar los datos almacenados en Azure Cache for Redis a archivos RDB compatibles. Puede utilizar esta característica para mover datos desde una instancia de Azure Cache for Redis a otra o a otro servidor de Redis. Durante el proceso de exportación, se crea un archivo temporal en la máquina virtual que hospeda la instancia del servidor de Azure Cache for Redis. A continuación, el archivo se carga en la cuenta de almacenamiento designada. Una vez completada la operación de exportación (de manera correcta o incorrecta), se elimina el archivo temporal.

  1. Para exportar el contenido actual de la memoria caché al almacenamiento, vaya a la caché en Azure Portal y seleccione Exportar datos en el menú Recurso. Verá Elegir contenedor de almacenamiento en el panel de trabajo.

    Screenshot showing Export data selected in the Resource menu

  2. Seleccione Elegir contenedor de almacenamiento para mostrar una lista de cuentas de almacenamiento disponibles. Seleccione la cuenta de almacenamiento que desee. La cuenta de almacenamiento debe estar en la misma región que su caché. Si usa la identidad administrada para la autenticación, la cuenta de almacenamiento puede estar en otra suscripción. De lo contrario, la cuenta de almacenamiento debe estar en la misma suscripción que su caché.

    Importante

    • La exportación funciona con blobs en páginas que son compatibles con las cuentas de almacenamiento del modelo clásico y de Resource Manager.
    • Azure Cache for Redis no admite la exportación a cuentas de almacenamiento de ADLS Gen2.
    • aunque en este momento no lo son con las cuentas de Blob Storage.
    • Si se produce un error en la exportación de datos de caché a cuentas de almacenamiento habilitadas para firewall, consulte ¿Cómo hacer una exportación si mi cuenta de almacenamiento está habilitada para firewall?

    Para más información, vea Introducción a las cuentas de Azure Storage.

    Screenshot showing a list of containers in the working pane.

  3. Elija el contenedor de almacenamiento en el que desee contener la exportación y, después, Seleccione. Si desea un contenedor nuevo, seleccione Agregar contenedor para agregarlo primero y, después, selecciónelo en la lista.

    Screenshot of a list of containers with one highlighted and a select button.

  4. Escriba un prefijo de nombre de blob y seleccione Exportar para iniciar el proceso de exportación. El prefijo del nombre del blob se utiliza como prefijo para los nombres de los archivos generados por esta operación de exportación.

    Screenshot showing a blob name prefix and an Export button.

    Puede supervisar el progreso de la operación de exportación siguiendo las notificaciones de Azure Portal o viendo los eventos en el registro de auditoría.

    Screenshot showing the export progress in the notifications area.

    Las memorias caché permanecen disponibles para su uso durante el proceso de exportación.

P+F de Import/Export

Esta sección contiene las preguntas más frecuentes acerca de la característica Importación/Exportación.

¿Qué niveles admiten Import/Export?

Las características de importación y exportación solo están disponibles en los niveles Premium, Enterprise y Enterprise Flash.

¿Puedo importar datos desde cualquier servidor de Redis?

Sí, puede importar datos exportados desde instancias de Azure Cache for Redis. Puede importar archivos RDB desde cualquier servidor Redis que se ejecute en cualquier nube o entorno. como Linux, Windows, o proveedores en la nube, como Amazon Web Services. Para importar estos datos, cargue el archivo RDB del servidor Redis que desee en una página o blob en bloque en una cuenta de almacenamiento de Azure. Después, impórtelo en la instancia de Azure Cache for Redis prémium.

Por ejemplo, puedes:

  1. Exporte los datos de la memoria caché de producción.

  2. Después, impórtelos en una memoria caché que se usa como parte de un entorno de ensayo para pruebas o migración.

Importante

Para poder importar correctamente los datos exportados desde servidores de Redis distintos a Azure Cache for Redis cuando se usa un blob en páginas, el tamaño de dicho blob debe ajustarse al límite de 512 bytes. Para ver un ejemplo para realizar cualquier relleno de bytes necesario, consulte Sample page blog upload (Carga de blog en páginas de ejemplo).

¿Qué versiones de RDB puedo importar?

Para más información sobre las versiones de RDB compatibles usadas con la importación, consulte la sección de compatibilidad.

¿La memoria caché estará disponible durante una operación de Import/Export?

  • Exportación : las memorias caché permanecen disponibles y puede seguir usándolas durante una operación de exportación.
  • Importación : las memorias caché dejan de estar disponibles cuando se inicia una operación de importación y vuelven a estar disponibles para su uso cuando la operación de importación finaliza.

¿Puedo utilizar Import/Export con un clúster de Redis?

Sí, puede hacer importaciones y exportaciones entre una memoria caché agrupada y una memoria caché no agrupada. Puesto que el clúster de Redis solo admite la base de datos 0, solo se importarán los datos de la base de datos 0. Cuando se importan datos de caché en clúster, las claves se redistribuyen entre las particiones del clúster.

¿Cómo funciona la importación y exportación con una configuración de bases de datos personalizada?

Algunos planes de tarifa tienen diferentes límites de bases de datos, por lo que hay algunas consideraciones al importar si ha configurado un valor personalizado para el parámetro databases al crear la memoria caché.

  • Al importar a un plan de tarifa con un límite de databases menor que el nivel desde el que exportó:
    • Si usa el número predeterminado de databases, que es 16 para todos los planes de tarifa, no se pierden datos.
    • Si utiliza un número personalizado de databases que está dentro de los límites para el plan al que va a importar, no se pierden datos.
    • Si los datos exportados contenían datos en una base de datos que supera los límites del nuevo plan, no se importan los datos de esas bases de datos superiores.

¿En qué se diferencia Import/Export de la persistencia de Redis?

La característica de persistencia de Azure Cache for Redis es principalmente una característica de durabilidad de datos. Por el contrario, la funcionalidad de import/export está diseñada como un método para realizar copias de seguridad periódicas de los datos para su recuperación puntual.

Cuando se configura la persistencia, su caché conserva una instantánea de los datos en el disco, en función de una frecuencia de copia de seguridad configurable. Los datos se escriben con un formato binario propietario de Redis. Si se produce un evento catastrófico que inutiliza tanto la caché primaria como la réplica, los datos de la caché se restauran automáticamente usando la instantánea más reciente.

La persistencia de los datos está diseñada para la recuperación ante desastres. No está pensada como un mecanismo de recuperación a un momento dado.

  • En el nivel Premium, el archivo de persistencia de datos se almacena en Azure Storage, pero el archivo no puede importarse a una caché diferente.
  • En los niveles Enterprise, el archivo de persistencia de datos se almacena en un disco montado que no es accesible para el usuario.

Si quiere hacer copias de seguridad periódicas de los datos para su recuperación a un momento dado, le recomendamos usar la funcionalidad de import/export. Para más información, vea Configuración de la persistencia de datos para una instancia de Azure Cache for Redis.

¿Puedo automatizar Importación/Exportación mediante PowerShell, la CLI u otros clientes de administración?

Sí, consulte las siguientes instrucciones para el nivel Premium:

Para los niveles Enterprise y Enterprise Flash:

He recibido un error de tiempo de espera durante la operación de Import/Export. ¿Qué significa?

A la izquierda, si permanece en la hoja Importar datos o Exportar datos durante más de 15 minutos antes de iniciar la operación, recibirá un mensaje de error similar al siguiente ejemplo:

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.

Para solucionarlo, inicie la operación de importación o exportación antes de que transcurran 15 minutos.

Aparece un error al exportar los datos a Azure Blob Storage. ¿Qué ha ocurrido?

La exportación solo funciona con archivos RDB almacenados como blobs en páginas. No se admiten otros tipos de blob en este momento, incluidas las cuentas de Blob Storage con niveles de acceso frecuente y esporádico. Para más información, vea Introducción a las cuentas de Azure Storage. Si usa una clave de acceso para autenticar una cuenta de almacenamiento, tener excepciones de firewall en la cuenta de almacenamiento tiende a provocar un error en el proceso de importación o exportación.

¿Cómo hacer una exportación si mi cuenta de almacenamiento está habilitada para firewall?

En el caso de las cuentas de almacenamiento habilitadas para firewall, es necesario seleccionar "Allow Azure services on the trusted services list to access this storage account", usar la identidad administrada (asignada por el sistema o por el usuario) y asignar el rol de RBAC Colaborador de datos de Storage Blob para ese identificador de objeto.

Más información disponible en: Identidad administrada para cuentas de almacenamiento: Azure Cache for Redis

¿Puedo importar o exportar datos desde una cuenta de almacenamiento en una suscripción diferente de la caché?

En el nivel Premium es posible importar y exportar datos de una cuenta de almacenamiento en una suscripción diferente a la caché, pero deberá usar la identidad administrada como método de autenticación. Deberá seleccionar la suscripción elegida que contiene la cuenta de almacenamiento al configurar la importación o la exportación.

¿Qué permisos se deben conceder al token de firma de acceso compartido (SAS) del contenedor de la cuenta de almacenamiento para permitir la exportación?

Para que la exportación a una cuenta de Almacenamiento de Azure funcione correctamente, el token de firma de acceso compartido (SAS) debe tener los permisos siguientes:

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

Pasos siguientes

Más información sobre las características de Azure Cache for Redis.