O Firestore é um banco de dados de documentos NoSQL criado para fornecer 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 o uso do 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.
Neste documento, descrevemos como usar a biblioteca de cliente do Google Cloud para armazenar e recuperar dados em um banco de dados no modo Datastore.
Pré-requisitos e configuração
Siga as instruções em "Hello, World!" para Go no App Engine para configurar o ambiente e o projeto, além de compreender a estrutura de aplicativos em Go no App Engine. Anote e salve o ID do projeto. Você precisará dele para executar o aplicativo de amostra descrito neste documento.
Clonar o repositório
Faça o download ou clone da amostra:
go get -d -v github.com/GoogleCloudPlatform/golang-samples/datastore
cd $GOPATH/src/github.com/GoogleCloudPlatform/golang-samples/appengine_flexible/datastore
Editar a configuração do projeto e definir as dependências
Em app.yaml
, defina GCLOUD_DATASET_ID
para seu projeto. Esse valor é o código do seu projeto.
Código do aplicativo
O aplicativo de amostra registra, recupera e exibe IPs de visitantes. A entrada de registro é uma classe de dois campos simples que recebe o tipo visit
e é salva no modo Datastore com o comando put do cliente do Datastore. Em seguida, as dez visitas mais recentes são recuperadas em ordem decrescente pelos comandos NewQuery e GetAll do cliente do Datastore (links em inglês).
Como usar arquivos index.yaml
O app de exemplo faz consultas simples. Consultas mais elaboradas do modo Datastore exigem um ou mais índices, que você precisa especificar em um arquivo index.yaml
enviado com o aplicativo. Esse arquivo pode ser criado ou gerado automaticamente ao testar seu aplicativo localmente.
Teste local
Se precisar desenvolver e testar seu aplicativo localmente, é possível usar o emulador de modo Datastore.
Para saber mais
Para informações completas sobre o modo Datastore, incluindo otimizações e conceitos, veja a documentação do Cloud Firestore no modo Datastore.