Témoignages de clients / Secteur du tourisme et de l'hôtellerie
2021
Expedia Group réduit d'un jour à quelques secondes les délais de transactions de paiement des fournisseurs
Expedia Global Payments a effectué la migration d'un système hérité du Microsoft SQL Server vers Aurora PostgreSQL. Le système a ainsi été mis à l'échelle de manière efficace, ce qui permettra de répondre aux demandes du trafic, et pourra délivrer des données en temps quasi réel.
Données disponibles en quelques secondes,
contre plus d'un jour auparavant
Réduction des coûts
des bases de données
Élimination
de l'enfermement propriétaire
80 %
du volume réaffecté à partir de son système hérité
Mise à l'échelle
pour faire face aux pics soudains de trafic
Présentation
Une partie du système existant a été déplacée vers Amazon Aurora, une base de données relationnelle créée pour le cloud et compatible avec MySQL et PostgreSQL. Cette base de données allie la simplicité et la rentabilité des bases de données open source aux performances des bases de données commerciales. Avec Aurora et plus de 20 autres services AWS, Expedia a réduit ses coûts et, grâce à l'automatisation des processus manuels, a permis à ses employés de se concentrer sur les activités principales. Expedia fournit également des données en temps quasi réel à ses utilisateurs ainsi qu'à ses équipes internes, ce qui se traduit par la rationalisation des processus de paiement ainsi que l'amélioration de la visibilité et des informations pour ses partenaires fournisseurs.
Opportunité | Faire face aux problèmes de mise à l'échelle avec un fournisseur commercial traditionnel de bases de données
Le groupe Expedia compte plus de 20 sites de réservation, dont notamment Expedia, Vrbo, Hotels.com et Orbitz, sur lesquels les voyageurs de plus de 70 pays effectuent leurs réservations d'hébergement, de vols , etc. dans plus de 80 devises. En tant que plateforme commerciale de portée mondiale, les équipes doivent prendre en charge tant les paiements tant des clients que des partenaires. Pour les paiements des partenaires, Expedia interagit avec les fournisseurs, par exemple les hôtels ainsi que les compagnies de croisières et aériennes, dont les réservations sont distribuées sur sa plateforme. Dans son modèle Expedia Collect, Expedia collecte de l'argent auprès des clients et le reverse à ses fournisseurs. En 2019, Expedia a traité l'équivalent de 7,6 milliards USD de réservations marchandes, soit 25 % de plus par rapport à l'année précédente.
Cependant, la croissance d'Expedia a commencé à peser lourd sur son segment de rapprochement des comptes fournisseurs (APRecon). Face à l'augmentation du volume des transactions, les délais d'exécution des tâches étaient plus longs, provoquant un effet en cascade des retards sur toute la chaîne jusqu'aux utilisateurs. Le segment APRecon sur SQL Server nécessitait beaucoup d'interventions humaines, ce qui a eu une incidence sur les équipes d'exploitation de l'entreprise. Par ailleurs, certains services reposant sur .NET, une plateforme open source pour développeurs, ont mené à l'enfermement propriétaire, limitant ainsi le déploiement du service.
Expedia a donc décidé de migrer vers une architecture Java orientée microservices dans le cloud. « Nous avons délibérément conçu le nouveau système dans une architecture orientée microservices, de sorte que nous puissions facilement le mettre à l'échelle grâce aux fonctionnalités qu'offre AWS », explique Nirupama Jagarlamudi, directeur principal du développement de logiciels chez Expedia Group. Au terme d'analyses, de comparaisons des coûts des offres SQL Server et cloud, ainsi que d'analyses subséquentes de SQL et PostgreSQL, l'entreprise a choisi Amazon Aurora PostgreSQL.
Avec Aurora PostgreSQL, nous payons uniquement ce que nous utilisons, et la solution s'adapte automatiquement à la croissance de nos données. »
Nirupama Jagarlamudi
Directeur principal, développement de logiciels, Groupe Expedia
Solution | S'affranchir des bases de données sur site et des bases de données héritées
Expedia a opté pour une migration par phase vers Aurora PostgreSQL, et entend migrer entièrement de SQL Server vers AWS. Dans la phase initiale, l'entreprise a d'abord effectué la migration de son activité d'hébergement du système APRecon, qui prend en charge le rapprochement des transactions des partenaires d'hébergement d'Expedia, soit 80 % de l'ensemble du volume sur SQL Server. Les développeurs de bases de données ont procédé à la refactorisation du schéma de SQL Server vers Aurora PostgreSQL à l'aide d'un nouvel outil de migration de schémas appelé Flyway. « L'idée était de maintenir notre logique métier dans les services, de façon que si nous devions passer à un autre fournisseur ou un autre service, nous puissions le faire en toute simplicité et sans contrainte », explique Jagarlamudi. La migration des bases de données, dont la mise à jour du schéma, n'a duré que deux semaines environ, de la conception au test. Après la refactorisation du schéma, l'équipe a commencé à effectuer la migration des composants reposant sur le cadre logiciel .NET vers Linux et Spring Boot, un cadre open source basé sur Java. Expedia compte désormais 20 microservices créés sur la pile Spring Boot.
Le nouveau système sur AWS, appelé MARS (Matching and Reconciliation System) est entré en service en mai 2020. Il s'appuie sur les services open source AWS qui non seulement permettent d'unifier la pile technologique de gestion des paiements d'Expedia, mais aussi met fin à l'enfermement propriétaire. Expedia utilise Amazon Simple Queue Service (Amazon SQS), un service de file d'attente de messages entièrement géré, pour découpler et mettre à l'échelle les microservices. « Amazon SQS est un moyen simple pour nous d'ajouter de la résilience à notre processus avec une capacité durable de nouvelle tentative », déclare Jagarlamudi. Par exemple, Amazon SQS fonctionne avec Amazon Simple Storage Service (Amazon S3), un service de stockage d'objets qui offre une capacité de mise à l'échelle, une disponibilité des données, une sécurité et des performances de pointe, pour gérer les requêtes des fournisseurs. Ce fournit à Expedia un traitement orienté évènements : Amazon SQS notifie à l'organisation les nouveaux fichiers de requêtes de fournisseurs, évitant à l'équipe d'avoir à les extraire d'Amazon S3.
Désormais, Expedia peut fournir des données en quasi-temps réel à ses utilisateurs, ses fournisseurs, son département de business intelligence et son équipe d'exploitation. Tous les utilisateurs du système de paiement d'Expedia, notamment les utilisateurs opérationnels et les fournisseurs externes sur le portail Expedia, utilisent Amazon Elasticsearch Service (Amazon ES), qui permet aux utilisateurs de rechercher, d'analyser et de visualiser efficacement les coûts des réservations en cours. Au fil des réservations, le traitement orienté évènements peut fournir les données à l'équipe d'exploitation ou aux fournisseurs en moins d'une seconde, avec des performances de la tranche supérieure du 99e centile de 2,6 secondes, contre plus d'un jour avec le traitement par lots sur le serveur précédent. Le système MARS transmet les résultats à ses utilisateurs ainsi qu'au département de business intelligence d'Expedia. Les utilisateurs obtiennent leurs données à partir du cluster de recherche. et Expedia s'appuie sur Amazon Kinesis Data Streams, un service de streaming extrêmement évolutif et durable, pour collecter, traiter et analyser les données de streaming provenant de chaque réservation en temps réel : date de réservation, durée du séjour, informations concernant les voyageurs et l'hôtel, solde du compte, historique de règlements et réservations en chaîne. Ces attributs de données essentiels permettent à l'équipe d'exploitation d'Expedia d'examiner les problèmes et de traiter les demandes des fournisseurs. « Notre intégration avec l'informatique décisionnelle est beaucoup plus flexible, ce qui permet éventuellement à d'autres équipes du groupe Expedia de tirer parti de ces données pour leurs fonctions commerciales », déclare Jagarlamudi.
Sur une architecture orientée microservices, le système MARS peut être mis à l'échelle ascendante pour prendre en charge les pics de trafic soudains et imprévus, et descendante lorsque le trafic diminue. Par exemple, Expedia a été en mesure d'augmenter son service de bons commande pour prendre en charge l'enregistrement de 15 mois d'historique de réservations, au rythme de 200 transactions par seconde, sur une période de deux semaines. Au terme de cette activité, l'entreprise a ensuite réduit le service afin de s'adapter aux modèles de trafic normaux. Alors qu'Expedia payait des coûts fixes pour l'allocation, le stockage et les licences avec SQL Server (qu'elle continue d'utiliser pour sa pile héritée qui n'a pas encore été déplacée), Aurora élimine les frais de licences et offre des coûts et une infrastructure flexibles. Expedia n'a ainsi plus besoin de dépenser de l'argent sur la capacité inutilisée de ses centres de données. « Avec Aurora PostgreSQL, nous payons uniquement ce que nous utilisons, et la solution s'adapte automatiquement à la croissance de nos données », déclare Jagarlamudi. Cette démarche a permis à Expedia de s'adapter pendant la pandémie de COVID-19. Le système AWS est entièrement géré et met également Expedia à l'abri des interruptions liées à la maintenance et du besoin d'un administrateur de bases de données interne.
Résultats | Tirer parti des données en temps réel pour générer plus rapidement des informations commerciales
En migrant son système existant vers Aurora et en utilisant d'autres services AWS, Expedia a réduit les coûts des bases de données et mis un terme à l'enfermement propriétaire. Il s'est également mis à l'échelle pour faire face aux pics de trafic, tout en déchargeant son équipe des responsabilités liées aux processus manuels et à la gestion des bases de données. L'entreprise a également créé un système qui traite les réservations en quasi-temps réel, fournissant non seulement des performances accélérées à ses utilisateurs, mais aussi des informations métier rapides, notamment des mises à jour plus rapides de l'activité de paiement, pour ses fournisseurs.
À propos d'Expedia Group
Expedia Group utilise les fonctionnalités de plateforme et technologiques sur un vaste portefeuille d'entreprises et de marques, afin d'offrir la possibilité de voyages internationaux pour tous, et partout.
Services AWS utilisés
Amazon S3
Amazon Simple Storage Service (Amazon S3) est un service de stockage d'objets qui offre une capacité de mise à l'échelle, une disponibilité des données, une sécurité et des performances de pointe.
Amazon SageMaker
Amazon SageMaker s'appuie sur deux décennies d'expérience d'Amazon en matière de développement d'applications machine learning du monde réel, notamment les recommandations de produits, la personnalisation, les achats intelligents, la robotique et les appareils à assistance vocale.
En savoir plus »
Amazon SageMaker Studio
Amazon SageMaker Studio fournit une interface visuelle unique, basée sur le web, qui vous permet de mettre en œuvre toutes les étapes du développement machine learning. Cette solution améliore jusqu'à 10 fois la productivité de l'équipe de science des données.
En savoir plus »
Les pipelines Amazon SageMaker
Amazon SageMaker Pipelines est le premier service d'intégration continue et de livraison continue (CI/CD) spécialement conçu et facile à utiliser pour le machine learning (ML).
En savoir plus »
Explorer le parcours d'innovation d'Expedia avec AWS
D'autres témoignages d'Expedia
Démarrer
Les organisations de toutes tailles et de tous secteurs transforment leur activité et exécutent leurs missions au quotidien à l'aide d'AWS. Contactez nos experts et démarrez votre transition vers AWS dès aujourd'hui.