Backups automatizados

Os usuários do plano Blaze podem configurar o Firebase Realtime Database para backups automáticos, um recurso de autoatendimento que permite backups diários dos dados e regras do seu aplicativo de banco de dados no formato JSON para um bucket do Cloud Storage .

Configurar

Para começar, visite a guia Backups na seção Banco de dados do console do Firebase e o assistente o guiará na configuração de seus backups automatizados.

Para economizar nos custos de armazenamento, habilitamos a compactação Gzip por padrão, e você pode optar por habilitar uma política de ciclo de vida de 30 dias em seu bucket para que backups com mais de 30 dias sejam excluídos automaticamente.

Você pode visualizar o status e a atividade de backup diretamente no console do Firebase, onde também pode iniciar um backup manual. Isso pode ser útil para obter instantâneos cronometrados específicos ou como uma ação de segurança antes de realizar qualquer alteração no código.

Depois de configurado, um novo bucket do Cloud Storage será criado para você com a permissão WRITER para Firebase. Você não deve armazenar dados neste bucket aos quais não se sente confortável com o acesso do Firebase. O Firebase não terá acesso adicional aos seus outros buckets do Cloud Storage ou a qualquer outra área do Google Cloud.

Restaurando de backups

Para restaurar seu Firebase a partir de um backup, primeiro baixe o arquivo do Cloud Storage para seu disco local. Isso pode ser feito clicando no nome do arquivo na seção de atividades de backup ou na interface do bucket do Cloud Storage. Se o arquivo estiver compactado com Gzip, primeiro descompacte o arquivo.

Existem duas maneiras de importar seus dados:

Método 1: Clique no botão Importar JSON na seção Dados do seu banco de dados e selecione o arquivo JSON de dados do seu aplicativo.

Método 2: você também pode emitir uma solicitação CURL na linha de comando.

Primeiro, recupere um segredo do seu Firebase, que você pode obter visitando a página de configurações do banco de dados .

Em seguida, insira o seguinte em seu terminal, substituindo os campos DATABASE_NAME e SECRET por seus próprios valores:

curl 'https://<DATABASE_NAME>.firebaseio.com/.json?auth=<SECRET>&print=silent' -x PUT -d @<DATABASE_NAME>.json

Se você estiver tendo problemas para restaurar um backup de um banco de dados muito grande, entre em contato com nossa equipe de suporte .

Agendamento

O backup do seu banco de dados é atribuído a um horário específico todos os dias, o que garante carga uniforme e maior disponibilidade para todos os clientes de backup. Esse backup agendado ocorrerá independentemente de você fazer backups manuais ao longo do dia.

Nomenclatura de arquivo

Os arquivos transferidos para seu bucket do Cloud Storage terão carimbo de data/hora (padrão ISO 8601) e usarão as seguintes convenções de nomenclatura:

  • Dados do banco de dados: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_data.json
  • Regras do banco de dados: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_rules.json

Se o Gzip estiver ativado, um sufixo .gz será anexado aos nomes dos arquivos. Você pode encontrar facilmente os backups de uma data ou hora específica usando a pesquisa de prefixo do Cloud Storage.

Compressão Gzip

Por padrão, compactamos seus arquivos de backup usando compactação Gzip para economizar custos de armazenamento e diminuir o tempo de transferência. O tamanho do arquivo compactado varia dependendo das características dos dados do seu banco de dados, mas os bancos de dados típicos podem diminuir para ⅓ do tamanho original, economizando custos de armazenamento e diminuindo o tempo de upload para seus backups.

Para descompactar seus arquivos JSON compactados com Gzip, emita um comando de linha de comando usando o binário gunzip que é fornecido por padrão para OS-X e a maioria das distribuições Linux.

gunzip <DATABASE_NAME>.json.gz  # Will unzip to <DATABASE_NAME>.json

Ciclo de vida de 30 dias de armazenamento

Oferecemos uma opção de configuração fácil de usar que ativa uma política padrão de ciclo de vida de objeto de 30 dias para seu bucket do Cloud Storage. Quando ativado, os arquivos do seu bucket serão excluídos automaticamente após 30 dias. Isso ajuda a reduzir backups antigos indesejados, economizando custos de armazenamento e mantendo seu diretório de bucket limpo. Se você colocar outros arquivos no bucket de backups automatizados, eles também serão excluídos com a mesma política.

Custos

O recurso de backups pode ser habilitado para projetos no plano Blaze sem custo adicional. No entanto, serão cobradas taxas padrão pelos arquivos de backup colocados em seu intervalo do Cloud Storage. Você pode ativar o ciclo de vida de 30 dias de compactação e armazenamento Gzip para reduzir seus custos de armazenamento.