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 | Sí | Sí |
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.
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.
Seleccione Elegir blobs y, después, la cuenta de almacenamiento que contiene los datos que desea importar.
Seleccione el contenedor con los datos que desea importar.
Seleccione uno o varios blobs para importar; para ello, elija el área a la izquierda del nombre del blob y, a continuación, Seleccionar.
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.
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.
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.
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.
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 ¿Qué ocurre si tengo el firewall habilitado en mi cuenta de almacenamiento?
Para más información, vea Introducción a las cuentas de Azure Storage.
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.
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.
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.
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?
- ¿Puedo importar datos desde cualquier servidor de Redis?
- ¿Qué versiones de RDB puedo importar?
- ¿La memoria caché estará disponible durante una operación de Import/Export?
- ¿Puedo utilizar Import/Export con un clúster de Redis?
- ¿Cómo funciona la importación y exportación con una configuración de bases de datos personalizada?
- ¿En qué se diferencia Importación/Exportación de la persistencia de Redis?
- ¿Puedo automatizar Importación/Exportación mediante PowerShell, la CLI u otros clientes de administración?
- He recibido un error de tiempo de espera durante la operación de Import/Export. ¿Qué significa?
- Aparece un error al exportar los datos a Azure Blob Storage. ¿Qué ha ocurrido?
- ¿Qué ocurre si tengo el firewall habilitado en mi cuenta de almacenamiento?
- ¿Puedo importar o exportar datos desde una cuenta de almacenamiento en una suscripción diferente de la caché?
- ¿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?
¿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:
Exporte los datos de la memoria caché de producción.
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.
- Si usa el número predeterminado de
¿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:
- Instrucciones de PowerShell para importar datos de Redis y exportar datos de Redis.
- Instrucciones de la CLI de Azure para importar datos de Redis y exportar datos de Redis
Para los niveles Enterprise y Enterprise Flash:
- Instrucciones de PowerShell para importar datos de Redis y exportar datos de Redis.
- Instrucciones de la CLI de Azure para importar datos de Redis y exportar datos de Redis
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.
¿Qué ocurre si tengo el firewall habilitado en mi cuenta de almacenamiento?
Si usa una instancia de nivelPremium, debe comprobar "Permitir que los servicios de Azure en la lista de servicios de confianza accedan a esta cuenta de almacenamiento" en la configuración de la cuenta de almacenamiento. A continuación, use la identidad administrada (sistema o usuario asignado) y aprovisione el rol RBAC colaborador de datos de Storage Blob para ese identificador de objeto.
Para más información, consulte Identidad administrada para cuentas de almacenamiento: Azure Cache for Redis
Enterprise e instancias de Enterprise Flashno admiten la importación o exportación de datos a cuentas de almacenamiento que usan firewalls o puntos de conexión privados. La cuenta de almacenamiento debe tener acceso a la red pública.
¿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.