image004

Expedia Group acelera transações de pagamentos de fornecedores de um dia para segundos

2021

O Expedia Group (Expedia) continua crescendo como uma plataforma online líder de turismo, assim como as inovações que a empresa realiza nos pagamentos globais. É por isso que a Expedia decidiu migrar para uma arquitetura flexível orientada por microsserviços com o suporte da infraestrutura da Amazon Web Services (AWS) que pudesse se adaptar para cumprir os requisitos de tráfego intenso e alta disponibilidade do sistema. Essas melhorias permitiram que a Expedia otimizasse e simplificasse a pilha de tecnologias da empresa, reduzindo de 17% para 0,06% a taxa de ajustes manuais para o processamento de pagamentos de parceiros.

Parte do sistema herdado foi migrado para o Amazon Aurora, um banco de dados relacional compatível com MySQL e PostgreSQL e criado para a nuvem que combina a performance de bancos de dados comerciais com a simplicidade e a economia de bancos de dados de código aberto. Com o Aurora e mais de 20 serviços da AWS, a Expediu automatizou os processos manuais, reduzindo os custos e permitindo que a equipe se concentrasse nas atividades mais importantes. Agora a Expedia também oferece dados quase em tempo real para seus usuários e equipes internas, simplificando o processo de pagamento e melhorando a visibilidade e os insights para os parceiros de fornecimento. 

Customer-References-industry-Travel-Booking
kr_quotemark

No Aurora PostgreSQL, pagamos apenas pelo que usamos, e ele se ajusta automaticamente à medida que nossos dados aumentam.” 

Nirupama Jagarlamudi
Diretora sênior, desenvolvimento de software, Expedia Group

Identificação de um ponto problemático de escalabilidade com um fornecedor de banco de dados comercial tradicional

O Expedia Group tem mais de 20 sites de reservas, como o Expedia, o Vrbo, o Hoteis.com e o Orbitz, que os visitantes de mais de 70 países acessam para reservar acomodações, voos e muito mais em mais de 80 moedas. Como a empresa tem uma plataforma global, as equipes precisam realizar os pagamentos dos consumidores e dos parceiros. Para os pagamentos de parceiros, a Expedia colabora com fornecedores, como hotéis, cruzeiros e linhas aéreas, cujas reservas são distribuídas na plataforma. No modelo Expedia Collect, a Expedia recolhe o dinheiro dos consumidores e depois remete o pagamento para os fornecedores. Em 2019, a Expedia processou USD 7,6 bilhões em reservas de fornecedores, 25% a mais do que no ano anterior. 

Mas o crescimento da empresa começou a afetar o segmento de Accounts Payable Reconciliation (APRecon – Conciliação de Contas a Pagar). Com o aumento do volume, os trabalhos passaram a demorar mais para serem realizados, o que gerou um efeito cascata de atrasos e prejudicou os usuários. O APRecon no SQL Server também precisava de muita intervenção manual, o que afetou a equipe de operações da empresa. Além disso, alguns serviços criados no .NET, uma plataforma de desenvolvimento de código aberto, causou o aprisionamento tecnológico, limitando a implantação de serviços.  

A Expedia decidiu migrar para uma arquitetura Java orientada por microsserviços na nuvem. “Resolvemos criar o sistema em uma arquitetura orientada por microsserviços para que pudéssemos nos adaptar facilmente com a funcionalidade que a AWS oferece”, explicou Nirupama Jagarlamudi, diretora sênior, desenvolvimento de software do Expedia Group. Depois de realizar análises e comparações de custos de ofertas SQL Server e da nuvem, além de outras análises do SQL e do PostgreSQL, a empresa escolheu o Amazon Aurora PostgreSQL.

Libertação dos bancos de dados on-premises e herdados

A Expedia optou por realizar uma migração em fases para o Aurora PostgreSQL e planeja fazer a migração total do SQL Server para a AWS. Na fase inicial, a empresa migrou a unidade de hospedagem do sistema APRecon, que concilia as transações dos parceiros de hospedagem da Expedia, representando 80% de todo o volume do SQL Server. Os desenvolvedores do banco de dados refatoraram o esquema do SQL Server para o Aurora PostgreSQL usando uma nova ferramenta de migração de esquemas chamada Flyway. “O objetivo é manter a lógica de negócios nos serviços para que, se precisarmos recorrer a outro provedor ou serviço, seja possível fazer isso facilmente sem maiores implicações”, explicou Jagarlamudi. O desenvolvimento e o teste da migração do banco de dados, que inclui a atualização do esquema, levou apenas duas semanas. Depois de refatorar o esquema, a equipe começou a migrar os componentes criados no framework de software .NET para o Linux e o Spring Boot, o framework de código aberto baseado em Java. Agora a Expedia tem mais de 20 microsserviços integrados à pilha do Spring Boot.

O novo sistema na AWS, chamado de Matching and Reconciliation System (MARS – Sistema de Correspondência e Conciliação), foi lançado em maio de 2020. Ele usa os serviços de código aberto da AWS que, além de unificarem a pilha de tecnologias de pagamento da Expedia, eliminam o aprisionamento tecnológico. A Expedia usa o Amazon Simple Queue Service (Amazon SQS), um serviço totalmente gerenciado de filas de mensagens, para separar e escalar microsserviços. “O Amazon SQS é uma forma simples de integrar resiliência ao processo com um recurso durável de novas tentativas”, disse Jagarlamudi. Por exemplo, o Amazon SQS funciona com o Amazon Simple Storage Service (Amazon S3), um serviço de armazenamento de objetos que oferece escalabilidade, disponibilidade de dados, segurança e performance, para processar as solicitações de fornecedores. Assim, a Expedia garante um processamento orientado por eventos: o Amazon SQS notifica a organização dos novos arquivos de solicitações de fornecedores para que a equipe não precise recuperá-los do Amazon S3. 

