QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online...

86

description

Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala. Para suportar um grande volume de requisições, a solução foi desenvolvida sobre uma infraestrutura elástica, com provisionamento automático de recursos. A utilização de uma nuvem híbrida permitiu a aplicação obter alto desempenho e disponibilidade.

Transcript of QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online...

Page 1: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala
Page 2: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Agenda

• Intro • Migrando de relatório para uma solução de BI • Under the Hood • Operação e Lições aprendidas

Page 3: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FALAR da SAMBA

Page 4: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FALAR da SAMBA

HACKWEEKS

Page 5: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala
Page 6: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala
Page 7: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala
Page 8: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Reporting

Analytics&

Page 9: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

No Início - Report

Fornecer informações de usoEstatísticas e dados gerais

Page 10: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

• Número de Visualizações • Número de Visualizações Completas • Retenção por quartil • Tráfego • Número de Uploads, etc…

No Início - Report

Page 11: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

No Início - Report

+ Dados

Page 12: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

!

• Problema: Custo Elevado • Apresentava bom desempenho

• Problema: Instabilidade, interações entre aplicações • Aplicações com perfis muito diferentes convivendo num

mesmo cluster. • Crescimento expressivo no volume de dados e requisições

• Problema: crescimento acelerado da base, administração do banco.

No Início - Então decidimos coletar mais dados - Java, Python e Mysql

T1

Page 13: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

O Problema mudou?

Rever os objetivos

O problema mudou?

Page 14: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FEYNMAN PROBLEM-SOLVING ALGORITHM

Murray Gell-Mann

“ http://drtomcrick.com/2011/04/26/feynman-problem-solving-algorithm/

Feynman

Page 15: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FEYNMAN PROBLEM-SOLVING ALGORITHM1. Write down the problem.

Murray Gell-Mann

“ http://drtomcrick.com/2011/04/26/feynman-problem-solving-algorithm/

Page 16: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FEYNMAN PROBLEM-SOLVING ALGORITHM1. Write down the problem. 2. Think very hard.

Murray Gell-Mann

Page 17: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FEYNMAN PROBLEM-SOLVING ALGORITHM1. Write down the problem. 2. Think very hard. 3. Write down the answer

Murray Gell-Mann

Page 18: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

De Relatórios Para Analytics

O problema - BI

Page 19: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

+Perguntas+ Dados

+ Clientes+Segmentos

O problema - BI

Page 20: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

O problema - BI

Dados Vivos Informação

Page 21: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

O problema - BI

Dados Vivos Informação

Page 22: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Processamento de dados

Page 23: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

+ Perguntas a cada dia

E crescendo ….

Qual minha retenção média?

Qual é o perfil da minha audiência?

De onde é minha audiência?

Qual o melhor horário para publicar um vídeo?

Qual parte do meu vídeo recebeu mais seeks?

Qual é a conversão?

Quais dispositivos estão sendo usados?

Vídeo mais assistido?

Page 24: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Foco na Inovação e construção da solução Somos uma startup

Page 25: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Manter foco na Inovação Flexível SLA Alto Escalável Pagar de acordo com o uso Baixo custo de administração de infra

Objetivos

Page 26: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

A visualização dos dados deve ser clara e objetiva.

Objetivos

Design agrega valor!

Page 27: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Analytics geralGe ral

Page 28: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Analytics detalhes de consumo da mediaVI

DEO

Page 29: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Em altaEM

ALTA

Page 30: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Perfil da audiênciaQUEM

Page 31: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Samba facts Dados de volume do analytics

Page 32: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Small Sharp Tools

Filosofia Unix

Page 33: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETARData Pipeline

PROCESSAR INFORMAR

Data Pipeline - STTM

Sambatech Tracking Model

COLETOR APIPROCESSADOR

Page 34: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

STTM - Solução

Dynamo Amazon SQS

S3Data and Logs

Glacier

COLETOR API

PROCESSADOR

AGREGADOR

SUMARIZADOR

