Recherche vectorielle : Google Cloud mise sur AlloyDB (et PostgreSQL)

Lors de Google Cloud Next’23, le géant du cloud a annoncé la feuille de route consacrée à son portfolio de base de données. L’occasion pour le fournisseur de mettre l’accent sur l’adaptation des capacités AlloyDB à l’ère de l’IA générative.

Pour rappel, AlloyDB est une déclinaison propriétaire et commerciale compatible avec PostgreSQL à laquelle Google Cloud a greffé un système de réplication multizone, en sus du découplage du calcul et du stockage.

Si l’architecture détaillée précédemment par LeMagIT doit permettre d’accroître les performances de PostgreSQL, il n’en reste pas moins qu’AlloyDB demeure compatible avec les extensions, les pilotes et les objets de configuration de la base de données relationnelle.

Ainsi, GCP a prĂ©sentĂ© la prĂ©version d’AlloyDB AI, une suite de fonctionnalitĂ©s intĂ©grĂ©es dans AlloyDB. Comme beaucoup d’éditeurs de bases de donnĂ©es, le fournisseur entend offrir un moyen de stocker et de traiter les « embeddings Â», des reprĂ©sentations vectorielles d’images et de mots stockĂ©es sous forme de nombres Ă  virgule flottante. Ces vecteurs s’avèrent nĂ©cessaires pour l’exĂ©cution de recherches sĂ©mantiques ainsi que pour enrichir les requĂŞtes envoyĂ©es aux modèles d’IA gĂ©nĂ©rative, afin d’en obtenir des rĂ©ponses plus factuelles ou plus prĂ©cises. C’est le rĂ´le de la technique Retrieval Augmented Generation

En juin 2023, Google Cloud avait dĂ©jĂ  prĂ©sentĂ© un moyen de stocker ces vecteurs en intĂ©grant l’extension open source pgvector. Cette dernière a rĂ©coltĂ© plus de 5 300 Ă©toiles sur GitHub.

Un module de recherche vectorielle disponible sur site

Avec AlloyDB AI, GCP prĂ©tend exĂ©cuter les requĂŞtes liĂ©es Ă  pgvector 10 fois plus rapidement qu’avec une instance PostgreSQL « standard Â». Il est possible de compresser les vecteurs Ă  l’aide d’une quantification vectorielle 8 bits. Cela permettrait de rĂ©duire par trois la taille de l’index tout en embarquant quatre fois plus de dimensions, quand la fonction de compression est activĂ©e.

Pour cela, les ingĂ©nieurs de Google ont intĂ©grĂ© la librairie ScaNN (Scalable Nearest Neighbors), imaginĂ©e par Google Research. Ce module de recherche de vecteurs par similaritĂ© entend renforcer la quantification des vecteurs. Il s’agit par ailleurs d’amĂ©liorer – en tout cas sur le papier â€“ la prĂ©cision des recherches par la maximisation du produit interne entre une requĂŞte et une donnĂ©e Ă  retrouver (Maximum inner-product search, en VO).

Pour vectoriser les données sources, Google Cloud permet aux clients d’utiliser les modèles d’IA disponibles depuis Vertex AI ou ceux qu’ils hébergent par eux-mêmes. AlloyDB AI inclut une commande pour activer la création des vecteurs depuis l’interface SQL de la base de données.

Une solution que Google Cloud ne souhaite pas rĂ©server Ă  son cloud. Ayant bien compris que toutes les entreprises n’étaient pas prĂŞtes Ă  mettre Ă  disposition dans le cloud leurs donnĂ©es exploitĂ©es dans le cadre de projet d’IA gĂ©nĂ©rative, Google a intĂ©grĂ© AlloyDB AI dans la prĂ©version d’AlloyDB Omni, dĂ©jĂ  prĂ©sentĂ©e en mars 2023.

AlloyDB Omni n’est autre qu’une version self-managed de la version modifiée de PostgreSQL pouvant être déployée sur site. D’ailleurs, la préversion d’AlloyDB AI est une exclusivité temporaire d’Omni. GCP entend ajouter le module d’IA plus tard cette année dans la version entièrement managée d’AlloyDB.

« Non seulement il est compatible avec PostgreSQL, mais avec AlloyDB Omni les clients peuvent tirer parti de ce service pour crĂ©er des applications propulsĂ©es Ă  l’IA partout oĂą ils le souhaitent : sur site, en Edge, dans plusieurs clouds ou mĂŞme sur un ordinateur portable Â», vante Andi Gutmans, directeur gĂ©nĂ©ral et vice-prĂ©sident ingĂ©nierie bases de donnĂ©es chez Google Cloud.

Plus tard dans l’annĂ©e, AlloyDB et AlloyDB Omni pourront s’intĂ©grer avec Vertex AI et la centaine de modèles LLM disponibles depuis le « jardin de modèles Â» mis Ă  disposition par le fournisseur, mais aussi avec des applications comme Salesforce, Jira et Confluence.

