O Firestore é um banco de dados de documentos NoSQL criado para oferecer escalonamento automático, alto desempenho e facilidade no desenvolvimento de aplicativos. O Firestore é um banco de dados de documentos NoSQL criado para oferecer escalonamento automático, alto desempenho e facilidade no desenvolvimento de aplicativos. Como sucessor do Datastore, o Firestore é o banco de dados recomendado para todos os novos aplicativos. O Firestore oferece várias interfaces, incluindo uma API compatível com o Datastore para oferecer suporte a código legado criado no Datastore.
Como usar o modo Datastore com o App Engine
Para usar o modo Datastore com o App Engine:
Se ainda não tiver feito isso, crie um banco de dados e escolha o Firestore no modo Datastore.
É possível usar os bancos de dados do Datastore atuais com aplicativos do App Engine. Esses bancos de dados atuais serão atualizados automaticamente para o Firestore no modo Datastore.
Se você tiver um novo app Python 3, use a biblioteca de cliente do modo Datastore para interagir com o modo Datastore:
No app, declare o Datastore como uma dependência adicionando
google-cloud-datastoreao arquivorequirements.txtdo app. Saiba mais sobre como especificar dependências.Use a biblioteca de cliente do Google Cloud para ler e gravar entidades e consultar dados.
Se você planeja fazer upgrade do aplicativo Python 2 para o Python 3, o Google recomenda portar seu aplicativo Python 2 que usa o App Engine NDB para o Python 3. Em seguida, migre para o Cloud NDB. Para saber como acessar o App Engine NDB no Python 3, consulte a página Como acessar serviços em pacote legados no App Engine para Python 3.
Para ver outros recursos e um exemplo de migração de um app Python 2
webappque usa o App Engine NDB para um aplicativo Python 3 Flask equivalente com o App Engine NDB ativado, consulte os serviços incluídos no Python 3.
Como configurar índices
O modo Datastore usa índices para cada consulta feita pelo aplicativo. Esses índices são atualizados sempre que uma entidade sofre alterações para que os resultados sejam retornados com rapidez quando o aplicativo fizer uma consulta.
O modo Datastore cria automaticamente índices de propriedade única para o uso com tipos simples de consultas. Para consultas complexas que incluem várias propriedades, você precisará configurar índices compostos no arquivo
index.yamldo app.O servidor de desenvolvimento do App Engine atualizará o arquivo
index.yamlcom os índices compostos necessários para executar os testes. Da mesma forma, o emulador do modo Datastore pode gerar índices ao executar testes.Também é possível adicionar os índices ao arquivo
index.yamldo app manualmente se você não executar testes locais ou se os testes não incluírem consultas complexas.Como configurar permissões de banco de dados
Por padrão, o app tem todas as permissões necessárias para ler e gravar no modo Datastore e nos bancos de dados do Firestore no projetoGoogle Cloud .
Para gerenciar essas permissões, cada aplicativo do App Engine usa uma conta de serviço padrão que concede acesso total de leitura e gravação ao modo Datastore e aos bancos de dados do Firestore no mesmo projeto do aplicativo. É possível alterar as permissões da conta de serviço padrão, mas o aplicativo poderá perder o acesso, a menos que você atribua um papel do IAM com as permissões necessárias.
Para informações sobre como permitir que outros usuários, aplicativos ou projetos acessem um banco de dados, consulte Como acessar o banco de dados.
Como usar o emulador do modo Datastore para testes locais
A Google Cloud CLI inclui um emulador local do modo de produção do modo Datastore. Use o emulador para desenvolver e testar seu aplicativo localmente. Além disso, com o emulador, é possível gerar índices para a instância do modo de produção do Datastore e excluir índices desnecessários.
Se você usar o servidor de desenvolvimento local do Google App Engine para testar seu aplicativo, é possível garantir que o servidor use o emulador do modo Datastore definindo a sinalização
--support_datastore_emulator=trueao iniciar o servidor.Se você estiver usando o emulador do modo Datastore, o dev_appserver exibirá:
... Using Cloud Datastore Emulator.Preços, cotas e limites
O modo Datastore oferece uma cota sem custo financeiro com limites diários. As contas pagas oferecem operações ilimitadas de armazenamento, leitura e gravação. Para mais informações, consulte a página Cotas do Datastore.