HTTP IN HTTP OUT

EMRData Processing

Page 35: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETARData Pipeline

PROCESSAR INFORMAR

Data Pipeline - STTM

INFORMAR

COLETOR

Page 36: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Coleta de dados - STTM

GET sttm.gif http://sttm.sambatech.com.br/collector/__sttm.gif?sttms=12de2304-74f2-80f0-8b8b-909ec4c4f158&sttmu=123a232saa111kkkk3&sttmm=p07,r07,p08,r08,p09,r09,p10,r10&sttmw=pid:310/cat:5219/mid:b1e9b34ce8f6d8e73d5793a80387967d&sttmk=ae810ebc7f0654c4fadc50935adcf5ec&&sttmsg=org:www.mydomain.com.br&sttmm=play

COLETOR

Response

35 Bytes

Page 37: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETOR - Objetivos

• Rápido • Escalável • Simples • Confiável • Consistente • Flexível

Page 38: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETOR

Page 39: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETOR

COLETOR

HTTP IN

Logger

Msg Builder

Page 40: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETOR

COLETOR

HTTP IN

Logger

Msg Builder

Amazon SQS

Page 41: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETOR

COLETOR

HTTP IN

Logger

Msg Builder

Amazon SQS

S3Data and Logs

Glacier

Page 42: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETOR

Amazon SQS

S3Data and Logs

Glacier

COLETOR

HTTP IN

Logger

Msg Builder

GIF

Page 43: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETOR

Page 44: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Comunicação

Amazon SQS

• Assincronia e Controle de fluxo • Sem perdas de mensagens • Log de mensagens não processadas. • Escalável sob demanda • Alto SLA • Gerenciado • Custo relativamente Baixo • Não suporta AMQP

Page 45: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETARData Pipeline

PROCESSAR INFORMAR

Data Pipeline

INFORMARPROCESSARCOLETAR

PROCESSADOR

Page 46: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Processador

Dynamo Amazon SQS

PROCESSADOR

AGREGADOR

SUMARIZADOR

EMRData Processing

Page 47: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Agregador

Dynamo Amazon SQS

AGREGADOR

Builder

Msg Agreg

Page 48: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Porque Dynamo

• Baixa Latência • Alta performance • Gerenciado • Escalável • Alto SLA • Multi A/Z • Hot Keys Problem

Dynamo

Page 49: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Agregador

Amazon SQS

AGREGADOR

Builder

Msg Agreg

Page 50: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Agregador

Amazon SQS

AGREGADOR

Builder

Msg Agreg

Auto scaling GroupInstances

APP SrvAgregation

Page 51: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Hot Keys Problem

Dynamo

AGREGADOR

Builder

Msg Agreg

Registro

Writ

es0

27.5

55

82.5

110

Time

1 2 3 4 5 6

Write Capacity

Page 52: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Hot Keys Problem

Dynamo

AGREGADOR

Builder

Msg Agreg

Split Keys

Page 53: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Hot Keys Problem

Writ

es0

27.5

55

82.5

110

Time

1 2 3 4 5 6

Write Capacity

Dynamo

AGREGADOR

Builder

Msg Agreg

Split Keys

Page 54: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Hot Keys Problem

Dynamo

AGREGADOR

Builder

Msg Agreg

Split Keys

Tabelas Diarias

Page 55: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Processador

Dynamo Amazon SQS

PROCESSADOR

AGREGADOR

SUMARIZADOR

EMRData Processing

Page 56: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Sumarizador

Dynamo

EMRData Processing

Sumarizador

Page 57: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

!

• Escalável • Controle de Custos • Managed • Hadoop como serviço • Map Reduce Engine • Bom gerenciamento de capacidade • Integração com S3 e Dynamo

EMRData Processing

Porque EMR

Page 58: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Diarias

Dynamo EMRData Processing

Sumarizador

Load

Sumarizador

Page 59: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Diarias

Dynamo EMRData Processing

Sumarizador Merge Keys

Sumarizador

