27
Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta [email protected]

Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta [email protected]

Embed Size (px)

Citation preview

Page 1: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Hadoop!? HDInsight!? Hive??Uma introdução ao mundo Big Data para DBA’s

Bruno Feldman da Costa @feldmanB | facebook.com/[email protected]

Page 2: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

About Me!

Bruno Feldman da Costa• Tech Leader DB/BI at White Cube• Twitter: @feldmanB• E-mail: [email protected]• Facebook: https://facebook.com/bfcosta• Blog: http://brunofeldman.wordpress.com

Page 3: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Agenda

Big Data? HadoopHDInsightMapReduceMapReduce com HIVE e PIGTransferindo dados com SQOOPWorkflows com OOZIEFerramentas: Powershell e SSIS

Page 4: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Big Data

“Big data are a collection of data sets so large and complex that it becomes difficult to process using on-hand database management tools or traditional data processing applications.” Tom White, Hadoop Definitive Guide

“In pioneer days they used oxen for heavy pulling, and when one ox couldn't budge a log, they didn't try to grow a larger ox. We shouldn't be trying for bigger computers, but for more systems of computers.” Grace Hooper

Page 5: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Big Data

Typified by the “3 V’s”:• Volume – Huge amounts of data to process• Variety – A mixture of structured and unstructured data• Velocity – New data generated extremely frequently

Page 6: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Big Data

Em 1990 um HD típico armazenava 1,4GB com uma taxa de transferência de 4,4MB/s, ou seja, podia ler todo o disco em uns 5 minutos.Uns 20 anos depois, os discos armazenam 1TB mas lêem a 100MB/s, fazendo a leitura de todo o disco em 2h30min.E se dividíssemos os dados entre vários discos, armazenando uma porção do dado em cada?

Page 7: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Hadoop

Plataforma que fornece:• Um sistema de arquivos

distribuído (HDFS) que armazena os dados entre vários servidores.

• Um meio para armazenar/consultar (MapReduce/ YARN) esses dados distribuídos.

HDFS

Name Node Data Nodes

Hadoop Cluster

Page 8: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Blocos de dados redundantes, distribuídos entre os nós do cluster.Falhas nos nós são esperadas!

HDFS – Hadoop Distributed File System

8 |

Page 9: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Hadoop Ecosystem

Distribuições Hadoop• Cloudera CDH• Hortonworks Data Platform (HDP)• MapR

Microsoft Azure HDInsight

Page 10: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Microsoft Azure HDInsight

Implementação do HDP no ambiente do Azure• VM’s com Windows Server (ou Linux) com HDP• WebHDFS (Azure Blob Storage)• Suporte a Powershell e SSIS• Escalabilidade• Rápida implementação

Page 11: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

DEMO

Criando um cluster HDInsight

Page 12: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

MapReduce

Dado dividido entre os data nodes

Cada nó faz o “MAP” gerando o par “KEY/Value”

O REDUCE faz a agregação.

Page 13: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

MapReduce

MAP

REDUCE

Page 14: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

DEMO

Executando um Job Map Reduce

Page 15: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

HIVE

Muito legal esse Map Reduce!Mas…• Não sei programar em Java• Não sei programar em Python• Não sei programar em C#• Não sei programar!!!!

Page 16: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

HIVE

Sou DBA, só entendo de TSQL, quero criar meus jobs apenas utilizando queries, como já faço no SQL Server.O HIVE faz isso!!!

Page 17: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

HIVE

Sou DBA, só entendo de TSQL, quero criar meus jobs apenas utilizando queries, como já faço no SQL Server.O HIVE faz isso!!!A query em HiveQL é “traduzida” para um JOB MapReduce

Page 18: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

DEMO

Usando o Hive

Page 19: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

PIG

O PIG realiza uma série de transformações no dado através de statements Pig Latin.Cada comando Pig Latin vai transformando o dado até chegar no resultado esperado.Ao rodar os comandos DUMP ou STORE o Job MapReduce é executado.

Page 20: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

DEMO

Usando o PIG

Page 21: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

SQOOP

O SQOOP (SQL-HADOOP) permite a transferência bi-direcional de dados entre banco de dados (compatíveis com jdbc) e clusters Hadoop.

Page 22: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

DEMO

Usando o SQOOP

Page 23: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

OOZIE

Engine de Workflow para as ações realizadas no cluster Haddop:• Hive• Pig• Sqoop• E outras…

Page 24: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

DEMO

Usando o OOZIE

Page 25: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

OOZIE / SQOOP

O OOZIE e o SQOOP até que são legais…

Mas o SSIS é MUITO melhor!!

Page 26: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

Quer aprender mais?

Books:• Hadoop: The Definitive Guide - Tom White• Microsoft Big Data Solutions - Adam Jorgensen and James

Rowland-Jones• Pro Microsoft HDInsight: Hadoop on Windows - Debarchan SarkarCursos:• EDX:

DAT202.1x Processing Big Data with Hadoop in Azure HDInsight

Page 27: Hadoop!? HDInsight!? Hive?? Uma introdução ao mundo Big Data para DBA’s Bruno Feldman da Costa @feldmanB | facebook.com/bfcosta bfcosta@gmail.com

DÚVIDAS?

OBRIGADO!