O Fanatiz é uma das plataformas de streaming com crescimento mais rápido no mundo todo. Tem dezenas de milhares de assinantes e faz muito sucesso entre os expatriados, que podem ver os jogos de seus times em tempo real ou sob demanda em qualquer lugar. Isso não seria possível sem a 1190 Sports, que gerencia e comercializa direitos esportivos, e a Nunchee, a tecnologia de marca própria (white label) que possibilita serviços de streaming diretamente para o consumidor.
Essas empresas pertencem à Fz Sports, que tem 85 funcionários em escritórios espalhados pela América Latina, Europa, e Estados Unidos, e são administradas por ela. A Fz Sports transmite cerca 10.000 jogos por ano, que correspondem a aproximadamente 20 por dia.
Fig. 1 — Aplicativo móvel Fz Sports - Meu Estádio
Fig. 2 — Aplicativo móvel Fz Sports - Tela inicial do meu time
“Queremos ser o maior estádio digital do mundo. Nossos assinantes acompanham principalmente o futebol masculino e feminino, mas também transmitimos basquete, handebol, golfe e outros esportes”, explicou Damian Krynveniuk, vice-presidente de engenharia e operações técnicas da Fz Sports.
Para conectar os fãs de esporte ao conteúdo que eles amam, a Fz Sports adota novas tecnologias rapidamente, e todas as suas três empresas têm como base a tecnologia de ponta e a cultura da inovação. “Estamos otimizando toda a cadeia de valor dos esportes e reinventando a forma como os detentores de direitos, as marcas e os torcedores se conectam. Além disso, pretendemos nos tornar o principal destino digital para curtir e monetizar conteúdo esportivo”, acrescentou Krynveniuk.
Em eventos ao vivo, a escalabilidade é um desafio universal. Considerando só o futebol, podem acontecer 30 partidas simultâneas. Os sistemas devem estar preparados para lidar com aumentos súbitos de demanda sem problemas.
“Se o sistema cai durante um jogo, você corre o risco de perder assinantes. Eles são fiéis ao time do coração, não à plataforma de streaming”, explicou Krynveniuk. “Precisamos ter a capacidade de transmitir em tempo real sem interrupções e gerenciar os picos de tráfego.” Entretanto, já que nem todos podem se dar ao luxo de ter capacidade de reserva, a Fz Sports precisava encontrar uma plataforma de banco de dados de alto desempenho adequada para suas empresas.
A empresa desenvolveu um produto mínimo viável com a tecnologia que mais conhecia: bancos de dados relacionais. No entanto, logo enfrentou desafios relacionados à escalabilidade e versatilidade, e a equipe de desenvolvedores perdia muito tempo com a manutenção manual.
A Fz Sports fornece conteúdo em diversas regiões e vários dispositivos, de vestíveis e smartphones a navegadores da Web e TVs conectadas. Esse nível de complexidade requer um banco de dados flexível, com a capacidade de trabalhar com dados não estruturados e facilitar a navegação. Os assinantes devem encontrar de forma rápida e fácil o esporte que querem acompanhar, ao vivo ou pesquisando nos arquivos.
Fig. 3 — Aplicativo móvel Fz Sports - lista de jogos sob demanda
A Fz Sports começou a procurar um banco de dados não relacional que trabalhasse com dados não estruturados e pudesse crescer e se adaptar à empresa. “Estávamos procurando um banco de dados leve, fácil de usar e compatível com Javascript, microsserviços e AWS. No mercado, o melhor banco de dados para trabalhar com altos volumes de tráfego era o MongoDB”, explicou Krynveniuk.
A equipe adotou uma pilha MERN: uma estrutura de desenvolvimento Web constituída pelo MongoDB, Express.js, React.js, e Node.js. O MongoDB atua como camada de banco de dados, com os drivers do Express e do Node no meio, como camada de aplicativo, e o React atua na parte superior para criar a camada de apresentação. A vantagem dessa abordagem é que os desenvolvedores podem criar soluções full stack usando uma metodologia padrão e uma base digital principal.
No início, a Fz Sports implementou o MongoDB Community edition e tinha uma equipe dedicada que gerenciava 12 bancos de dados. Esse passo foi fundamental na jornada de transição do trabalho relacional para o não relacional, mas não foi o destino final. Segundo Krynveniuk, “o MongoDB Community foi uma excelente ferramenta inicial, mas o gerenciamento com intervenção humana era uma limitação. Tínhamos um funcionário em tempo integral dedicado somente ao gerenciamento do banco de dados, em vez de ter pessoas trabalhando para melhorar a interface e a experiência dos usuários”.
A equipe resolveu mudar para o MongoDB Atlas, um banco de dados totalmente gerenciado, que inclui suporte e orientação sobre as melhores práticas, além de melhores painéis, métricas e ferramentas para otimizar o desempenho. “Adotamos uma visão estratégica de otimização, com foco nos projetos que terão o maior impacto. Por exemplo, trabalhamos com o MongoDB em um projeto de um mês para reorganizar nosso banco de dados de autorização e melhoramos o desempenho em 100%”, relembrou Krynveniuk. “Isso foi possível devido ao banco de dados não estruturado e ao suporte excelente dos engenheiros do MongoDB.”
Damian Krynveniuk, vice-presidente de engenharia e operações técnicas da Fz Sports
Para o cotidiano dos negócios, o MongoDB Atlas oferece todos os recursos necessários para que a Fz Sports lide com os picos de demanda e ajude os assinantes a encontrar rapidamente o conteúdo que desejam. A capacidade de escalar um cluster de banco de dados tanto vertical quanto horizontalmente, sem tempo de inatividade, e de oferecer suporte até mesmo para redução e escalamento vertical automáticos é muito eficiente e rentável.
A equipe usa instantâneos e painéis no Atlas para rastrear os clientes de pay-per-view e emitir relatórios de vendas para o restante da empresa. Essas funcionalidades em tempo real ajudam a Fz Sports a planejar atividades, como campanhas de marketing e ativação de outros canais, com uma velocidade 25% maior que a obtida anteriormente.
O MongoDB Atlas Device SDKs é usado para gerenciar os disparadores do Fanatiz e levar eventos de lógica comercial para o banco de dados para a realização de consultas. Esse produto mantém as informações sincronizadas com precisão de milissegundos e mantém a consistência entre oito nós que operam em paralelo com o MongoDB. Também é útil para gerar painéis.
Para concretizar a prioridade de melhorar a experiência dos usuários, a Fz Sports conta com as impressionantes funcionalidades de pesquisa e arquivamento do Atlas.
“Oferecemos mais de 10.000 jogos por ano na nossa plataforma, e tudo isso precisa estar disponível sob demanda para os assinantes”, relatou Krynveniuk. “ O MongoDB Atlas Search ajuda os assinantes a encontrar rapidamente os jogos que desejam ver, e o Online Archive mantém o banco de dados rápido, responsivo e rentável, com arquivamento do conteúdo depois de dois anos.” O Online Archive reduziu os custos de armazenamento em 40%.
No momento, a equipe está realizando uma prova de conceito com um mecanismo de recomendação baseado no Atlas Search. O mecanismo utilizará IA e o recurso MoreLikeThis para recomendar conteúdo aos assinantes de forma proativa, com base nas preferências e no histórico de visualização.
Com o MongoDB, a Fz Sports pode oferecer aos assinantes um acesso digital ininterrupto a eventos esportivos ao vivo, não importando se há 1 jogo ou 20 jogos ocorrendo ao mesmo tempo. “Temos convicção de que podemos manter altos níveis de desempenho e de que nunca decepcionaremos os nossos clientes”, afirmou Krynveniuk. “Com o MongoDB, estamos não só mantendo, mas melhorando continuamente o desempenho sem aumentar as despesas. A utilização de dados e os tempos de resposta estão melhorando continuamente, e a plataforma está sempre atualizada e executando a versão mais recente.”
Fig. 4 — Aplicativo móvel Fz Sports - Calendário de jogos ao vivo e futuros
Como adotante precoce de novas tecnologias, a Fz Sports participa de sessões de treinamento e workshops anuais sobre o MongoDB, para aperfeiçoar as competências dos funcionários e mantê-los informados sobre as novidades. A equipe escolhe novos recursos do Atlas para testar com base no impacto que eles terão na experiência dos usuários.
“Com o MongoDB Atlas, somos mais produtivos do que nunca. A curva de aprendizagem é rápida e, devido à facilidade de uso, a integração de novos funcionários é fácil. Como contamos com o suporte do MongoDB, já não precisamos de um guru dedicado aos bancos de dados. Cientes de que temos a agilidade necessária para fazer essas mudanças, podemos focar na melhoria dos serviços”, comentou Krynveniuk.
Além disso, a Fz Sports tem métricas que demonstram os ganhos de produtividade. Houve uma melhora de 50% no desempenho com a reestruturação de um serviço usando índices do MongoDB, o Online Archive e as melhores práticas que aprendemos com a equipe de suporte. Antes, o gerenciamento de uma grande quantidade de espectadores simultâneos era um desafio, mas agora a empresa lida com isso sem precisar de escalamento adicional.
“O MongoDB Atlas é uma ferramenta excepcional para tudo o que fazemos em dispositivos móveis, na web e na nuvem. Ter um banco de dados transacional rápido é fundamental, e eu recomendo enfaticamente o MongoDB como o líder em sua área” concluiu Krynveniuk.
Damian Krynveniuk, vice-presidente de engenharia e operações técnicas da Fz Sports