OtterTune se propose de régler automatiquement toutes les bases de données

  • Oct 29, 2023

Le réglage des bases de données est essentiel aux performances et à la stabilité des applications, mais c'est un travail difficile. Le réglage automatique est utile, mais il était jusqu'à présent réservé aux Oracles et Microsofts du monde. OtterTune veut démocratiser cette fonctionnalité

Les bases de données constituent le substrat sur lequel s’exécutent la plupart des applications. Bien que différentes applications aient des besoins différents servis par différentes bases de données, elles ont toutes une chose en commun: ce sont des systèmes complexes qui nécessitent un réglage fin continu pour fonctionner de manière optimale.

Les bases de données sont livrées avec une multitude de paramètres qui peuvent être réglés en « tournant les boutons ». Traditionnellement, cela incombait aux administrateurs de bases de données (DBA). Leur travail est difficile, car ils doivent connaître les spécificités de la base de données, le matériel sur lequel elle s'exécute et les charges de travail qu'elle sert.

Certains fournisseurs de bases de données comme IBM, Microsoft et Oracle ont pris des mesures pour automatiser ce travail. LoutreTune est une startup qui souhaite démocratiser cette capacité. Aujourd'hui, OtterTune annonce la version bêta privée de son nouveau service de réglage automatique de bases de données, ainsi qu'un premier cycle de financement initial de 2,5 millions de dollars mené par Accélérer. ZDNet rencontré le PDG et co-fondateur d'OtterTune Andy Pavlo pour en savoir plus.

De la recherche au monde réel

Pavlo est un chercheur universitaire distingué dans le domaine des bases de données: professeur agrégé de base de données au département d'informatique de l'université Carnegie Mellon, selon ses propres mots. Suivant les traces de Mike Stonebraker, figure éminente du monde des bases de données et l'un de ses mentors, Pavlo entreprend désormais d'appliquer ses recherches dans le monde réel.

Ce qui a donné le coup d’envoi, ce sont les travaux de Pavlo et de son équipe publiés en 2017 dans SIGMOD, l’un des plus grands sites de recherche de bases de données. Ce travail a jeté les bases de comment utiliser l'apprentissage automatique à grande échelle pour régler automatiquement les bases de données. Cela a attiré l'attention de la recherche et l'équipe a été invitée à partager leur travail sur le blog AWS Machine Learning.

OtterTune veut régler automatiquement toutes les bases de données

À partir de ce moment-là, les demandes de personnes intéressées à appliquer cela à leurs bases de données ont commencé à affluer. Pavlo n’était pas prêt à les accueillir à ce moment-là, mais cela montrait clairement qu’ils étaient sur une bonne voie. Aujourd’hui, lui et son équipe se disent prêts à passer à l’étape suivante et à appliquer leurs idées dans des contextes réels.

La version « académique », comme l'appelait Pavlo, d'OtterTune a déjà été utilisée dans un certain nombre de cas d'utilisation. Il s’agit notamment de Société Générale et de Booking.com. OtterTune n'a pas encore de clients payants, mais avec la version bêta privée annoncée aujourd'hui, OtterTune est ouvert aux affaires. OtterTune fonctionne à la fois pour les déploiements de bases de données sur site et dans le cloud (PostgreSQL, MySQL et Amazon RDS).

La version académique prend en charge Oracle, et cela figure sur la feuille de route d'OtterTune à prendre en charge plus tard en 2021. Cela nous amène à une question intéressante, car Oracle a déjà sa propre version de base de données autonome. Alors, comment fonctionne OtterTune et en quoi est-il différent de l'implémentation d'Oracle ?

Sous la capuche

Les recherches de Pavlo se concentrent sur deux pistes sous l'égide des bases de données autonomes. L'un d'entre eux est un effort d'optimisation de boîte noire pour les systèmes de bases de données: essayez de régler et de gérer de manière optimale une base de données via des API exposées par le système sans apporter aucune modification aux composants internes.

L'optimisation en boîte blanche, quant à elle, consiste à créer un système de base de données à partir de zéro avec l'idée qu'il doit être autonome. Les approches d'OtterTune et d'Oracle sont toutes deux des efforts d'optimisation de type boîte noire. Les travaux dans ce domaine remontent aux années 1970, a noté Pavlo :

