OpenAI exploite la base de données open source PostgreSQL pour prendre en charge sa plateforme ChatGPT et son API, qui dessert 800 millions d'utilisateurs. Dans un article de blog publié jeudi, OpenAI a révélé qu'elle exécutait son énorme base d'utilisateurs sur une instance PostgreSQL à primaire unique, plutôt que sur une base de données distribuée ou un cluster partitionné.
La configuration utilise un serveur Azure PostgreSQL Flexible Server pour toutes les opérations d'écriture, avec environ 50 réplicas de lecture répartis sur plusieurs régions pour gérer les requêtes de lecture. Selon OpenAI, le système gère des millions de requêtes par seconde tout en maintenant une faible latence P99 de quelques dizaines de millisecondes et une disponibilité de cinq neufs.
Cette approche remet en question les idées reçues concernant le dimensionnement des bases de données, offrant des informations précieuses aux architectes d'entreprise confrontés à des systèmes à grande échelle. L'entreprise a souligné que le principal enseignement n'est pas de reproduire l'infrastructure spécifique d'OpenAI, mais plutôt de donner la priorité aux modèles de charge de travail et aux contraintes opérationnelles lors de la prise de décisions architecturales, au lieu de réagir à des défis de dimensionnement perçus ou d'adopter des technologies à la mode sans mûre réflexion.
La décision de s'appuyer sur PostgreSQL souligne le potentiel des systèmes bien établis lorsque les équipes se concentrent sur une optimisation délibérée au lieu d'une réarchitecture prématurée. Alors que les bases de données vectorielles ont gagné du terrain pour des applications d'IA spécifiques, le cas d'utilisation d'OpenAI démontre que les bases de données relationnelles traditionnelles peuvent toujours gérer efficacement des charges de travail massives avec une configuration et une optimisation appropriées.
Les implications de l'approche d'OpenAI vont au-delà de l'architecture des bases de données. Elle suggère que les organisations devraient évaluer attentivement leurs besoins et contraintes spécifiques avant d'adopter des solutions complexes et potentiellement inutiles. En se concentrant sur l'optimisation des systèmes existants, les entreprises peuvent potentiellement réaliser des gains de performance et des économies de coûts significatifs.
Le succès d'OpenAI avec PostgreSQL souligne l'importance de comprendre les compromis entre les différentes technologies de bases de données et les modèles architecturaux. Bien que les bases de données distribuées et les clusters partitionnés offrent des avantages en termes d'évolutivité, ils introduisent également de la complexité et des frais généraux opérationnels. Dans certains cas, une base de données à instance unique bien optimisée peut être une solution plus efficace et plus rentable.
L'entreprise n'a pas encore divulgué de détails spécifiques sur les techniques d'optimisation qu'elle a employées pour atteindre ce niveau de performance. Cependant, l'article de blog suggère qu'une attention particulière aux modèles de charge de travail, à l'optimisation des requêtes et à la configuration de l'infrastructure a joué un rôle crucial. D'autres détails devraient être publiés dans les mois à venir, fournissant des informations précieuses aux administrateurs de bases de données et aux architectes qui cherchent à faire évoluer leurs propres déploiements PostgreSQL.
Discussion
Join the conversation
Be the first to comment