Agora a Expedia pode oferecer dados quase em tempo real para seus usuários, fornecedores, funcionários do departamento de business intelligence e membros da equipe de operações. Todos os usuários de pagamentos da Expedia, inclusive os usuários operacionais e os fornecedores externos no portal da Expedia, usam o Amazon Elasticsearch Service (Amazon ES), que permite que os usuários pesquisem, analisem e visualizem custos impressionantes de reservas com eficácia. Quando as reservas são feitas, o processamento orientado por eventos oferece os dados para a equipe de operações e os fornecedores em menos de 1 segundo, com uma performance incrível de 2,6 segundos, o que levava mais de 1 dia no processamento em lotes no servidor anterior. Depois, o MARS apresenta os resultados para os usuários e a organização de business intelligence da Expedia. Os usuários acessam os dados do cluster de pesquisa, e a Expedia usa o Amazon Kinesis Data Streams, um serviço extremamente escalável e durável de transmissão, para coletar, processar e analisar dados de transmissão em tempo real de cada reserva, inclusive a data, o período de estadia, as informações do hóspede, as informações do hotel, o saldo, o histórico de acomodações e os pacotes de viagem. Esses atributos essenciais dos dados permitem que a equipe de operações da Expedia investigue problemas e responda a dúvidas dos fornecedores. “Nossa integração à business intelligence é muito mais flexível, e esse padrão pode permitir que outras equipes do Expedia Group aproveitem os dados para realizar suas funções na empresa”, contou Jagarlamudi. 

Em uma arquitetura orientada por microsserviços, o MARS pode se adaptar para lidar tanto com picos repentinos e inesperados de tráfego quanto com um fluxo mais leve. Por exemplo, a Expedia conseguiu adaptar seu serviço de ordens de compra para liberar reservas antigas estagnadas há 15 meses, realizando 200 transações por segundo em um período de 2 semanas. Depois, ela readaptou o serviço no fim da atividade para alinhá-lo as padrões normais de tráfego. Embora a Expedia tenha custos fixos para o provisionamento, o armazenamento e o licenciamento com o SQL Server, ainda usado para a pilha herdada que não foi migrada, o Aurora elimina as taxas de licenciamento e oferece custos e uma infraestrutura flexíveis. A Expedia não precisa mais gastar dinheiro com a capacidade inutilizada dos datacenters. “No Aurora PostgreSQL, pagamos apenas pelo que usamos e ele se ajusta automaticamente à medida que nossos dados aumentam”, disse Jagarlamudi. Assim, a Expedia conseguiu se adaptar durante a pandemia de COVID-19. O sistema totalmente gerenciado da AWS também permitiu que a Expedia zerasse o tempo de manutenção e dispensasse o uso de um administrador interno de banco de dados. 

Uso de dados em tempo real para gerar insights comerciais mais rápido

Ao migrar o sistema herdado para o Aurora e usar outros serviços da AWS, a Expedia reduziu os custos do banco de dados, eliminou o aprisionamento tecnológico e adaptou-se para lidar com os picos de tráfego, além de eliminar a responsabilidade da equipe de realizar processos manuais e gerenciar o banco de dados. Ela também criou um sistema que processa reservas quase em tempo real, oferecendo uma performance veloz para os usuários e permitindo insights comerciais ágeis, como atualizações mais rápidas das atividades de pagamento para os fornecedores.


Sobre o Expedia Group

O Expedia Group usa recursos de plataformas e tecnologias de um amplo portfólio de empresas e marcas para possibilitar viagens globais a todos e a qualquer lugar. 

Benefícios da AWS

  • Disponibiliza dados em segundos, e não em mais de um dia   
  • Reduz os custos do banco de dados
  • Elimina o aprisionamento tecnológico
  • Adapta-se para lidar com picos repentinos e inesperados de tráfego
  • Gera insights comerciais úteis
  • Realoca 80% do volume do sistema herdado

Serviços da AWS usados

Amazon Aurora

O Amazon Aurora é um banco de dados relacional compatível com MySQL e PostgreSQL criado para a nuvem que combina a performance e a disponibilidade do banco de dados empresarial tradicional com a simplicidade e a economia do banco de dados de código aberto.

Saiba mais »

Amazon Simple Queue Service (SQS)

O Amazon Simple Queue Service (SQS) é um serviço totalmente gerenciado de filas de mensagens que permite a separação e a escalabilidade de microsserviços, sistemas distribuídos e aplicações sem servidor. 

Saiba mais »

Amazon Simple Storage System (S3)

O Amazon Simple Storage Service (Amazon S3) é um serviço de armazenamento de objetos que oferece escalabilidade, disponibilidade de dados, segurança e performance líderes do setor.

Saiba mais »

Amazon Kinesis Data Streams

O Amazon Kinesis Data Streams (KDS) é um serviço de streaming de dados em tempo real com escalabilidade massiva e resiliência.

Saiba mais »


Comece a usar

Empresas de todos os portes em todos os setores estão transformando seus negócios diariamente usando a AWS. Entre em contato com nossos especialistas e comece sua própria jornada para a Nuvem AWS hoje mesmo.