"Il y a eu une grande avancée vers ce qu'on appelait alors les systèmes auto-adaptatifs, parce que les gens reconnaissent qu'avec un modèle relationnel, si vous faites abstraction d'un modèle logique, couche quelle est la mise en œuvre physique réelle ou la manifestation physique de la base de données, alors quelqu'un doit prendre une décision sur la façon d'optimiser cela système.

Ce qui est différent maintenant, c'est que les gens appliquent des techniques d'apprentissage automatique pour tenter d'automatiser cela. Les travaux réalisés au début des années 2000 par Oracle, IBM et Microsoft portaient essentiellement sur des outils de conseil destinés aux administrateurs de base de données humains. Ce qu'ils ont maintenant, c'est les mêmes méthodes et outils à un niveau élevé, sauf qu'au lieu d'un clic humain sur OK, le logiciel lui-même clique sur OK et applique le changements."

Le flux de travail d'OtterTune, reposant sur la collecte de métriques de base de données et l'utilisation de l'apprentissage automatique pour les optimiser automatiquement

Il s'agit d'une approche réactive plutôt que proactive, tout comme OtterTune, a reconnu Pavlo. Une différence essentielle est cependant qu'OtterTune s'étend à d'autres bases de données qui ne disposent pas nécessairement du type de budget ou d'équipe dont disposent les Oracles du monde.

Bien qu'OtterTune fasse référence à l'utilisation de l'apprentissage automatique, il mentionne également qu'il n'a pas besoin d'examiner les données ou les requêtes d'une application pour opérer sa magie, ce qui nous a laissé perplexes. Cependant, comme l'explique Pavlo, OtterTune se connecte à une base de données et récupère la configuration actuelle du système via des commandes SQL standard.

Il s'agit de compteurs de performances internes que chaque système de base de données gère pour suivre le travail effectué. Des mesures telles que les pages lues, les pages écrites, les verrous détenus, le nombre de requêtes ou la latence sont sur lesquels s'appuie l'apprentissage automatique d'OtterTune pour fonctionner. OtterTune enregistre ces métriques à différentes fréquences et les stocke dans un référentiel interne qui assure le suivi de toutes les données, métriques et configurations de formation de chaque session de formation.

Ces données sont ensuite segmentées en fonction du type de système de base de données, y compris le contexte du matériel. Grâce à cela, des modèles statistiques sont formés et peuvent prédire les performances du système de base de données lorsque vous modifiez les valeurs des boutons de configuration.

Feuille de route d'OtterTune

Même si cela semble assez abstrait, il existe en fait un certain degré de connaissance du domaine appliqué. Garder les boutons trop dangereux à manipuler hors de l’équation est une préoccupation majeure. De plus, il y a une nuance dans le fait qu'OtterTune ne fonctionne actuellement qu'avec des paramètres globaux à la base de données, non spécifiques au niveau de la table par exemple.

Dans l'ensemble, cependant, l'approche devrait fonctionner pour d'autres systèmes que ceux actuellement pris en charge, a déclaré Pavlo. La mise en place de l'infrastructure pour collecter les données a été la partie la plus difficile. OtterTune ciblera probablement Amazon Aurora ensuite et partira de là en fonction de la demande des clients.

Le financement de démarrage de 2,5 millions de dollars n’est qu’un début. Pavlo a mentionné qu'OtterTune allait forcément lever davantage de capitaux en 2021 et obtenir une injection d'activité. expertise en plus d'augmenter son effectif actuel de 12 personnes, composé principalement de l'équipe de recherche de Pavlo anciens élèves.

Big Data

Comment savoir si vous êtes impliqué dans une violation de données (et que faire ensuite)
La lutte contre les préjugés dans l’IA commence par les données
Des prévisions justes? Comment 180 météorologues fournissent des données météorologiques « suffisamment bonnes »
Les thérapies contre le cancer dépendent d’une quantité vertigineuse de données. Voici comment c'est trié dans le cloud
  • Comment savoir si vous êtes impliqué dans une violation de données (et que faire ensuite)
  • La lutte contre les préjugés dans l’IA commence par les données
  • Des prévisions justes? Comment 180 météorologues fournissent des données météorologiques « suffisamment bonnes »
  • Les thérapies contre le cancer dépendent d’une quantité vertigineuse de données. Voici comment c'est trié dans le cloud