Partilhar via


Importar e exportar dados no Cache Redis do Azure

Importante

O Cache do Azure para Redis anunciou seu cronograma de desativação para todas as SKUs. Recomendamos mover as suas instâncias existentes do Azure Cache para Redis para Azure Managed Redis o mais rápido possível.

Para mais detalhes sobre a aposentadoria:

A funcionalidade de importação e exportação do Azure Cache para Redis permite a importação ou exportação de dados a partir de ou para as instâncias de Azure Redis Cache como instantâneos de Banco de Dados Redis (RDB). Os instantâneos são importados ou exportados usando um blob em uma conta de Armazenamento do Azure.

Você pode usar a funcionalidade de importação e exportação do Redis do Azure para gerenciamento de dados, para migrar entre diferentes instâncias de cache ou para preencher um cache com dados antes do uso. Este artigo descreve como importar e exportar dados no Azure Redis e responde a perguntas frequentes.

Âmbito da disponibilidade

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

A importação e a exportação são suportadas nas camadas Premium, Enterprise e Enterprise Flash.

Compatibilidade

Importação

  • Você pode importar seus instantâneos RDB de blobs de página ou blobs de bloco.
  • Você pode importar arquivos RDB de caches do nível Premium para caches dos níveis Enterprise e Enterprise Flash.
  • Não é possível importar caches de camadas Redis Enterprise e Enterprise Flash para caches de camada Premium.

Exportação

  • Você pode exportar as suas capturas como blobs de página RDB no nível Premium ou como .gz blobs de bloco nos níveis Enterprise.
  • As contas de armazenamento de Blob não suportam exportação.

Versões

  • Os caches Redis 4.0 suportam RDB versão 8 e inferior. Os caches Redis 6.0 suportam RDB versão 9 e inferior.
  • Não é possível importar backups exportados de versões mais recentes do Redis, como o Redis 6.0, para versões mais antigas, como o Redis 4.0.

Pré-requisitos

  • Um cache da camada Premium, Enterprise ou Enterprise Flash no Azure Cache para Redis.
  • Para importar ficheiros, utilize um ficheiro RDB ou ficheiros carregados em blobs de página ou de bloco no Armazenamento do Azure, mantendo-os na mesma região e subscrição que a sua cache Redis do Azure.

    Nota

    Se você usar a identidade gerenciada para autenticação de conta de armazenamento, a conta de armazenamento poderá estar em uma assinatura diferente.

Importar

Você pode usar a importação para trazer arquivos RDB compatíveis com Redis de qualquer servidor Redis em execução em qualquer nuvem ou ambiente, incluindo Linux, Windows ou outros provedores de nuvem, como a Amazon Web Services. A importação de dados é uma forma fácil de criar uma cache com dados pré-preenchidos.

Durante o processo de importação, o Redis do Azure carrega os arquivos RDB do Armazenamento do Azure na memória e, em seguida, insere as chaves no cache.

Importante

A importação de dados exclui dados de cache preexistentes e o cache não é acessível pelos clientes de cache durante o processo de importação.

Importante

Não há suporte para a importação a partir de níveis do Redis Enterprise para a camada Premium.

Nota

Antes de importar, certifique-se de que o(s) arquivo(s) RDB seja(m) carregado(s) na página ou bloqueie blobs no Armazenamento do Azure. Se você seguir o procedimento de exportação primeiro, seu arquivo RDB já está armazenado em um blob de página e está pronto para importação.

  1. Para importar um ou mais blobs de cache, na página de cache Redis no portal do Azure, selecione Importar dados em Administração no menu de navegação esquerdo.

  2. Na página Importar dados, selecione um Método de Autenticação e, em seguida, selecione Escolher Blob(s).

    Captura de tela mostrando a página Importar dados com Escolher Blob(s) selecionado.

  3. Na página Contas de armazenamento , selecione a conta de armazenamento que contém os dados a serem importados.

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

  4. Na página Contêineres , selecione o contêiner dentro da conta de armazenamento que contém os dados a serem importados.

    Captura de tela mostrando uma lista de contêineres na conta de armazenamento.

  5. Na página do contêiner, marque as caixas de seleção ao lado de um ou mais blobs para importar e selecione Selecionar.

    Captura de tela que mostra a seleção de blobs do contêiner.

  6. Na página Importar dados , selecione Importar para iniciar o processo de importação.

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

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

Captura de ecrã a mostrar o progresso da importação no painel Notificações.

Exportar

O processo de exportação exporta os dados armazenados no cache Redis do Azure para arquivos RDB. Você pode usar esse recurso para mover dados de um cache ou servidor Redis do Azure para outro.

Durante o processo de exportação, um arquivo temporário é criado na máquina virtual que hospeda a instância do servidor Redis do Azure. O ficheiro é então carregado para a conta de armazenamento escolhida. Quando a operação de exportação é concluída com êxito ou falha, o arquivo temporário é excluído.

Importante

  • O Azure Redis não oferece suporte à exportação para contas de armazenamento do Azure Data Lake Storage Gen2.
  • As contas de armazenamento de Blob não suportam a exportação Redis do Azure.
  • Enterprise e Enterprise Flash não suportam a importação ou exportação de ou para contas de armazenamento que usam firewalls ou pontos de extremidade privados. A conta de armazenamento deve ter acesso à rede pública.

