O Backup do Google Datastore causa erros

1

Estamos realizando backups para nossos documentos do Google Datastore por meio de um cron, conforme descrito aqui . O banco de dados tem cerca de 55 GB, incluindo índices, e fazemos um backup completo a cada 24 horas. O balde que salvamos pertence a outro projeto.

Os backups são bem-sucedidos e podemos restaurá-los em nosso ambiente de preparação sem problemas!

No entanto, vemos muitos erros chegando enquanto o backup está em execução. Os erros são provenientes do módulo ah-builtin-python-bundle e a mensagem de erro é Request was aborted after waiting too long to attempt to service your request. Isso faz com que nosso monitoramento nos avise (temos um limiar de 1,5 erros por segundo durante um tempo de 3 minutos).

Obviamente, gostaríamos de nos livrar desses erros para não ter alertas falsos positivos em nosso monitoramento.

    
por Sgoettschkes 25.03.2016 / 09:29

2 respostas

2

O backup inicia uma tarefa do MapReduce na qual os fãs trabalham em tarefas de envio. É normal que uma dessas tarefas atinja o tempo limite enquanto aguarda na fila pendente e seja repetida, o que resultaria em um erro " Request was aborted after waiting too long to attempt to service your request " nos logs.

Se esses erros aparecerem, você pode tentar eliminá-los ajustando sua fila ou parâmetros de escala .

    
por 22.11.2016 / 19:34
0

Eu sei que esse post é antigo, mas deixarei aqui algumas documentações interessantes que você pode achar útil em relação à nova abordagem sugerida para agende exportações no Cloud Datastore usando o App Engine . Eu acho que seus problemas ainda não são reproduzíveis, então eu sugiro que qualquer um que venha a este post seja melhor para usar este novo recurso do Cloud Platform.

Certifique-se de consultar o link anterior para uma descrição detalhada (e atualizada, porque até o momento, este recurso está em beta e pode mudar), mas abaixo deixarei um resumo do principais etapas para agendar exportações do Cloud Datastore usando o cron e o App Engine:

  1. Crie um intervalo do Cloud Storage no mesmo local que o armazenamento de dados.
  2. Atribua a função Administrador de exportação do Cloud Datastore ao seu aplicativo Conta de serviço padrão do mecanismo (que deve ser semelhante [email protected] ).
  3. Atribuir permissões de gravação ao depósito para a conta de serviço padrão do App Engine.
  4. Crie uma nova pasta local com os arquivos app.yaml (configuração do App Engine), cloud_datastore_admin.py (próprio aplicativo do App Engine) e cron.yaml (trabalho cron) e preencha-os com o conteúdo no link que compartilhei desde o início, certificando-se de substituir qualquer conteúdo necessário para corresponder à nomenclatura dos seus recursos. Edite também o arquivo de configuração cron para o seu desejo, a fim de configurar uma política de exportação apropriada de acordo com seus requisitos.
  5. Depois de configurar a configuração completa do seu aplicativo, implante-a (incluindo a tarefa cron ), teste-a e veja suas exportações no intervalo do Cloud Storage.
por 30.01.2018 / 10:42