Importar e Exportar dados na Cache do Azure para Redis

Use a funcionalidade de importação e exportação no Cache Redis do Azure como uma operação de gerenciamento de dados. Você importa dados para sua instância de cache ou exporta dados de uma instância de cache usando um instantâneo do Cache do Azure para Banco de Dados Redis (RDB). Os instantâneos são importados ou exportados usando um blob em uma Conta de Armazenamento do Azure.

A importação/exportação é suportada nas camadas Premium, Enterprise e Enterprise Flash:

  • Exportar - você pode exportar seus instantâneos RDB do Cache do Azure para Redis para um Blob de Página (camada Premium) ou Blob de Bloco (camadas Enterprise).
  • Importar - você pode importar seus instantâneos RDB do Cache do Azure para Redis de um Blob de Página ou de um Blob de Bloco.

Você pode usar Importar/Exportar para migrar entre diferentes instâncias do Cache Redis do Azure ou preencher o cache com dados antes de usá-lo.

Este artigo fornece um guia para importar e exportar dados com o Cache Redis do Azure e fornece as respostas para perguntas frequentes.

Âmbito da disponibilidade

Escalão de serviço Básico, Standard Premium Empresa, Enterprise Flash
Disponível Não Sim Sim

Compatibilidade

  • Os dados são exportados como um blob de página RDB na camada Premium . Nas camadas Enterprise e Enterprise Flash, os dados são exportados como um blob de bloco .gz.
  • Os caches que executam o Redis 4.0 suportam RDB versão 8 e inferior. Os caches que executam o Redis 6.0 suportam RDB versão 9 e inferior.
  • Os backups exportados de versões mais recentes do Redis (por exemplo, Redis 6.0) não podem ser importados para versões mais antigas do Redis (por exemplo, Redis 4.0)
  • Os arquivos RDB de caches de camada Premium podem ser importados para caches de camada Enterprise e Enterprise Flash .

Importar

Use a importação para trazer arquivos RDB compatíveis com Redis de qualquer servidor Redis em execução em qualquer nuvem ou ambiente, incluindo Redis em execução em Linux, Windows ou qualquer provedor de nuvem, como Amazon Web Services e outros. Importar dados é uma maneira fácil de criar um cache com dados pré-preenchidos. Durante o processo de importação, o Cache Redis do Azure carrega os arquivos RDB do armazenamento do Azure na memória e, em seguida, insere as chaves no cache.

Nota

Antes de iniciar a operação de importação, certifique-se de que o arquivo ou arquivos do Banco de Dados Redis (RDB) sejam carregados na página ou bloqueiem blobs no armazenamento do Azure, na mesma região e assinatura da instância do Cache do Azure para Redis. Se você estiver usando identidade gerenciada para autenticação, a conta de armazenamento poderá estar em uma assinatura diferente. Para obter mais informações, consulte Introdução ao armazenamento de Blob do Azure. Se você exportou seu arquivo RDB usando o recurso Cache do Azure para Exportação Redis, seu arquivo RDB já está armazenado em um blob de página e está pronto para importação.

Importante

Atualmente, não há suporte para a importação da camada Redis Enterprise para a camada Premium.

  1. Para importar um ou mais blobs de cache exportados, navegue até o cache no portal do Azure e selecione Importar dados no menu Recurso. No painel de trabalho, você verá Escolher Blob(s) onde você pode encontrar arquivos RDB.

    Captura de ecrã a mostrar a opção Importar dados selecionada no menu Recurso.

  2. Selecione Escolher Blob(s) e selecione a conta de armazenamento que contém os dados a serem importados.

    Captura de ecrã a mostrar uma lista de contas de armazenamento.

  3. Selecione o contêiner que contém os dados a serem importados.

    Captura de tela mostrando a lista de contêineres da conta de armazenamento escolhida anteriormente.

  4. Selecione um ou mais blobs para importar selecionando a área à esquerda do nome do blob e, em seguida , Selecionar.

    Captura de tela mostrando um blob do contêiner.

  5. Selecione Importar para iniciar o processo de importação.

    Importante

    O cache não é acessível pelos clientes de cache durante o processo de importação e todos os dados existentes no cache são excluídos.

    Captura de tela mostrando o botão Importar a ser selecionado para iniciar a importação.

    Você pode monitorar o progresso da operação de importação seguindo as notificações do portal do Azure ou exibindo os eventos no log de atividades.

    Importante

    O suporte ao log de atividades ainda não está disponível nas camadas Enterprise.

    Captura de ecrã a mostrar o progresso da importação na área de notificações.

Exportar

A exportação permite exportar os dados armazenados no Cache Redis do Azure para o(s) arquivo(s) RDB compatível com Redis. Você pode usar esse recurso para mover dados de uma instância do Cache Redis do Azure para outra ou para outro servidor Redis. Durante o processo de exportação, um arquivo temporário é criado na VM que hospeda a instância do servidor Cache do Azure para Redis. Em seguida, o arquivo é carregado para a conta de armazenamento escolhida. Quando a operação de exportação é concluída com um status de sucesso ou falha, o arquivo temporário é excluído.

  1. Para exportar o conteúdo atual do cache para o armazenamento, navegue até o cache no portal do Azure e selecione Exportar dados no menu Recurso. Você verá Escolher contêiner de armazenamento no painel de trabalho.

    Captura de ecrã a mostrar a opção Exportar dados selecionada no menu Recurso

  2. Selecione Escolher contêiner de armazenamento e para exibir uma lista de contas de armazenamento disponíveis. Selecione a conta de armazenamento desejada. A conta de armazenamento deve estar na mesma região do cache. Se você estiver usando a identidade gerenciada para autenticação, a conta de armazenamento poderá estar em uma assinatura diferente. Caso contrário, a conta de armazenamento deve estar na mesma assinatura que o cache.

    Importante

    • A exportação funciona com blobs de página suportados por contas de armazenamento clássicas e do Gerenciador de Recursos.
    • O Cache Redis do Azure não oferece suporte à exportação para contas de armazenamento ADLS Gen2.
    • No momento, a exportação não é suportada por contas de armazenamento de Blob.
    • Se a exportação de dados de cache para contas de armazenamento habilitadas para firewall falhar, consulte E se eu tiver o firewall habilitado na minha conta de armazenamento?

    Para mais informações, veja Visão geral de conta de armazenamento do Azure.

    Captura de ecrã a mostrar uma lista de contentores no painel de trabalho.

  3. Escolha o contêiner de armazenamento que deseja manter sua exportação e, em seguida , Selecionar. Se desejar um novo contêiner, selecione Adicionar contêiner para adicioná-lo primeiro e, em seguida, selecione-o na lista.

    Captura de ecrã de uma lista de contentores com um realçado e um botão de seleção.

  4. Digite um prefixo de nome de Blob e selecione Exportar para iniciar o processo de exportação. O prefixo do nome do blob é usado para prefixar os nomes dos arquivos gerados por essa operação de exportação.

    Captura de tela mostrando um prefixo de nome de blob e um botão Exportar.

    Você pode monitorar o progresso da operação de exportação seguindo as notificações do portal do Azure ou exibindo os eventos no log de auditoria.

    Captura de tela mostrando o progresso da exportação na área de notificações.

    Os caches permanecem disponíveis para uso durante o processo de exportação.

FAQ sobre Importação/Exportação

Esta seção contém perguntas frequentes sobre o recurso Importar/Exportar.

Quais níveis suportam Importar/Exportar?

Os recursos de importação e exportação estão disponíveis apenas nas camadas Premium, Enterprise e Enterprise Flash.

Posso importar dados de qualquer servidor Redis?

Sim, você pode importar dados que foram exportados do Cache do Azure para instâncias Redis. Você pode importar arquivos RDB de qualquer servidor Redis em execução em qualquer nuvem ou ambiente. Os ambientes incluem Linux, Windows ou provedores de nuvem, como a Amazon Web Services. Para importar esses dados, carregue o arquivo RDB do servidor Redis desejado em uma página ou blob de bloco em uma Conta de Armazenamento do Azure. Em seguida, importe-o para sua instância premium do Cache do Azure para Redis.

Por exemplo, você pode querer:

  1. Exporte os dados do cache de produção.

  2. Em seguida, importe-o para um cache usado como parte de um ambiente de preparo para teste ou migração.

Importante

Para importar com êxito dados exportados de servidores Redis diferentes do Cache Redis do Azure ao usar um blob de página, o tamanho do blob de página deve ser alinhado em um limite de 512 bytes. Para obter um código de exemplo para executar qualquer preenchimento de bytes necessário, consulte Upload de blob de página de exemplo.

Que versões RDB posso importar?

Para obter mais informações sobre as versões RDB suportadas usadas com importação, consulte a seção de compatibilidade.

Meu cache está disponível durante uma operação de Importação/Exportação?

  • Exportar - Os caches permanecem disponíveis e você pode continuar a usar o cache durante uma operação de exportação.
  • Importar - Os caches ficam indisponíveis quando uma operação de importação é iniciada e ficam disponíveis para uso quando a operação de importação é concluída.

Posso usar Importar/Exportar com cluster Redis?

Sim, e você pode importar/exportar entre um cache clusterizado e um cache não clusterizado. Como o cluster Redis suporta apenas o banco de dados 0, todos os dados em bancos de dados diferentes de 0 não são importados. Quando os dados de cache clusterizado são importados, as chaves são redistribuídas entre os fragmentos do cluster.