Se a exportação para uma conta de armazenamento habilitada para firewall falhar, consulte E se eu tiver o firewall habilitado na minha conta de armazenamento? Para obter mais informações, consulte Visão geral da conta de armazenamento do Azure.

  1. Para exportar o conteúdo atual do cache para o armazenamento, na página do cache Redis no portal do Azure, selecione Exportar dados em Administração no menu de navegação esquerdo.

  2. Na página Exportar dados , para o prefixo do nome do Blob, insira um prefixo para os nomes dos arquivos gerados por essa operação de exportação. Selecione um Método de Autenticação e, em seguida, selecione Escolher Contêiner de Armazenamento.

    Captura de tela mostrando Exportar dados e Escolher contêiner de armazenamento selecionado.

  3. Na página Contas de armazenamento , selecione a conta de armazenamento que contém os dados a serem exportados.

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

  4. Na página Contêineres , se quiser criar um novo contêiner para a exportação, selecione Contêiner e, na página Novo Contêiner , insira um nome para o contêiner e selecione Criar. Caso contrário, selecione o contêiner existente que você deseja usar.

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

  5. Na página Contêineres , selecione o contêiner que deseja usar para a exportação e selecione Selecionar.

    Captura de tela mostrando o contêiner de armazenamento selecionado e o botão Selecionar.

  6. Na página Exportar dados , selecione Exportar.

    Captura de ecrã a mostrar o 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 atividades. Os caches permanecem disponíveis para uso durante o processo de exportação.

Captura de tela mostrando o progresso da exportação no painel Notificação.

Perguntas frequentes sobre importação e exportação

Esta secção contém perguntas frequentes sobre os recursos de importação e exportação.

Quais camadas suportam importação-exportação?

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 do Redis?

Sim, você pode importar dados que foram exportados de instâncias do Azure Redis. Você pode importar arquivos RDB de qualquer servidor Redis em execução em qualquer nuvem ou ambiente, incluindo Linux, Windows ou outros provedores de nuvem, como a Amazon Web Services.

Para importar estes dados, carregue o arquivo RDB a partir do servidor Redis para uma página ou blob de bloco numa conta de Azure Storage. Em seguida, importe-o para sua instância de cache Redis do Azure.

Por exemplo, talvez você queira exportar os dados do cache de produção e importá-los para um cache que faça parte de um ambiente de preparo para teste ou migração.

Importante

Para importar com êxito dados de blob de página exportados de servidores Redis que não sejam do Azure, o tamanho do blob de página deve ser alinhado em um limite de 512 bytes. Para obter um exemplo de código para realizar qualquer preenchimento de bytes necessário, consulte Exemplo de carregamento de blob de páginas.

Que versões da RDB posso importar?

Para obter mais informações sobre versões RDB suportadas para importação, consulte Compatibilidade.

Meu cache está disponível durante uma operação de importação-exportação?

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

Posso usar a funcionalidade de importação-exportação com clustering no Redis?

Sim, e você pode importar e 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 configurações de banco de dados personalizadas?

Alguns níveis de preços têm limites de banco de dados diferentes. Se configurou um valor personalizado para a configuração do databases durante a criação da cache, há algumas considerações a serem consideradas ao importar.

Quando você importa para uma camada de preço com um limite inferior databases ao nível do qual você exportou:

  • Se utilizar o número padrão de databases, que é 16 para todos os níveis de preços, nenhum dado será perdido.
  • Se utilizares um número personalizado de databases que esteja dentro dos limites do nível para o qual estás a importar, não perderás dados.
  • Se os dados exportados forem de um banco de dados que exceda os limites da nova camada, os dados dos bancos de dados excedentes não serão importados.

Qual é a diferença entre importação-exportação e persistência de dados Redis?

O recurso de persistência de dados do Cache do Azure para Redis é principalmente para durabilidade de dados, enquanto a funcionalidade de importação-exportação é projetada para fazer backups periódicos de dados para recuperação point-in-time (PITR).

Quando você configura a persistência de dados, 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.

Na camada Premium, o arquivo de persistência de dados é armazenado no Armazenamento do Azure, mas você não pode importar o arquivo 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 um evento catastrófico desativar os caches primário e de réplica, os dados de cache persistentes serão restaurados automaticamente usando o instantâneo mais recente. A persistência de dados foi projetada para recuperação de desastres e não se destina a ser um mecanismo PITR.

Para fazer backups periódicos de dados para PITR, use 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 o Azure PowerShell ou a CLI do Azure?

Sim. Para o nível Premium, consulte o seguinte conteúdo:

Para as camadas Enterprise e Enterprise Flash, consulte o seguinte conteúdo:

Por que recebi um erro ao exportar meus dados para o Armazenamento de Blobs do Azure?

A exportação funciona apenas com arquivos RDB armazenados como blobs de página. Outros tipos de blob não são suportados, incluindo contas de armazenamento de blob com camadas quentes e frias. Para mais informações, veja Visão geral de conta de armazenamento do Azure.

Se você usar uma chave de acesso para autenticar uma conta de armazenamento, ter exceções de firewall na conta de armazenamento pode fazer com que os processos de importação-exportação falhem.

E se tiver a firewall ativada na minha conta de armazenamento?

Para uma instância de nível Premium, você deve selecionar Permitir serviços do Azure na lista de serviços confiáveis para acessar essa conta de armazenamento nas configurações da sua conta de armazenamento. Em seguida, use a identidade gerenciada atribuída pelo sistema ou pelo usuário e provisione a função RBAC (controle de acesso baseado na função) 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.

As instâncias Enterprise e Enterprise Flash não suportam a importação ou exportação de ou 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 numa subscrição diferente da minha cache?

No nível Premium, você pode importar e exportar dados de uma conta de armazenamento em uma assinatura diferente do cache se usar a identidade gerenciada como método de autenticação. Você precisa selecionar a assinatura que mantém a conta de armazenamento ao configurar a importação ou exportação.

Quais as permissões que necessito que sejam concedidas ao token de assinatura de acesso partilhado (SAS) do contentor 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