Interviews
Karthik Ranganathan, cofondateur et co-PDG de Yugabyte – Série d'entretiens

Karthik Ranganathan est co-fondateur et co-PDG de Yugabyte, la société à l'origine YugaoctetDB, le système distribué open source et hautes performances PostgreSQL base de données. Karthik est un expert chevronné en données et ancien ingénieur de Facebook qui a fondé Yugabyte avec deux de ses collègues de Facebook pour révolutionner les bases de données distribuées.
Qu'est-ce qui vous a poussé à cofonder Yugabyte, et quelles lacunes sur le marché avez-vous constatées qui vous ont conduit à créer YugabyteDB ?
Mes cofondateurs, Kannan Muthukkaruppan, Mikhail Bautin et moi-même avons fondé Yugabyte en 2016. En tant qu'anciens ingénieurs chez Meta (alors appelé Facebook), nous avons contribué à la création de bases de données populaires, notamment Apache Cassandra, HBase et RocksDB, ainsi qu'à l'exécution de certaines de ces bases de données en tant que services gérés pour les charges de travail internes.
Nous avons créé YugaoctetDB Nous avons constaté une lacune sur le marché des bases de données transactionnelles cloud natives pour les applications stratégiques. Nous avons créé YugabyteDB pour répondre aux besoins des organisations passant d'opérations sur site à des opérations cloud natives et avons combiné les atouts des bases de données non relationnelles avec l'évolutivité et la résilience des architectures cloud natives. Lors de la création de Cassandra et HBase chez Facebook (qui a joué un rôle déterminant pour répondre aux besoins importants de mise à l'échelle de Facebook), nous avons assisté à l'essor des microservices, de la conteneurisation, de la haute disponibilité, de la distribution géographique et des interfaces de programmation d'applications (API). Nous avons également reconnu l'impact des technologies open source sur l'avancement du secteur.
Les gens pensent souvent que le marché des bases de données transactionnelles est encombré. Bien que cela ait toujours été vrai, Postgres est aujourd'hui devenu l'API par défaut pour les bases de données transactionnelles cloud natives. De plus en plus, les bases de données cloud natives choisissent de prendre en charge le protocole Postgres, qui a été intégré dans la structure de YugabyteDB, ce qui en fait la base de données la plus compatible avec Postgres du marché. YugabyteDB conserve la puissance et la familiarité de PostgreSQL tout en le faisant évoluer vers une base de données distribuée de niveau entreprise adaptée aux applications cloud natives modernes. YugabyteDB permet aux entreprises de créer et de faire évoluer efficacement des systèmes à l'aide de modèles SQL familiers.
Comment vos expériences chez Facebook ont-elles influencé votre vision de l’entreprise ?
En 2007, j'envisageais de rejoindre Facebook, une petite entreprise en pleine croissance. À l'époque, le site comptait entre 30 et 40 millions d'utilisateurs. Je pensais qu'il allait doubler de taille, mais je me trompais complètement ! En plus de cinq ans chez Facebook, la base d'utilisateurs a atteint 2 milliards. Ce qui m'a attiré chez Facebook, c'est sa culture d'innovation et d'audace, qui encourageait chacun à « échouer vite » pour stimuler l'innovation.
Facebook est devenu si grand que les défis techniques et intellectuels que je recherchais n’étaient plus d’actualité. Pendant de nombreuses années, j’ai aspiré à créer ma propre entreprise et à m’attaquer aux problèmes auxquels l’utilisateur moyen était confronté – ce qui m’a conduit à co-créer Yugabyte.
Notre mission est de simplifier les applications cloud natives, en nous concentrant sur trois fonctionnalités essentielles cruciales pour le développement moderne :
- Premièrement, les applications doivent être disponibles en permanence, garantissant une disponibilité indépendamment des sauvegardes ou des pannes, en particulier lorsqu’elles sont exécutées sur du matériel standard dans le cloud.
- Deuxièmement, la capacité d’évoluer à la demande est cruciale, permettant aux développeurs de créer et de publier rapidement sans avoir à attendre la commande de matériel.
- Troisièmement, avec de nombreux centres de données désormais facilement accessibles, la réplication des données entre les régions devient vitale pour la fiabilité et les performances.
Ces trois éléments permettent aux développeurs d’avoir l’agilité et la liberté dont ils ont besoin pour innover, sans être limités par les limitations de l’infrastructure.
Pourriez-vous nous raconter le parcours de Yugabyte, de sa création en 2016 à son statut actuel de leader des bases de données SQL distribuées ? Quelles ont été les étapes clés ?
Chez Facebook, j'ai souvent discuté avec des développeurs qui avaient besoin de fonctionnalités spécifiques, comme des index secondaires sur des bases de données SQL ou des transactions multi-nœuds occasionnelles. Malheureusement, la réponse était généralement « non », car les systèmes existants n'étaient pas conçus pour ces besoins.
Aujourd'hui, nous assistons à une transition vers des applications transactionnelles cloud-native qui nécessitent des solutions à la fois évolutives et disponibles. Les bases de données traditionnelles ne peuvent tout simplement pas répondre à ces besoins. Les entreprises modernes ont besoin de bases de données relationnelles fonctionnant dans le cloud et offrant trois fonctionnalités essentielles : haute disponibilité, évolutivité et distribution géographique, tout en prenant en charge les fonctionnalités SQL. Ce sont les piliers sur lesquels nous avons bâti YugabyteDB et les défis que nous nous efforçons de relever en matière de bases de données.
En février 2016, les fondateurs ont commencé à développer YugabyteDB, une base de données SQL distribuée à l'échelle mondiale conçue pour les applications transactionnelles cloud natives. En juillet 2019, nous avons fait une annonce sans précédent et publié nos fonctionnalités précédemment commerciales en open source. Cela a réaffirmé notre engagement envers les principes open source et a officiellement lancé YugabyteDB en tant que système de gestion de base de données relationnelle (SGBDR) entièrement open source sous une licence Apache 2.0.
La dernière version de YugabyteDB (dévoilé en septembre) présente une compatibilité Postgres améliorée. Il comprend un optimiseur adaptatif basé sur les coûts (CBO) qui optimise les plans de requête pour les applications multirégionales à grande échelle et une distribution intelligente des données qui détermine automatiquement s'il faut stocker les tables ensemble pour une latence plus faible ou fragmenter et distribuer les données pour une plus grande évolutivité. Ces améliorations permettent aux développeurs d'exécuter efficacement leurs applications PostgreSQL sur YugabyteDB et de les faire évoluer sans avoir besoin de compromis ou de migrations complexes.
YugabyteDB est connu pour sa compatibilité avec PostgreSQL et son API inspirée de Cassandra. Comment cette approche multi-API profite-t-elle aux développeurs et aux entreprises ?
L'approche multi-API de YugabyteDB profite aux développeurs et aux entreprises en combinant les atouts d'une base de données SQL hautes performances avec la flexibilité nécessaire aux applications mondiales à l'échelle d'Internet.
Il prend en charge les SGBDR évolutifs et les charges de travail de traitement de transactions en ligne (OLTP) à volume élevé, tout en maintenant une faible latence des requêtes et une résilience exceptionnelle. La compatibilité avec PostgreSQL permet une modernisation transparente des applications Postgres existantes, nécessitant des modifications minimales.
Dans la dernière version de la plateforme de base de données distribuée, sortie en septembre 2024, des fonctionnalités telles que l'Adaptive CBO et la Smart Data Distribution améliorent les performances en optimisant les plans de requête et en gérant automatiquement le placement des données. Cela permet aux développeurs d'obtenir une faible latence et une évolutivité élevée sans compromis, ce qui fait de YugabyteDB la solution idéale pour les applications cloud natives à croissance rapide qui nécessitent une gestion fiable des données.
L'intelligence artificielle est de plus en plus intégrée dans les systèmes de bases de données. Comment Yugabyte exploite-t-elle l'intelligence artificielle pour améliorer les performances, l'évolutivité et la sécurité de ses systèmes SQL ?
Nous exploitons l'IA pour améliorer notre base de données SQL distribuée en relevant les défis liés aux performances et à la migration. Notre prochain Performance Copilot, une amélioration de notre Performance Advisor, simplifiera le dépannage en analysant les modèles de requête, en détectant les anomalies et en fournissant des recommandations en temps réel pour résoudre les problèmes de performances de la base de données.
Nous intégrons également l’IA dans YugabyteDB Voyager, notre outil de migration de bases de données qui simplifie les migrations de PostgreSQL, MySQL, Oracle et d'autres bases de données cloud vers YugabyteDB. Notre objectif est de rationaliser les transitions à partir de systèmes hérités en automatisant la conversion de schéma, la traduction SQL et la transformation des données, avec des contrôles de compatibilité proactifs. Ces innovations visent à rendre YugabyteDB plus intelligent, plus efficace et plus facile à utiliser pour les applications modernes et distribuées.
Quels sont les principaux avantages de l’utilisation d’un système SQL open source comme YugabyteDB dans des applications cloud natives par rapport aux bases de données propriétaires traditionnelles ?
La transparence, la flexibilité et le soutien solide de la communauté sont des avantages clés lors de l'utilisation d'un système SQL open source comme YugabyteDB dans des applications cloud natives. Lorsque nous avons lancé YugabyteDB, nous avons pris conscience du scepticisme entourant les modèles open source. Nous avons discuté avec les utilisateurs, qui ont exprimé une forte préférence pour une base de données entièrement ouverte à laquelle confier leurs données critiques.
Au départ, nous fonctionnions sur un modèle open-core, mais nous avons rapidement réalisé qu'il fallait une solution entièrement ouverte. Les développeurs se tournent de plus en plus vers PostgreSQL comme alternative logique à Oracle, mais PostgreSQL n'a pas été conçu pour les plateformes cloud dynamiques. YugabyteDB comble cette lacune en prenant en charge la profondeur des fonctionnalités de PostgreSQL pour les infrastructures cloud modernes. En étant 100 % open source, nous supprimons les obstacles à l'adoption.
Cela nous rend très attractifs pour les développeurs qui créent des applications stratégiques et pour les ingénieurs d'exploitation qui les exécutent sur des plateformes cloud natives. Notre objectif est de créer une base de données qui soit non seulement ouverte, mais également facile à utiliser et compatible avec PostgreSQL, qui reste un favori des développeurs en raison de son ensemble de fonctionnalités matures et de ses extensions puissantes.
La demande de solutions SQL évolutives et adaptables est en hausse. Quelles tendances observez-vous sur le marché des bases de données d'entreprise et comment Yugabyte se positionne-t-il pour répondre à ces demandes ?
L’augmentation de l’échelle des bases de données d’entreprise entraîne souvent une augmentation des taux d’échec, en particulier lorsque les organisations doivent faire face à des empreintes plus étendues et à des volumes de données plus importants. Les principales tendances qui façonnent le paysage des bases de données comprennent l’adoption de DBaaS et le passage du cloud public aux environnements de cloud privé. En outre, l’intégration de l’IA générative apporte des opportunités et des défis, nécessitant une automatisation et une optimisation des performances pour gérer la charge de données croissante.
Les entreprises se tournent de plus en plus vers DBaaS pour rationaliser leurs opérations, malgré les inquiétudes initiales concernant le contrôle et la sécurité. Cette approche améliore l'efficacité de diverses infrastructures, tandis que l'accent mis sur les solutions de cloud privé aide les entreprises à réduire les coûts et à améliorer l'évolutivité de leurs charges de travail.
YugabyteDB répond à ces demandes en constante évolution en combinant les atouts des bases de données relationnelles avec l'évolutivité des architectures cloud natives. Des fonctionnalités telles que Smart Data Distribution et Adaptive CBO améliorent les performances et prennent en charge un grand nombre d'objets de base de données. Cela en fait un choix compétitif pour l'exécution d'une large gamme d'applications.
De plus, YugabyteDB permet aux entreprises de migrer leurs applications PostgreSQL tout en conservant des niveaux de performances similaires, ce qui est essentiel pour les charges de travail modernes. Notre engagement envers le développement open source encourage l'implication de la communauté et offre une flexibilité aux clients qui souhaitent éviter la dépendance vis-à -vis d'un fournisseur.
Avec l'essor de l'edge computing et de l'IoT, comment YugabyteDB répond-il aux défis posés par ces technologies, notamment en ce qui concerne la distribution des données et la latence ?
L'architecture SQL distribuée de YugabyteDB est conçue pour répondre aux défis posés par l'essor de l'edge computing et de l'IoT en fournissant une couche de données évolutive et résiliente, fonctionnant de manière transparente dans les environnements cloud et edge. Sa capacité à fragmenter et répliquer automatiquement les données garantit une distribution efficace, permettant un accès rapide et un traitement en temps réel. La latence est ainsi minimisée, permettant aux applications de réagir rapidement aux interactions des utilisateurs et aux modifications de données.
En offrant la flexibilité d'adapter les configurations en fonction des exigences spécifiques des applications, YugabyteDB garantit que les entreprises peuvent gérer efficacement leurs besoins en données à mesure qu'elles évoluent dans un paysage de plus en plus décentralisé.
En tant que co-PDG, comment équilibrez-vous le double rôle de leader de l’innovation technologique et de gestion de la croissance de l’entreprise ?
Notre entreprise a pour objectif de simplifier les applications cloud natives, ce qui m'oblige à rester au fait des tendances technologiques, telles que l'IA générative et les changements de contexte. Suivre l'innovation exige de la curiosité, une volonté d'avoir un impact et un engagement envers l'apprentissage continu.
Trouver un équilibre entre l'innovation technologique et la croissance de l'entreprise est fondamentalement une question de mise à l'échelle, qu'il s'agisse de faire évoluer les systèmes ou d'augmenter l'impact. Dans les bases de données distribuées, nous nous concentrons sur la création de technologies qui font évoluer les performances, gèrent des charges de travail massives et garantissent une haute disponibilité sur une infrastructure mondiale. De même, faire évoluer Yugabyte signifie accroître notre base de clients, améliorer l'engagement communautaire et étendre notre écosystème, tout en maintenant l'excellence opérationnelle.
Tout cela nécessite une approche disciplinée de la performance et de l’efficacité.
Sur le plan technique, nous optimisons l'exécution des requêtes, réduisons la latence et améliorons le débit du système. Sur le plan organisationnel, nous rationalisons les processus, faisons évoluer les équipes et améliorons la collaboration interfonctionnelle. Dans les deux cas, le succès vient de la mise à disposition des équipes des bons outils, des bonnes connaissances et des bons processus pour prendre des décisions intelligentes basées sur les données.
Comment voyez-vous évoluer le rôle des bases de données SQL distribuées dans les 5 à 10 prochaines années, notamment dans le contexte de l’IA et de l’apprentissage automatique ?
Au cours des prochaines années, les bases de données SQL distribuées évolueront pour gérer des analyses de données complexes, permettant aux utilisateurs de faire des prédictions et de détecter des anomalies avec une expertise technique minimale. Il existe une énorme spécialisation des bases de données dans le contexte de l'IA et de l'apprentissage automatique, mais cela n'est pas durable. Les bases de données devront évoluer pour répondre aux exigences de l'IA. C'est pourquoi nous itérons et améliorons les fonctionnalités de pgvector, garantissant que les développeurs peuvent utiliser Yugabyte pour leurs besoins en matière de bases de données IA.
De plus, nous pouvons nous attendre à un engagement continu en faveur de l'open source dans le développement de l'IA. Il y a cinq ans, nous avons rendu YugabyteDB entièrement open source sous la licence Apache 2.0, renforçant ainsi notre engagement en faveur d'un framework open source et construisant de manière proactive notre communauté open source.
Merci pour toutes vos réponses détaillées, les lecteurs qui souhaitent en savoir plus devraient visiter YugaoctetDB.