Présentation de Firestore

Créé par Firebase et Google Cloud, Firestore est une base de données flexible et évolutive pour le développement mobile, Web et serveur. Firestore assure la synchronisation de vos données entre les applications clientes via des écouteurs en temps réel, et offre un fonctionnement hors connexion pour le Web et les appareils mobiles. Vous pouvez ainsi créer des applications réactives qui fonctionnent indépendamment de la latence du réseau ou de la connectivité Internet. Firestore offre une intégration parfaite avec d'autres produits Firebase et Google Cloud comme Cloud Functions.

Capacités clés

Flexibilité Le modèle de données Firestore est compatible avec les structures de données flexibles et hiérarchiques. Stockez vos données dans des documents organisés en collections. Les documents peuvent contenir des objets imbriqués complexes en plus de sous-collections.
Requêtes expressives Dans Firestore, vous pouvez utiliser des requêtes pour récupérer des documents individuels spécifiques ou tous les documents d'une collection qui correspondent à vos paramètres de requête. Vos requêtes peuvent inclure plusieurs filtres enchaînés et combiner le filtrage et le tri. Ils sont également indexés par défaut. Les performances des requêtes sont donc proportionnelles à la taille de votre ensemble de résultats, et non à celle de votre ensemble de données.
Conçues pour s'adapter  Firestore vous permet de répliquer automatiquement des données dans plusieurs régions, d'exécuter des requêtes fortement cohérentes, d'effectuer des opérations atomiques par lot et d'accepter les transactions.
Mises à jour en temps réel Firestore utilise la synchronisation des données pour mettre à jour les données sur n'importe quel appareil connecté. Cependant, il est également conçu pour effectuer efficacement des requêtes de récupération simples et ponctuelles.
Fonctionnement hors connexion Firestore met en cache les données que votre application utilise activement, afin que celle-ci puisse écrire, lire, écouter et interroger des données même si l'appareil est hors connexion. Lorsque l'appareil se reconnecte, Firestore synchronise toutes les modifications locales avec Firestore.

Fonctionnement

Firestore est une base de données NoSQL hébergée dans le cloud disponible dans les bibliothèques clientes Node.js, Java, Python, Unity, C++ et Go, en plus des API REST et RPC. Apple, Android et les applications Web peuvent également accéder à la base de données directement à l'aide des bibliothèques clientes.

Conformément au modèle de données NoSQL de Firestore, vous stockez des données dans des documents contenant des champs mappés à des valeurs. Ces documents sont stockés dans des collections, qui sont des conteneurs de documents qui vous permettent d'organiser vos données et de créer des requêtes. Les documents sont compatibles avec de nombreux types de données différents, des chaînes simples aux nombres, en passant par les objets imbriqués et complexes. Vous pouvez également créer des sous-collections dans des documents et créer des structures de données hiérarchiques qui évoluent à mesure que votre base de données augmente. Le modèle de données Firestore est compatible avec la structure de données qui convient le mieux à votre application.

De plus, les requêtes dans Firestore sont expressives, efficaces et flexibles. Créez des requêtes superficielles pour récupérer des données au niveau du document sans avoir à récupérer l'intégralité de la collection ni des sous-collections imbriquées. Ajoutez un tri, un filtrage et des limites à vos requêtes ou à vos curseurs pour paginer vos résultats. Pour que les données de vos applications restent à jour, sans récupérer l'intégralité de votre base de données à chaque mise à jour, ajoutez des écouteurs en temps réel. L'ajout d'écouteurs en temps réel à votre application vous avertit avec un instantané de données chaque fois que vos applications clientes écoutent les modifications, en récupérant uniquement les nouvelles.

Protégez l'accès à vos données dans Firestore avec Identity and Access Management (IAM) pour les langages côté serveur. Pour les plates-formes Android, Apple et JavaScript, protégez vos données avec Firebase Authentication et les règles de sécurité Firestore.

Étapes suivantes