BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Google anuncia o Firestore, um banco de dados orientado a documentos

Google anuncia o Firestore, um banco de dados orientado a documentos

Favoritos

Google anunciou o Cloud Firestore, um banco de dados orientado a documentos para dispositivos móveis, web e aplicações de servidor.

No ano passado, o InfoQ lançou uma notícia sobre o Google Firebase, um banco de dados para desenvolvimento móvel e web, que oferece acesso em tempo real e off-line aos dados e integração com muitos serviços do Google. Agora foi apresentado o Cloud Firestore, um banco de dados NoSQL na nuvem para aplicativos móveis, web e de servidor. As principais características são: modelo de dados flexível, consultas complexas, atualizações de dados em tempo real, suporte para acesso off-line, escalabilidade em várias regiões, consistência forte, operações em lote, suporte para transações e integração com o resto do ecossistema do Google, incluindo Cloud Functions. Além das APIs REST e RPC, o Firestore vem com SDKs para Android, iOS (Swift e Objective-C), JavaScript (incluindo Node.js), Java, Python e Go.

Parece que com o Firestore, o Google quer resolver algumas falhas do Firebase, também chamado agora de Realtime Database. As principais diferenças entre as duas soluções são:

  • Modelo de dados: enquanto o Realtime mantém dados em um arquivo JSON, o Firestore apresenta o conceito de documentos organizados em coleções;
  • Off-line: o Firestore adiciona suporte off-line para aplicações web enquanto o Realtime suporta apenas dispositivos móveis;
  • Consultas: para atingir um modelo de dados melhor, o Firestore oferece suporte a consultas mais complexas e rápidas;
  • Operações: o Firestore pode combinar várias operações em lotes atômicos, e as transações são repetidas até serem concluídas;
  • Zonas: o Realtime é limitado a uma zona em uma única região, enquanto o Firestore pode abranger várias regiões;
  • Escalabilidade: o Realtime é limitado a 100.000 conexões e 1000 escritas por segundo. Um resultado melhor pode ser atingido com fragmentação (shard) do banco de dados. O Firestore escala automaticamente além desses limites, quando necessário;
  • Segurança: o Firestore possui um controle de acesso a dados mais simples.

Com relação ao modelo de dados, o Firestore mantém os dados em documentos organizados em coleções. Cada documento contém pares chave-valor e pode ter sub coleções associadas. Ao lado dos tipos padrões: boolean, integer, float, byte, string, ponto geográfico, data e hora, e nulo, o Firestore suporta matrizes e mapas, sendo o último uma forma de objetos aninhados. O banco de dados é schemaless, ou seja, não tem um schema de dados pré-definido.

A AngularFire anunciou suporte ao Firestore com fluxos observáveis ​​que podem ser integrados em aplicações Angular, incluindo Animations, Forms e Routers. O Firestore está atualmente em versão beta e existem alguns limites na sua utilização. Além disso, o preço é diferente do usado no Realtime.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT