Bataille du NoSQL dans le cloud : Google avance avec Cloud Firestore
Le Californien réunit le meilleur de Datastore et de Realtime Database dans Cloud Firestore, une base de données cloud-native orientée documents, douée pour des cas d’usage liés à la mobilité et à l’IoT.
Après 15 mois de test, la base de données NoSQL de Google, Cloud Firestore, a officiellement intégré les services cloud du Californien prêts pour la production. Ce service est en fait un service managé de base de données orientée documents qui est étroitement liée au back-end mobile Firebase de la marque. Sa mise à disposition sur l’infrastructure Google Cloud en étend ainsi la portée, d’autant que pour ce lancement, 9 zones géographiques ont été ajoutées, dont une zone multi-régions en Europe (depuis Francfort).
L’arrivée d’une base NoSQL orientée document chez l’un des cadres du marché du cloud public constitue aujourd’hui une annonce de poids, tant la bataille dans ce domaine fait rage. Si Google disposait déjà d’une telle base NoSQL avec Datastore, Firestore lui permet de se positionner plus avant sur ce terrain, du moins sur les terres marketing, histoire de contrecarrer les plans d’AWS qui a justement présenté au marché DocumentDB for MongoDB (AWS proposait déjà une base documents avec DynamoDB). Microsoft a quant à lui doté Azure d’une base multi-API, CosmoDB, qui supporte les API de MongoDB.
Firestore est donc bien plus qu’une nouvelle option de base de données pour la plateforme Firebase de Google. Si certes elle se positionne idéalement, selon Google, pour des cas d’usage liés à la mobilité et l’IoT, elle couvre également les applications Web et bénéficie d’une intégration étroite à l’infrastructure et aux services proposés par la Google Cloud Platform. Scalabilité, haute disponibilité, redondante multi-régions sont les grands apports en matière d’infrastructure. L’autre gain porte également sur la capacité de consommer Firestore via une architecture serverless - et pouvoir ainsi la coupler à Google Cloud Functions.
Cet héritage, elle le doit à Datastore qui forme donc la première base NoSQL orientée documents de Google Cloud. En fait, explique Google dans la documentation de sa nouvelle base de données, Firestore réunit « le meilleur de Realtime Database et de DataStore ». Realtime Database représente la base historique de la plateforme Firebase. Google consolide ainsi l’ensemble dans la marque Firestore, et le présente comme un re-branding de Datastore.
En résumé, Realtime Database apporte ses capacités très liées aux applications mobiles à faible latence et à la synchronisation en temps réel, Datastore, son modèle de données orienté Document, son industrialisation et les capacités d’élasticité et de disponibilité inhérente au Google Cloud.
Un mode pour garantir une compatibilité avec Datastore
Firestore est disponible en deux modes : le mode « Native » et le mode « Datastore » qui le rend compatible avec Datastore. Dans ce dernier mode, les applications bénéficient des capacités de stockage et d’élasticité de Firestore, sans les nouvelles fonctions clé de cette nouvelle base.
Mais le gain est tout de même notable. Le passage de Datastore classique à ce mode Datastore de Firestore permet de modifier les critères de cohérence des données de la base. D’un modèle « éventuellement cohérent », on passe à un modèle « fortement cohérent ». Google garantit également des transactions ACID dans les documents de la base.
« Nous recommandons Cloud Firestore aux développeurs qui commencent un nouveau projet. Cloud Firestore offre des fonctionnalités, des performances et une évolutivité supplémentaires sur une infrastructure conçue pour supporter des fonctionnalités plus puissantes dans de futures versions », explique Google dans la documentation, qui liste les différences entre la nouvelle base et Realtime Database. Pour le moment, l’avenir de Realtime Database n’est pas abordé.
De leur côté, les utilisateurs de l’actuel Datastore migreront automatiquement vers le mode Datastore de Firestore, assure enfin Google.