Les produits d'OpenAI reposent sur Habitat, sa plateforme de stockage en ligne, qui doit répondre en millisecondes à plus d'un milliard d'utilisateurs répartis dans 40 régions géographiques. Soutenir cette croissance tout en améliorant la fiabilité, les performances et la rapidité de développement a exigé de repenser la conception et l'exploitation de la plateforme. La démarche d'OpenAI a suivi une séquence claire : d'abord devenir assez fiable pour le trafic critique, puis assez rapide pour les utilisateurs du monde entier, et enfin fonctionner à très grande échelle.
Cette série en deux volets retrace l'évolution de Habitat, d'une simple bibliothèque cliente et d'une base de données à une plateforme de stockage distribuée à l'échelle mondiale, qui sert plus de 500 pétaoctets de données. La première partie portait sur le passage d'un client Python à un service, et sur les techniques qui ont poussé un service basé sur Python bien au-delà de ce que beaucoup jugeraient pratique.
La deuxième partie se concentre sur la mise à l'échelle du composant de stockage sous-jacent, Azure Cosmos DB. En collaboration étroite avec l'équipe Azure, OpenAI a trouvé une approche viable de multi-locataire fondée sur des conteneurs co-gérés, offrant d'excellentes performances en lecture à une échelle mondiale massive.
Le multi-locataire présente des compromis. Les systèmes mono-locataire réduisent le rayon d'impact et simplifient la propriété, mais ils coûtent cher et entraînent souvent un surdimensionnement important. Les systèmes multi-locataires centralisent l'expertise en approvisionnement, mais introduisent des problèmes de « voisin bruyant », où un locataire consomme une part disproportionnée des ressources. OpenAI a alterné entre ces modèles avant d'adopter par défaut un conteneur multi-locataire, et affirme qu'elle n'en est qu'au début de son parcours en matière de multi-locataire.
Source: OpenAI Blog · Résumé par HeadlinesBriefing