AWS ajoute Cassandra à sa collection de bases de données
Lors de re:Invent 2019, AWS a présenté la préversion d’un service managé pour Apache Cassandra, une des dernières bases de données qu’il n’avait pas à son catalogue.
Las Vegas – Présenter 27 annonces en 3 heures, voilà la rude tâche que s’est imposée Andy Jassy, le PDG d’AWS, lors de son évènement annuel re:Invent. À son habitude, il a illustré ses propos en citant les paroles de chansons célèbres. Ces touches de culture pop avaient pour but de mettre en exergue les valeurs nécessaires à la transformation digitale des entreprises. Pour AWS, cette transformation passe par l’adoption de services cloud et d’une modernisation des architectures applicatives. À commencer par les bases de données.
Dans le cloud AWS, il n’y en a plus une seule, mais plusieurs. La filiale d’Amazon veut prouver à ses clients qu’à chaque type d’application correspond une base de données cloud.
« Vous ne trouverez cette collection de services nulle part ailleurs sur le marché. Certains éditeurs disent “vous n’avez pas besoin d’autant de bases, utilisez le modèle relationnel qui s’adapte à la plupart des cas d’usage.” Vous devriez les écouter poliment, mais être particulièrement sceptique. Un couteau suisse n’est jamais la meilleure solution pour accomplir une tâche particulière. Vous voulez le bon outil pour un travail spécifique », déclare Andy Jassy qui tacle au passage Microsoft, Oracle et IBM pour leur politique propriétaire.
Les responsables d’AWS justifient cette affirmation par le passage à l’ère du microservice et des containers cloud. « Développer une application avec une, voire deux bases de données est une pratique ancienne. Nous sommes passés du mainframe – lié à des serveurs clients connectés à des applications tierces par des couches middleware – à l’architecture orientée microservices », déclare Herain Oberoi, directeur général bases de données, analytique et blockchain chez AWS.
« Chaque microservice correspond à un besoin spécifique. Prenons l’exemple de Lyft, le service de VTC. L’équipe qui s’occupe de la géolocalisation a besoin de stocker des valeurs clés, tandis que les développeurs en charge des commandes utiliseront plutôt une base de données relationnelle », explique-t-il. « Si le data model et la couche d’infrastructure ne correspondent pas à vos besoins, cela pose des problèmes de performance au moment de l’industrialisation ».
Andy JassyPDG, AWS
AWS veut faciliter l’utilisation de Cassandra à l’aide du serverless
Dans cette optique, le géant du cloud a annoncé la disponibilité d’un neuvième service de base de données avec le support de Cassandra.
Amazon Managed Apache Cassandra Service (MSC) consiste en une version managée du moteur développé à l’origine par Facebook. Selon Andy Jassy, ce support était fortement réclamé par les clients. Ce produit repose sur Apache Cassandra 3.11, la version open source du produit NoSQL. Le service inclut une API CQL, le langage de requête spécifique à Cassandra. Il permet de connecter des applications existantes ou de les migrer dans le cloud AWS.
Le bénéfice de MSC, selon l’éditeur, réside dans ses fonctionnalités « as a service ».
« Il n’y a pas besoin de provisionner, de patcher ou de gérer des serveurs », peut-on lire sur la fiche produit. Par ailleurs, AWS entend assurer un niveau de performance à la milliseconde, une haute disponibilité et une sécurité renforcée. Ainsi, les tables sont chiffrées par défaut avec AWS Key Management Service et répliquées trois fois à travers plusieurs régions avec Availability Zone. Il est aussi possible de gérer les accès et de suivre les performances grâce à un outil prévu à cet effet (IAM).
« Je pense que cela va fortement intéresser les utilisateurs “pur jus” de Cassandra », prédit Donald Feinberg, Vice-président Data & Analytics chez Gartner. « Les problèmes avec Cassandra arrivent quand les utilisateurs ont 20, 30, 40 serveurs et des clusters associés. Cela devient presque impossible à gérer. Selon les clients, c’est la base de données la plus compliquée à grande échelle. Elle est encore plus compliquée à maintenir qu’Oracle, MySQL ou PostegreSQL ».
AWS se différencie donc de DataStax et de Google. « En utilisant les services de DataStax, vous devez gérer les nœuds, que ce soit sur site ou dans le cloud. L’approche serverless est le gros avantage de l’offre MSC », affirme l’analyste de Gartner.
MSC est pour l’instant disponible en préversion dans les régions cloud Est et Ouest des États-Unis, en Europe (Stockholm), en Asie Pacifique (Singapour et Tokyo). Le produit bénéficie d’un accès gratuit les 3 premiers mois dans la limite de 30 millions de requêtes (écrites et lues) par mois et de 1 Go de stockage.
Par ailleurs, AWS continue de faire évoluer ses services « database ». À titre d’exemple, Amazon Aurora aurait bénéficié de 37 nouvelles fonctionnalités en un an. Et selon Donald Feinberg, DynamoDB s’est « clairement amélioré au cours de l’année passée ».
Multibase vs multimodèle : un dilemme toujours d’actualité
Selon Amazon, il serait donc bénéfique de passer à une approche multibase de données. Mais pour Gartner, cela ne correspond pas vraiment à la réalité dans les entreprises.
« Il y a performance optimale et performance acceptable. Avec AWS, il est possible de choisir les bases spécifiques qui permettront peut-être d’obtenir de meilleures performances. Dans certains cas [gérer une base de données complexe ou utiliser les fonctions Graph et Time Series, par exemple N.D.L.R.], cela peut amener une entreprise à choisir AWS. Mais dans la plupart des situations, ce n’est pas le cas », analyse Donald Feinberg. « Les bases de données multimodèles [comme OracleDB ou CosmosDB, N.D.L.R.] sont, selon moi, plus faciles à utiliser par les développeurs. Les développeurs pourraient aussi arguer qu’ils veulent avoir différents services afin de réaliser leurs propres intégrations. Mais si je suis un DSI ou un responsable, je n’apprécie pas cette idée parce que je ne veux pas que mes développeurs aient du travail supplémentaire [avec une solution multimodèle, N.D.L.R.] ».
Enfin, l’analyste assure que même si certaines solutions comme le support des fonctions graphe et time series sont spécifiques, le modèle relationnel a tellement évolué qu’il peut gérer davantage de données, même celles qui ne sont pas structurées – comme des documents, des images ou des enregistrements vocaux.