Partilhar via


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 utilizando um blob numa 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

Utilize a importação para colocar ficheiros da RDB compatíveis com o Redis de qualquer servidor do Redis em execução em qualquer cloud ou ambiente, incluindo o Redis em execução no Linux, Windows ou qualquer fornecedor de cloud, como o Amazon Web Services e outros. A importação de dados é uma forma fácil de criar uma 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 estiver a utilizar a identidade gerida para autenticação, a conta de armazenamento pode estar numa subscrição diferente. Para obter mais informações, veja Introdução ao Armazenamento de Blobs 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

    A cache não está acessível a clientes de cache durante o processo de importação e todos os dados existentes na cache são eliminados.

    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 ficheiro é carregado na conta de armazenamento escolhida. Quando a operação de exportação tiver sido concluída com um estado de êxito ou de falha, o ficheiro temporário é eliminado.

  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áginas que são suportados pelas contas de armazenamento clássica e do Gestor 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 da cache para contas de armazenamento com Firewall ativada falhar, consulte E se tiver a firewall ativada 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 Importar/Exportar

Esta secção contém perguntas mais frequentes sobre a funcionalidade Importar/Exportar.

Quais os escalões que 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 do 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 fornecedores de serviços na cloud, tais como o 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, pode pretender:

  1. Exportar os dados da cache de produção.

  2. Em seguida, importe-o para uma cache utilizada como parte de um ambiente de teste para testes 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 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 as versões da RDB suportadas e utilizadas com a importação, consulte a secção de compatibilidade.

A minha cache está disponível durante uma operação de Importar/Exportar?

  • Exportar - As caches permanecem disponíveis e pode continuar a utilizar a sua cache durante uma operação de exportação.
  • Importar - As caches ficam indisponíveis quando uma operação de importação é iniciada e ficam disponíveis para utilização 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.

Em que Importar/Exportar difere da 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 Importar/Exportar é concebida como um método para realizar cópias de segurança periódicas dos dados para recuperação partir de um ponto anterior no tempo.

Quando a a persistência é configurada, na cache persiste um instantâneo dos dados no disco, com base numa frequência de cópia de segurança configurável. Os dados são gravados com um formato binário proprietário Redis. Se ocorrer um evento catastrófico que desative as caches principal e de réplica, os dados da cache são restaurados automaticamente utilizando o instantâneo mais recente.

A persistência de dados foi concebida para recuperação após desastre. Não se destina a ser um mecanismo de recuperação partir de um ponto anterior no tempo.

  • 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 pretender realizar cópias de segurança periódicas dos dados para uma recuperação para um ponto anterior no tempo, recomendamos a utilização da funcionaldiade Importar/Exportar. Para obter mais informações, consulte Como configurar a persistência de dados para o Cache do Azure para Redis.

Posso automatizar Importar/Exportar utilizando o PowerShell, a CLI ou outros clientes de gestão?

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

Para as camadas Enterprise e Enterprise Flash :

Recebi um erro de tempo limite excedido durante a minha operação de Importar/Exportar. O que 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 este erro, inicie a operação de importação ou exportação antes de decorridos 15 minutos.

Recebi um erro ao exportar os 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 estiver a utilizar uma chave de acesso para autenticar uma conta de armazenamento, a existência de exceções da firewall na conta de armazenamento tende a fazer com que o processo de importar/exportar falhe.

E se tiver a firewall ativada 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, utilize a identidade gerida (Sistema ou Utilizador atribuído) e forneça a função RBAC de Contribuidor de Dados de Blobs de Armazenamento a esse ID do objeto.

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

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 numa subscrição diferente da minha 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. Terá de selecionar a subscrição escolhida que detém a conta de armazenamento quando 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 tenha êxito, o token de assinatura de acesso partilhado (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.