6Jobs

Page 60: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Sumarizadas Minutos

Horas

Dynamo EMRData Processing

Sumarizador

Save

Sumarizador

Page 61: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

1. Run job 2. Find Bottoleneck 3. Optimize

Sumarizador

Dynamo

EMRData Processing

Sumarizador 4x/diaNetwork

Page 62: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Sumarizador

Dynamo

EMRData Processing

Sumarizador

Alive Cluster

4x/dia

Page 63: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Sumarização hierárquica

Cliente

Projeto Projeto

MediaCategoria

Media Media

• Modelos de Árvore • Child References

Guarda a referência dos filhos

Exemplo: Visualizações de todos os filhos do projeto (categorias): pid:2/*

Page 64: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

•Não exige operação em sub-arvores •Eficiente para pais com múltiplos filhos

Page 65: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Conhecer bem o problema e os dados é essencial.

Otimizações locais são eficientes!

Page 66: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

COLETARData Pipeline

PROCESSAR INFORMAR

Data Pipeline

INFORMARINFORMARCOLETAR

API

Page 67: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

API - Rest

Dynamo

API

CDN

Page 68: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Permanente

Ciclo de vida dos dados

!Minuto, hora ,dias, meses

Dynamo

APIMYSQL Cluster

Page 69: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Analytics - Solução

Page 70: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

RECAP

Dynamo Amazon SQS

S3Data and Logs

Glacier

COLETOR API

PROCESSADOR

AGREGADOR

SUMARIZADOR

HTTP IN HTTP OUT

EMRData Processing

Page 71: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Lições aprendidas

As aplicações são focadas, pequenas e conectadas por uma fila ou datastore.

O output de uma é input para a outra.

Page 72: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Manter foco na Inovação Flexível SLA Alto Escalável Pagar de acordo com o uso Baixo custo de administração de infra

Objetivos

Page 73: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Lei de Little

L = λW

L = média de requisições no sistema

λ = média de chegada de requisições

W = Tempo para processar uma requisição (latência)

Page 74: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Cus

to

0

0.25

0.5

0.75

1

Latência (H)

0 1 3 6 12 24

100%

57%46%

40% 38% 37%

Latência vs Custo

Custo estimado Por Requisição

Latência vs Custo

Page 75: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Custo

0

0.25

0.5

0.75

1

Latência(H)

0 1 3 6 12 24

100%

57%

46%40% 38% 37%

Latência vs Custo

Custo estimado Por Requisição

Latência vs Custo

Page 76: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Como manter tudo UP?

Como Manter tudo no ar ?

Page 77: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Como manter tudo UP and Running?

Automatizar tudo!Metric Driven + 2000

Page 78: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Como manter tudo UP and Running?

Automatizar tudo!Metric DrivenMonitoramentos + 400

+ 2000

Page 79: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Como manter tudo UP and Running?

Automatizar tudo!Metric Driven + 2000Monitoramentos + 400Notificações de falha

Page 80: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Monitoramento e alertas

Métricas Monitoramento e Alerta

Page 81: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala
Page 82: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FAIL FAST

Falhe e se recupere rapidamente!+Proativo-Reativo

!

• Provisionamento automático de Infraestutura • Deploy e Configuração - CloudFormation / Ansible • FailOver

-Erros

Page 83: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

FAIL FAST

Cry Babies

Alarmes críticos alertam o time e escalam automaticamente.

Page 84: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

• Soluções gerenciadas ajudam a manter o foco no problema, mas podem trazer limitações inesperadas.

• Arquitetura flexíveis ajudam a responder rapidamente a limitações.

!

!!

COnclusão

Page 85: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

Evoluções

!

• Realtime • Elastic Search • Aumentar o uso do S3 para RAW Data • DW Solution.(RedShift) • +Análises

Page 86: QConSP 2014 SambaTech Analytics: Arquiteturas e tecnologias por trás da análise de vídeos online em larga escala

LIDIO RAMALHO, [email protected]!

@lidioramalho