Como a Importação/Exportação funciona com uma configuração de bancos de dados personalizada?

Algumas camadas de preços têm limites de bancos de dados diferentes, portanto, há algumas considerações ao importar se você configurou um valor personalizado para a configuração durante a criação do databases cache.

  • Ao importar para um nível de preços com um limite inferior databases ao nível do qual exportou:
    • Se você estiver usando o número padrão do , que é 16 para todos os níveis de databasespreço, nenhum dado será perdido.
    • Se você estiver usando um número personalizado que esteja dentro dos databases limites da camada para a qual está importando, nenhum dado será perdido.
    • Se forem exportados dados contidos em um banco de dados que exceda os limites da nova camada, os dados desses bancos de dados superiores não serão importados.

Qual é a diferença entre Importar/Exportar e a persistência Redis?

O recurso de persistência do Cache do Azure para Redis é principalmente um recurso de durabilidade de dados. Por outro lado, a funcionalidade de importação/exportação é projetada como um método para fazer backups periódicos de dados para recuperação point-in-time.

Quando a persistência é configurada, o cache persiste um instantâneo dos dados no disco, com base em uma frequência de backup configurável. Os dados são gravados com um formato binário proprietário Redis. Se ocorrer um evento catastrófico que desative os caches primário e de réplica, os dados do cache serão restaurados automaticamente usando o instantâneo mais recente.

A persistência de dados foi projetada para recuperação de desastres. Não se destina a ser um mecanismo de recuperação point-in-time.

  • Na camada Premium, o arquivo de persistência de dados é armazenado no Armazenamento do Azure, mas o arquivo não pode ser importado para um cache diferente.
  • Nas camadas Enterprise, o arquivo de persistência de dados é armazenado em um disco montado que não é acessível ao usuário.

Se você quiser fazer backups periódicos de dados para recuperação point-in-time, recomendamos usar a funcionalidade de importação/exportação . Para obter mais informações, consulte Como configurar a persistência de dados para o Cache do Azure para Redis.

Posso automatizar a importação/exportação usando PowerShell, CLI ou outros clientes de gerenciamento?

Sim, consulte as seguintes instruções para o nível Premium :

Para as camadas Enterprise e Enterprise Flash :

Recebi um erro de tempo limite durante a minha operação de Importação/Exportação. O que é que isso significa?

À esquerda, se você permanecer em Importar dados ou Exportar dados por mais de 15 minutos antes de iniciar a operação, receberá um erro com uma mensagem de erro semelhante ao exemplo a seguir:

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 resolver esse erro, inicie a operação de importação ou exportação antes de decorridos 15 minutos.

Recebi um erro ao exportar meus dados para o Armazenamento de Blobs do Azure. O que aconteceu?

A exportação funciona apenas com arquivos RDB armazenados como blobs de página. Outros tipos de blob não são suportados no momento, incluindo contas de armazenamento de Blob com níveis quentes e frios. Para mais informações, veja Visão geral de conta de armazenamento do Azure. Se você estiver usando uma chave de acesso para autenticar uma conta de armazenamento, ter exceções de firewall na conta de armazenamento tende a fazer com que o processo de importação/exportação falhe.

E se eu tiver o firewall ativado na minha conta de armazenamento?

Se estiver usando uma instância de camada Premium , você precisará marcar "Permitir que os serviços do Azure na lista de serviços confiáveis acessem esta conta de armazenamento" nas configurações da sua conta de armazenamento. Em seguida, use a identidade gerenciada (Sistema ou Usuário atribuído) e provisione a função RBAC do Colaborador de Dados de Blob de Armazenamento para esse ID de objeto.

Para obter mais informações, consulte Identidade gerenciada para contas de armazenamento - Cache Redis do Azure

As instâncias Enterprise e Enterprise Flash não suportam a importação ou exportação de dados para contas de armazenamento que usam firewalls ou pontos de extremidade privados. A conta de armazenamento deve ter acesso à rede pública.

Posso importar ou exportar dados de uma conta de armazenamento em uma assinatura diferente do meu cache?

Na camada Premium, você pode importar e exportar dados de uma conta de armazenamento em uma assinatura diferente do cache, mas deve usar a identidade gerenciada como método de autenticação. Você precisará selecionar a assinatura escolhida que mantém a conta de armazenamento ao configurar a importação ou exportação.

Quais permissões precisam ser concedidas ao token SAS (assinatura de acesso compartilhado) do contêiner da conta de armazenamento para permitir a exportação?

Para que a exportação para uma conta de armazenamento do Azure funcione com êxito, o token de assinatura de acesso compartilhado (SAS) deve ter as seguintes permissões:

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

Próximos passos

Saiba mais sobre os recursos do Cache do Azure para Redis.