Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Grafos em escala: Usando Titan, Faunus e Hadoop para recomendação de produtos

Grafos em escala: Usando Titan, Faunus e Hadoop para recomendação de produtos

Arthur Grava

March 30, 2016
Tweet

Other Decks in Technology

Transcript

  1. Grafos em escala Usando Titan, Faunus e Hadoop para recomendação

    de produtos Arthur Grava Engenheiro Líder de Big Data @arthur_grava [email protected]
  2. • 786 lojas físicas • 8 centros de distribuição •

    +18 mil colaboradores • +40 milhões de clientes • 16 milhões de visitantes únicos mês
  3. Porque utilizar Grafos? • Modelagem simplificada • Abstração das relações

    entre clientes e produtos • Facilidade em iterar nas entidades e seus relacionamentos • Facilidade para o cálculo de comportamentos básicos
  4. Facilidades lidando com grafos • Titan, assim como outros bancos

    / frameworks, utilizam o Gremlin (DSL para grafos) • Facilita a escrita do código • Compatibilidade com outras plataformas
  5. Solução • Remodelagem do grafo • Manter arestas que podem

    causar impacto por volume como unidirecionais
  6. • ~600 milhões de vértices • ~ 2.5 bilhões de

    arestas • 1TB+ de dados • Tempo de resposta para uma query simples • 45ms • ~2500 read requests / sec • ~100 write requests / sec O quão grande?