Pour accélérer son système de transaction et de réponse, PayPal a passé plusieurs années à construire en interne une base de données révolutionnaire. Baptisée JunoDB, elle est désormais disponible en open source et peut répondre à plus de 350 milliards de requêtes par jour.
En quoi consiste JunoDB ?
JunoDB est une base de données NoSQL fonctionnant sous RocksDB, un moteur de stockage sous-jacent. Développée en interne pendant plusieurs années, elle est maintenant capable de répondre à 350 milliards de requêtes par jour. Sa latence mensuelle s’élève à 3 secondes.
Disponible en open source sur GitHub, cette nouvelle technologie possède de nombreux avantages par rapport aux bases de données traditionnelles.
Facilité d’extension – Les clés peuvent être réparties sur différents niveaux de la base de données à l’aide d’un découpage cohérent. Cela permet d’ajouter facilement des machines supplémentaires à l’architecture.
Faible latence – Juno stocke les données sous forme de paires clé/valeur, de sorte que la base de données peut se concentrer sur l’optimisation de l’accès par la clé. En outre, aucun schéma spécifique n’étant appliqué, la base de données n’a pas à valider les demandes d’une autre structure prédéfinie.
Flexibilité – PayPal utilise JunoDB pour une variété de cas d’utilisation différents, l’outil peut s’adapter en fonction de l’évolution des besoins.
Quelle est l’utilisation de JunoDB chez PayPal ?
JunoDB est une base de données unique capable de s’adapter à tous systèmes et machines. Sa capacité d’adaptation fait d’elle un outil largement utilisé dans tous les services de PayPal.
Mise en cache – PayPal utilise Juno comme cache temporaire pour stocker des éléments tels que les préférences de l’utilisateur, les détails du compte, les réponses API, les jetons d’accès, etc.
Idempotence – Juno s’assure qu’une opération est idempotente et supprime tout traitement en double. PayPal utilise Juno pour s’assurer que les paiements ne sont pas retraités lors d’une nouvelle tentative ou pour éviter de renvoyer un message de notification.
Pont de latence – Les autres bases de données de PayPal présentent toutes un délai de réplication des données élevé. JunoDB a un temps de latence très faible, ce qui lui permet d’intervenir et de remédier aux retards de réplication. Cela permet des lectures quasi instantanées et cohérentes partout.
L’apparition d’outils révolutionnaire comme JunoDB marque l’intégration de la data dans tous les services d’une entreprise. C’est pourquoi les entreprises et ses collaborateurs ont un grand intérêt à faire émerger leur potentiel data ou à inculquer une culture de la data dans leurs équipes. Si cet article vous a plu et si vous envisagez une carrière dans la Data Science, n’hésitez pas à découvrir nos articles ou nos offres de formations sur DataScientest.
Source : medium.com