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 é a mais nova versão do Datastore e apresenta várias melhorias em relação a ele.
Como o Firestore no modo Datastore é otimizado para casos de uso do servidor e para o App Engine, recomendamos usar o Firestore no modo Datastore para bancos de dados que serão usados principalmente por aplicativos do App Engine. O Firestore no modo nativo é mais útil para casos de uso de notificações móveis e em tempo real. Para mais informações sobre os modos do Firestore, consulte Como escolher entre o modo nativo e o modo 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. - No seu aplicativo, declare o Datastore como uma dependência usando o comando - go get cloud.google.com/go/datastore. Como alternativa, declare dependências no arquivo- go.moddo seu aplicativo. Saiba mais sobre como especificar dependências.
- Use a biblioteca de cliente do Google Cloud para ler e gravar entidades e consultar dados. 
 - 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 locaisA 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 gratuita 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.