AlloyDB, le produit pour concurrencer Oracle

Reste Ă  savoir pourquoi Google Cloud a fait d’AlloyDB sa base de donnĂ©es vectorielle de rĂ©fĂ©rence, alors qu’en principe, une base de donnĂ©es NoSQL, plus particulièrement orientĂ©e documents, semble plus adaptĂ©e Ă  cet exercice.

« D’abord, nous allons apporter des capacitĂ©s d’IA gĂ©nĂ©rative Ă  travers plusieurs bases de donnĂ©es, qu’elles soient relationnelles ou non Â», rĂ©pond Andi Gutmans Ă  la question du MagIT.

Il ne faut pas oublier non plus la disponibilitĂ© sur Google Cloud de services NoSQL tiers qui prennent dĂ©jĂ  en charge les embeddings. Ainsi, GCP annonce la prĂ©version des clusters haute disponibilitĂ© pour Memorystore for Redis, ainsi que l’intĂ©gration de la version 7.0 de la base de donnĂ©es NoSQL in-memory. De son cĂ´tĂ©, Thomas Kurian, PDG de Google Cloud, a Ă©voquĂ© les partenariats avec plusieurs Ă©diteurs, dont MongoDB et DataStax (une distribution commerciale dĂ©rivĂ©e d’Apache Cassandra).

Toutefois, le fournisseur met l’emphase sur AlloyDB.

« Pourquoi AlloyDB est-elle si importante dans ce contexte ? Selon StackOverFlow, près de 50 % des dĂ©veloppeurs professionnels utilisent PostgreSQL [prĂ©cisĂ©ment, 49,09 % des 60 369 rĂ©pondants, N.D.L.R] », note Andi Gutmans.

Notons que d’après le mĂŞme sondage (StackoverFlow Developer Survey 2023), MongoDB et Redis sont respectivement utilisĂ©s par 25,66 % et 23,25 % des dĂ©veloppeurs professionnels.

« Dans les entreprises, PostgreSQL est devenu un standard : c’est la technologie la plus utilisĂ©e quand il est question de donnĂ©es relationnelles Â», poursuit le dirigeant.

En principe, il convient donc de convertir des données non structurées en vecteurs qu’une base de données relationnelle peut interpréter et interroger.

« Nous observons également une adoption croissante de la librairie pgvector dans la communauté Postgres, car elle permet de combiner la simplicité des interrogations SQL et la recherche vectorielle », note Andi Gutmans.

Les entreprises s’attendent à pouvoir gérer ce type de charge de travail sur tout type d’infrastructure, termine-t-il.

Sans équivoque, AlloyDB est l’un des produits d’appel pour encourager les clients d’Oracle à migrer sur Google Cloud.

Duet AI : Google Cloud infuse l’IA gĂ©nĂ©rative dans ses services de bases de donnĂ©es

En ce sens, le fournisseur prévoit d’intégrer sa suite d’IA générative Duet AI dans son service de migration de bases de données. Il s’agit de fournir un assistant pour convertir automatiquement les procédures stockées, les déclencheurs, les pages et le code PL/SQL restant qui ne peut pas être converti automatiquement. Cette fonctionnalité présentée sur scène permet notamment de convertir des fonctions spécifiques à Oracle dans leurs équivalents PostgreSQL, puis de reproduire automatiquement les mêmes modifications partout où elles sont détectées par Duet AI. Elle couvre en quelque sorte les « derniers kilomètres » de la migration.

Duet AI sera Ă©galement intĂ©grĂ© dans Cloud Spanner. Ici, il s’agit de gĂ©nĂ©rer Ă  partir de demandes en langage naturel des requĂŞtes SQL. Plus important, Google annonce la disponibilitĂ© gĂ©nĂ©rale de Cloud Spanner Boost, un service entièrement managĂ© permettant d’allouer des ressources de calcul dĂ©diĂ©es Ă  des requĂŞtes analytiques ou des exports de donnĂ©es. Ces charges de travail – en provenance de BigQuery, Spark On Dataproc et Dataflow â€“ sont automatiquement distribuĂ©es sur des instances isolĂ©es.

« [Cette fonctionnalitĂ©] est particulièrement efficace dans les scĂ©narios […] oĂą vous souhaitez Ă©viter les impacts nĂ©gatifs sur le système transactionnel existant en raison de conflits de ressources Â», assure GCP.

Enfin, Google Cloud ne compte pas abandonner Cloud SQL. Il a présenté le mois dernier les éditions Enterprise Plus pour MySQL et PostgreSQL, qui doivent multiplier les performances par deux à trois par rapport aux services managés existants.

Pour approfondir sur Base de données