O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

TDC2017 | POA Trilha BigData - A jornada para construir um Data Lake na nuvem

104 visualizações

Publicada em

Trilha BigData - A jornada para construir um Data Lake na nuvem

Publicada em: Educação
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

TDC2017 | POA Trilha BigData - A jornada para construir um Data Lake na nuvem

  1. 1. Trilha Big Data: A jornada para construir um Data Lake na nuvem Matheus Espanhol Porto Alegre, 10 de Novembro de 2017
  2. 2. O que vem por aí... Google Cloud Storage Google BigQuery SPECTRUM
  3. 3. Se você pensar em um Data Mart como uma garrafa de água: limpa, embalada e estruturada para fácil consumo. O Data Lake é onde a água se encontra em seu estado mais natural. Essa água veio de diversas fontes e várias pessoas podem vir a examinar, mergulhar ou colher amostras da água do lago. James Dixon - Pentaho CTO
  4. 4. DATA LAKE
  5. 5. DATA LAKE Armazena dados em formato natural
  6. 6. DATA LAKE Todos os dados da organização em um só lugar Armazena dados em formato natural
  7. 7. DATA LAKE Insights rápidos Todos os dados da organização em um só lugar Armazena dados em formato natural
  8. 8. DATA LAKE Fácil adaptação a mudanças Insights rápidos Todos os dados da organização em um só lugar Armazena dados em formato natural
  9. 9. DATA LAKE Suporta todos os tipos de dados Fácil adaptação a mudanças Insights rápidos Todos os dados da organização em um só lugar Armazena dados em formato natural
  10. 10. DATA LAKE Suporta todos os tipos de dados Fácil adaptação a mudanças Acessível para diferentes perfis de usuários Insights rápidos Todos os dados da organização em um só lugar Armazena dados em formato natural
  11. 11. Amazon S3 Durabilidade de 99.999999999% Disponibilidade de 99.99% $0.023/GB $0.0125/GB $0.004/GB
  12. 12. Google Cloud Storage (GCS) Durabilidade de 99.999999999% Disponibilidade de 99.95% Acesso instantâneo a todas classes de storage $0.026/GB $0.023/GB $0.016/GB $0.010/GB
  13. 13. A Movile Líder em marketplaces móveis 100 milhões de pessoas utilizam os serviços da Movile todo mês Estamos conectados a mais de 70 operadoras em toda América
  14. 14. Comparativo entre cloud storages Tabela: event_YYYYMM - 380 GB/mês 9 meses 2017 5 anos (event_201201 - event_201612) 3 meses 2017 Coldline Nearline Regional 18.2 TB 3.4 TB 1.1 TBGCS: $ 184,68 / mês 9 meses 2017 5 anos (event_201201 - event_201612) IA Standard 18.2 TB 3.4 TB 1.1 TB Glacier 12 meses 2017 5 anos (event_201201 - event_201612) Standard 18.2 TB 4.5 TB IA S3: $ 141,81 / mês S3: $ 296,97 / mês
  15. 15. Presto
  16. 16. Presto - Monitoramento
  17. 17. Presto - Airpal
  18. 18. Amazon Elastic Map Reduce (EMR) Facilita a configuração e gerenciamento de clusters Hadoop EMR File System (EMRFS) para compatibilidade entre S3 e HDFS Possibilidade de alocar instâncias Spot Substituição automática de nós do cluster Monitoramento com CloudWatch
  19. 19. Presto no EMR Consultar diretamente os dados no S3 Dados mais utilizados no HDFS Scale-up e Scale-down online Excelente suporte SQL
  20. 20. Presto no EMR Consultar diretamente os dados no S3 Dados mais utilizados no HDFS Scale-up e Scale-down online Excelente suporte SQL Vamos substituir o Redshift?
  21. 21. Gargalo Download do arquivo CSV do S3 Solução Mudar formato de arquivo (Parquet, ORC) Mudar compactação (Gzip, Snappy, LZ) Aumentar número de worker nodes
  22. 22. Presto - Spark - Hive - EMR Text Gzip Parquet Snappy Parquet Gzip ORC Tempo de conversão do arquivo 93 min 37 min 78 min Tamanho do arquivo no S3 61.4 GB +197.1 GB +45.1 GB +42.3 GB Tempo de count 3:35 min 1:01 min 11 sec 16 sec Tempo de query com agregação 3:40 min 47 sec 2:19 min 22 sec Linhas transferidas por segundo 1.72M rows/s 6.12M rows/s 34.7M rows/s 19.7M rows/s Taxa de transferência 292MB/s 1.85GB/s 2.93GB/s 14.6MB/s Tamanho dos dados varridos 61.4 GB 112 GB 31.3 GB 274 MB
  23. 23. Presto - Estimativa de custo mensal Serviço AWS $/hora Horas/mês Custo/mês 1 EMR EC2 m4.xlarge full time (MASTER) $0,30 720 $218,87 15 EMR EC2 m4.xlarge full time (CORE + TASK) $0,30 10800 $3.283,05 Extra S3 Storage (ORC) $230,52 1 RDS PostgreSQL db.t2.micro para os metadados $0,019 720 $14,33 Retorno de dados S3/IA $262,15 $4.008,92 Serviço AWS $/hora Horas/mês Custo/mês 1 EMR EC2 m4.xlarge full time (MASTER) $0,30 720 $218,87 5 EMR EC2 m4.xlarge full time (CORE + TASK) $0,30 3600 $1.094,35 10 EMR EC2 m3.xlarge SPOT (TASK) $0,06 7200 $467,32 Extra S3 Storage (ORC) $230,52 1 RDS PostgreSQL db.t2.micro para os metadados $0,019 720 $14,33 Retorno de dados S3/IA $262,15 $296,97 + $2.287,54 -$1.721,38 Storage Processamento
  24. 24. Bigquery SQL as a Service Suporte a operações batch ou stream Suporte ANSI SQL Permite o mapeamento de arquivos no GCS
  25. 25. Bigquery
  26. 26. BigQuery - Estimativa de custo mensal Storage BQ Processamento $243,49 $674,06 Período / GCS CSV Gzip (TB) Usuários Consultas por mês TBs processados Custo Bigquery 3 meses (Regional) 1.1 10 150 7.10 $35,50 9 meses (Nearline) 3.4 3 2 17.8 $50,60 5 anos (Coldline) 18.2 3 0,2 8.11 $47,50 $133,60$296,97 Storage S3
  27. 27. Amazon Athena Serviço de SQL sobre dados armazenados S3 “Presto as a Service” Sistema de cobrança semelhante ao Google Bigquery Uso de expressões regulares para parser de logs
  28. 28. Amazon Athena
  29. 29. CREATE EXTERNAL TABLE server_logs.transaction_log ( `log_type` string, `log_date` timestamp, `java_class` string, ...) PARTITIONED BY (year int, month int, day int, server string) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe' WITH SERDEPROPERTIES ( 'serialization.format' = '1', 'serialization.null.format' = 'null', 'input.regex' = '^x1b[39m[([^ ]*)]x1b[0;39ms+x1b[35m[([^,]*),([^ ]*)]x1b[0;39ms+x1b[33m[([^ ]*)]x1b[0;39ms+x1b[35m[([^ ]*)]x1b[0;39ms+|s+TransactionLogs+[s+id=([^ ]*);.*?s+applicationId=([^ ... ]*);.*?s+instanceName=([^ ]*);.*?s+rotateNumber=([^ ]*);.*?s+transactionType=([^ ]*);.*?s+chargePriority=([^ ]*);.*?s+requestPerformedDate=([^;]*);.*?s+strategyId=([^ ]*).*?]s+([^.]*).*?$' ) LOCATION 's3://movile-data-lake/mobile-content/server_logs/transaction_log/' Amazon Athena
  30. 30. ALTER TABLE server_logs.transaction_log ADD PARTITION (year = 2017, month = 01, day = 04, server = 'server1') LOCATION 's3://movile-data-lake/mobile-content/server_logs/transaction_log/2017/01/04/server1/' aws s3 ls s3://movile-data-lake/mobile-content/server_logs/transaction_log/2017/01/04/server1/ 2017-01-09 17:50:47 37398164 transaction.k3m.2017-01-04.log.0.gz 2017-01-09 17:50:49 37686727 transaction.k3m.2017-01-04.log.1.gz 2017-01-09 17:50:53 33129444 transaction.k3m.2017-01-04.log.10.gz 2017-01-09 17:50:55 33307109 transaction.k3m.2017-01-04.log.11.gz 2017-01-09 17:50:57 33377788 transaction.k3m.2017-01-04.log.12.gz 2017-01-09 17:51:00 33448852 transaction.k3m.2017-01-04.log.13.gz
  31. 31. Athena - Estimativa de custo mensal Período / S3 CSV Gzip (TB) Usuários Consultas por mês TBs processados Custo Athena Custo leitura S3 12 meses (Standard) 4.5 13 152 24.9 $86.10 5 anos (I/A) 18.2 3 0,2 8.11 $47,50 $83,05 $133,60 $83,05 $216,65 $296,97 Storage S3 Processamento $513,62
  32. 32. Tabelas externas no Redshift Utiliza o metadado do Athena Permite cruzar dados do S3 com tabelas do Redshift Utiliza o processamento do cluster Redshift Redshift Spectrum SPECTRUM
  33. 33. CREATE EXTERNAL SCHEMA IF NOT EXISTS messages FROM DATA CATALOG DATABASE 'messages' iam_role 'arn:aws:iam::2222222222:role/movile-redshift-athena' CREATE EXTERNAL DATABASE IF NOT EXISTS; CREATE EXTERNAL TABLE messages.sent_messages( id bigint ,sequence varchar ,msisdn bigint ... ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' STORED AS TEXTFILE LOCATION 's3://movile-data-lake/mobile-content/redshift/messages/sent_messages/csv; Redshift Spectrum
  34. 34. Data Lake - Metadados
  35. 35. Data Lake - Próximos passos Utilizar ferramentas open source para gerenciar metadados AWS Glue: https://aws.amazon.com/glue Kylo: https://kylo.io/ Apache Atlas: http://atlas.apache.org/ Metacat: https://github.com/Netflix/metacat Facilitar a análise de dados mantendo a governança Dremio: https://www.dremio.com/
  36. 36. Pense nisso... Utilize a ferramenta certa para cada situação
  37. 37. Pense nisso... Utilize a ferramenta certa para cada situação Invista em governança e metadados
  38. 38. Pense nisso... Utilize a ferramenta certa para cada situação Invista em governança e metadados Comece a entregar valor desde o início
  39. 39. Pense nisso... Utilize a ferramenta certa para cada situação Invista em governança e metadados Comece a entregar valor desde o início As pessoas não vão mais precisar de você para encontrar e entender os dados
  40. 40. Contato twitter.com/matheusespanhol linkedin.com/in/matheusespanhol slideshare.net/matheus.espanhol matheusespanhol@gmail.com

×