Tornando dados acessíveis

Propaganda
Tornando dados acessíveis
em uma arquitetura distribuída e de microsserviços
Gustavo Amigo - 2017 QCONSP
1
Apresentação
Gustavo Amigo
Formado em Ciência da Computação pela ICMC-USP São Carlos, possui
13 anos de experiência com diversas linguagens como Scala, Java e
Python. É entusiasta de programação distribuída e funcional,
principalmente Scala. É um dos principais desenvolvedores da plataforma
de pagamentos e promoções da 99.
https://www.linkedin.com/in/gustavoamigo
https://twitter.com/gustavoamigo
https://github.com/gustavoamigo
2
Agenda
●
●
●
●
●
Um pouco de história da 99
Desafíos de micro serviços
Solução com o airflow
Metabase
Redshift
3
Um pouco de história - No início
4
Um pouco de história - AGORA
5
Desafios de micro serviços
●
●
●
Dados estão distribuídos
Diferentes tecnologias
○ MySQL
○ Postgres
○ Redis
○ S3
○ Elastic Search
Plataforma externas
●
●
Tomada de decisões
Contabilidade
6
Solução
Requisitos:
● Fácil de entender
● Fácil manutenção
● Preferência por
Python
Data warehouse
7
Airflow
●
●
●
●
Super crontab, com worflows escritos em Python na forma de DAGs
Open source
Criado pelo Airbnb
Código bastante enxuto e simples de entender
https://github.com/apache/incubator-airflow
8
AIRFLOW - DAG
●
●
●
É um grafo de atividades, representa um workflow
Cada DAG tem um agendamento de próprio
A DAG é um script python
9
AIRFLOW - DAG
Backfill automático a partir da data de início
10
AIRFLOW - DAG
11
AIRFLOW na 99
●
●
●
●
Ambiente local, staging e produção
Deploy orquestrado pelo Jenkins
PR revisado pela equipe
Operadores próprios
○
○
●
DataTransfer
Migrations
Roda no Elastic Beanstalk, com auto-scaling para os workers
12
Alguns números da implantação do airflow na 99
●
●
●
81 DAGs
496 Pull Requests
17 committers
13
Metabase
●
●
●
Open Source
Cliente SQL para Web
Muito fácil de usar
http://www.metabase.com/
14
Amazon Redshift
●
●
●
●
Serviço gerenciado pela AWS
Protocolo compatível com Postgres 8
Colunar e distribuído
Preço bem competitivo
https://aws.amazon.com/redshift/
15
Resumo - TORNANDO dados acessíveis
AIRFLOW + REDSHIFT + METABASE
16
Volte de 99
PROMOCODE: POPNAFAIXA
17
http://99taxis.com/carreiras
18
Download