107
Taller: “Monta una infraestructura Big Data para tu Empresa” Urko Zurutuza Dpto. Electrónica e Informática Mondragon Goi Eskola Politeknikoa JMA Mondragon Unibertsitatea

Monta una Infraestructura Big Data para tu Empresa - Sesión I

Embed Size (px)

Citation preview

Page 1: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Taller:

“Monta una infraestructura Big Data para tu Empresa”

Urko Zurutuza

Dpto. Electrónica e Informática

Mondragon Goi Eskola Politeknikoa JMA

Mondragon Unibertsitatea

Page 2: Monta una Infraestructura Big Data para tu Empresa - Sesión I

• http://bit.ly/bigdata_sesion1

• bit.ly/bigdatadocs

Page 3: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Agenda

• Día 1: Introducción al Big Data

• Día 2: Instalación de un cluster Cloudera

• Día 3: Ejercicios sobre Cloudera

Page 4: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Índice

1. Introducción

2. Big Data

3. Ecosistema Big Data

4. Distribuciones Big Data

5. Herramientas Big Data

6. Conclusiones

Page 5: Monta una Infraestructura Big Data para tu Empresa - Sesión I
Page 6: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Data

CRECIMIENTO DE DATOS

PARA EL 2020

Page 7: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Big Data

Page 8: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Un poco de historia…

Page 9: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Un poco de historia…

Page 10: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Un poco de historia…

Page 11: Monta una Infraestructura Big Data para tu Empresa - Sesión I
Page 12: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Big Data

“Big Data” hace referencia al conjunto de

información que es demasiado compleja

como para ser procesada mediante TI

tradicionales de manera aceptable

–Min Chen, Shiwen Mao, and Yunhao Liu. Big Data: A Survey. Mobile Networks and

Applications,

19(2):171–209, 2014.

Page 13: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Big Data

“Big Data hace referencia al conjunto de

información que es demasiado compleja

como para ser procesada mediante TI

tradicionales de manera aceptable

–Min Chen, Shiwen Mao, and Yunhao Liu. Big Data: A Survey. Mobile Networks and

Applications,

19(2):171–209, 2014.

Page 14: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Big Data

Page 15: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Big Data

Page 16: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Big Data – Cambio de Paradigma

Page 17: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Big Data – Cambio de Paradigma

Page 18: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ecosistema Big Data

Page 19: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ecosistema Hadoop (simplificado)

Apache

Pig:

Scripting

Almacenamient

o redundante y

fiable

YARNGestiona

recursos del

Cluster

Procesamiento

Distribuido de

datosZookee

per:

Coordin

a la

distribuc

ión

Data

Warehous

e

Machine

LearningColector

de datos

Conector

BBDDR-

HDFS

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

Page 20: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Distribuciones Hadoop

Page 21: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Distribuciones Hadoop

• Cloudera

• HortonWorks

• MapR

• IBM BigInsights

• Amazon EC2

• Microsoft Azure HDInsight

• …

Page 22: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Cloudera CDH

Page 23: Monta una Infraestructura Big Data para tu Empresa - Sesión I

HortonWorks

Page 24: Monta una Infraestructura Big Data para tu Empresa - Sesión I

MapR

Page 25: Monta una Infraestructura Big Data para tu Empresa - Sesión I

IBM BigInsights

Page 26: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Oracle Big Data

Page 27: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Amazon EMR

Page 28: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Microsoft Azure HDInsight

Page 29: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Componentes

Page 30: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Apache Hadoop

• Sistema que permite una computación

– Fiable,

– Escalable, y

– Distribuida

• Un Framework que permite el procesamiento distribuido de grandes conjuntos de datos sobre clusters de ordenadores

Page 31: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Apache Hadoop

• Hadoop common: utilidades comunes que dan soporte al resto de los módulos de Hadoop

• Hadoop Distributed File System (HDFS): sistema de ficheros distribuido.

• Hadoop YARN: sistema para la planificación de trabajos y gestión de recursos del cluster

• Hadoop MapReduce: sistema basado en YARN para procesamiento paralelo de grandes volúmenes de datos

Page 32: Monta una Infraestructura Big Data para tu Empresa - Sesión I

¿Quién usa Hadoop?

• Adobe– We use Apache Hadoop and Apache HBase in

several areas from social services to structureddata storage and processing for internal use.

– We currently have about 30 nodes running HDFS, Hadoop and HBase in clusters ranging from 5 to14 nodes on both production and development. We plan a deployment on an 80 nodes cluster.

– We constantly write data to Apache HBase and run MapReduce jobs to process then store it back to Apache HBase or external systems.

Page 33: Monta una Infraestructura Big Data para tu Empresa - Sesión I

¿Quién usa Hadoop?

• EBay

– 532 nodes cluster (8 * 532 cores, 5.3PB).

– Heavy usage of Java MapReduce, Apache

Pig, Apache Hive, Apache HBase

– Using it for Search optimization and Research.

Page 34: Monta una Infraestructura Big Data para tu Empresa - Sesión I

¿Quién usa Hadoop?

• Facebook– We use Apache Hadoop to store copies of internal log

and dimension data sources and use it as a source for reporting/analytics and machine learning.

– Currently we have 2 major clusters:• A 1100-machine cluster with 8800 cores and about 12 PB raw

storage.

• A 300-machine cluster with 2400 cores and about 3 PB raw storage.

– Each (commodity) node has 8 cores and 12 TB of storage.

– We are heavy users of both streaming as well as the Java APIs. We have built a higher level data warehousing framework using these features called Hive (see the http://hadoop.apache.org/hive/).

Page 35: Monta una Infraestructura Big Data para tu Empresa - Sesión I

¿Quién usa Hadoop?

• Last.fm

– 100 nodes

– Dual quad-core Xeon L5520 @ 2.27GHz & L5630 @ 2.13GHz , 24GB RAM, 8TB(4x2TB)/node storage.

– Used for charts calculation, royalty reporting, log analysis, A/B testing, dataset merging

– Also used for large scale audio feature analysis over millions of tracks

Page 36: Monta una Infraestructura Big Data para tu Empresa - Sesión I

¿Quién usa Hadoop?

• LinkedIn– We have multiple grids divided up based upon purpose.

– Hardware:• ~800 Westmere-based HP SL 170x, with 2x4 cores, 24GB RAM, 6x2TB SATA

• ~1900 Westmere-based SuperMicro X8DTT-H, with 2x6 cores, 24GB RAM, 6x2TB SATA

• ~1400 Sandy Bridge-based SuperMicro with 2x6 cores, 32GB RAM, 6x2TB SATA

– Software:• RHEL 6.3

• Sun JDK 1.6.0_32

• Apache Hadoop 0.20.2+patches and Apache Hadoop 1.0.4+patches

• Pig 0.10 + DataFu

• Azkaban and Azkaban 2 for scheduling

• Apache Hive, Apache Avro, Apache Kafka, and other bits and pieces...

– We use these things for discovering People You May Know and other fun facts.

Page 37: Monta una Infraestructura Big Data para tu Empresa - Sesión I

¿Quién usa Hadoop?

• Spotify

– We use Apache Hadoop for content generation, data aggregation, reporting and analysis

– 690 node cluster = 8280 physical cores, 38TB RAM, 28 PB storage

– +7,500 daily Hadoop jobs (scheduled by Luigi, our home-grown and recently open-sourced job scheduler - code and video)

Page 38: Monta una Infraestructura Big Data para tu Empresa - Sesión I

¿Quién usa Hadoop?

• Twitter– We use Apache Hadoop to store and process tweets,

log files, and many other types of data generated across Twitter. We store all data as compressed LZO files.

– We use both Scala and Java to access Hadoop'sMapReduce APIs

– We use Apache Pig heavily for both scheduled and ad-hoc jobs, due to its ability to accomplish a lot with few statements.

– We employ committers on Apache Pig, Apache Avro, Apache Hive, and Apache Cassandra, and contribute much of our internal Hadoop work to opensource (see hadoop-lzo)

Page 39: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento

Page 40: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: HDFS

• Diseñado para ejecutarse en Hw común(commodity)

• Tolerante a fallos

• Diseñado para trabajo por lotes (batch)

• Diseñado para manejar ficheros grandes, enfocadoen muchos accesos (throughput), más que en velocidad (latencia)

• Modelo: escribir una vez, leer muchas

• Importancia: es más barato mover la computaciónque los datos

• Portabilidad

Page 41: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: HDFS

Page 42: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: NoSQL (Not

Only SQL)

• Base de Datos de nueva generación que

en su mayoría aborda algunas de las

siguientes características:

– no relacional,

– distribuida,

– open-source, y

– horizontalmente escalable

[fuente: http://nosql-database.org/]

Page 43: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: NoSQL (Not

Only SQL)

Tipo Descripción Ejemplo

Clave-

Valor

Cada elemento tiene una

clave y su valor asociado. emcached

Familias

de

Columnas

Para consultas sobre grandes

conjuntos de datos. Enfoque

en columnas no en filas

Document

os

Empareja una clave con una

estructura de datos o

documento.

Grafos

Guarda nodos y sus

relaciones. RRSS,

estructuras de redes,…

http://db-engines.com/en/ranking/

Page 44: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: Base de Datos

HBase

• Qué es Hbase?

– En Hbase los datos se almacenan en tablas, lascuales tienen filas y columnas… pero mejor verlocomo un mapa u objeto multidimensional

– Una tabla de Hbase contiene multiples filas.

– Una fila de datos tiene una clave ordenable y un número arbitrario de columnas. La tabla se almacena de forma dispersa, de modo que lasfilas de una misma tabla pueden tener columnastan variadas como se quiera.

Page 45: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: Base de Datos

HBase

• Map: filas de datos

{

"zzzzz" : "woot",

"xyz" : "hello",

"aaaab" : "world",

"1" : "x",

"aaaaa" : "y"

}

Page 46: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: Base de Datos

HBase

• Sorted Map: filas ordenadas por la clave

{

"1" : "x",

"aaaaa" : "y",

"aaaab" : "world",

"xyz" : "hello",

"zzzzz" : "woot"

}

Page 47: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: Base de Datos

HBase

• Multidimensional: familias de columnas por

cada fila{

"1" : {

"A" : "x",

"B" : "z"

},

"aaaaa" : {

"A" : "y",

"B" : "w"

},

"aaaab" : {

"A" : "world",

"B" : "ocean"

},

"xyz" : {

"A" : "hello",

"B" : "there"

},

"zzzzz" : {

"A" : "woot",

"B" : "1337"

}

}

Page 48: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: Base de Datos

HBase

• Multidimensional: una familia de columnas

puede tener varias columnas, identificadas

por una etiqueta o qualifier{

// ...

"aaaaa" : {

"A" : {

"foo" : "y",

"bar" : "d"

},

"B" : {

"" : "w"

}

},

"aaaab" : {

"A" : {

"foo" : "world",

"bar" : "domination"

},

"B" : {

"" : "ocean"

}

},

// ...

}

Page 49: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Almacenamiento: Base de Datos

HBase

• Multidimensional: timestamp{

// ...

"aaaaa" : {

"A" : {

"foo" : {

15 : "y",

4 : "m"

},

"bar" : {

15 : "d",

}

},

"B" : {

"" : {

6 : "w"

3 : "o"

1 : "w"

}

}

},

// ...

}

Page 50: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento de datos

Page 51: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento de Datos

• Varios modos de alimentar un sistema

Hadoop:

– Por lotes (batch): tengo todos los datos y los

proceso

– En tiempo real (streaming): según se generan

los eventos los computo

Page 52: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en batch:

MapReduce

• Marco para escribir aplicaciones que procesanenormes cantidades de datos de forma paralela en grandes clusters formados por hardware común.

• MapReduce job– Divide el conjunto de datos de entrada en pedazos

(chunks) que son procesados por tareas “map” de forma paralela.

– Ordena las salidas de los “maps”, que son entrada a las tareas “reduce”.

– Opera sobre pares clave-valor.

– No necesariamente en Java.

Page 53: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en batch:

MapReduce

, 4

, 2

, 4

, 3

, 4

, 2

, 4

, 3

Split MapShuffle

&

Sort

Reduce

Master

assign

sassigns

Page 54: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en batch:

MapReduce

• Ejemplo:

$ bin/hadoop dfs -cat /usr/joe/wordcount/input/file01

Hello World Bye World

$ bin/hadoop dfs -cat /usr/joe/wordcount/input/file02

Hello Hadoop Goodbye Hadoop

Page 55: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en batch:

MapReduce

• Mapper: – procesa cada línea (cada línea un map)

– Divide en tokens separados por espacios (palabras)

– Emite un conjunto de claves-valor, en modo <palabra, 1>

– Map 1:• < Hello, 1>

• < World, 1>

• < Bye, 1>

• < World, 1>

– Map 2:• < Hello, 1>

• < Hadoop, 1>

• < Goodbye, 1>

• < Hadoop, 1>

Page 56: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en batch:

MapReduce

• Combiner:

– Cada map se ordena y genera agregadoslocales:

– Salida del primer Map:• < Bye, 1>

• < Hello, 1>

• < World, 2>

– Salida del segundo Map:• < Goodbye, 1>

• < Hadoop, 2>

• < Hello, 1>

Page 57: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en batch:

MapReduce

• Reducer:

– Suma los valores (ocurrencias de cada clave):• < Bye, 1>

• < Goodbye, 1>

• < Hadoop, 2>

• < Hello, 2>

• < World, 2>

Page 58: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en batch: Apache

Pig

• Plataforma para análisis/tratamiento de datos

• Tiene un compilador que genera lassequencias de MapReduce

• Lenguaje de alto nivel: Pig Latin:

A = LOAD 'student' USING PigStorage() AS (name:chararray, age:int, gpa:float);

X = FOREACH A GENERATE name,$2;

DUMP X;

(John,4.0F)

(Mary,3.8F)

(Bill,3.9F)

(Joe,3.8F)

Page 59: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Procesamiento en streaming:

Storm

• Sistema de computación distribuido en tiempo real

• “El hadoop del tiempo real”

• Lo que en Hadoop son trabajosMapReduce, en Storm son topologías.

– El MapReduce es un trabajo específico,

– Una topología está haciendo el trabajo de forma persistente

• Se pueden crear clusters de Storm

Page 60: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Proceso en streaming: Spark

streaming

• Procesamiento en memoria (vs.

MapReduce)

• Muy rápido

• Java, Scala, Python

Page 61: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de datos

Page 62: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos

• Varios modos de alimentar un sistema

Hadoop:

– Por lotes (batch): hacer un volcado

– En tiempo real (streaming): según se

generan los eventos

Page 63: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos por lotes:

HDFS

• La forma más sencilla, pero debemos tener

los datos en ficheros

$ hadoop fs –put <nombre_fichero>

• Rara vez, pero podría ser…

Page 64: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos por lotes:

Apache sqoop

• Transfiere datos entre Hadoop y datos

estructurados como Bases de Datos

Relacionales

$ sqoop import --connect jdbc:mysql://database.example.com/employees

--username aaron --password 12345

• No siempre tenemos los datos

empaquetados en un único fichero

Page 65: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos por lotes:

Apache sqoop

tablas tablasFicheros

distribuidos

BBDD

Relacional

BBDD

RelacionalHDFS

Tratamiento

(MapReduce) (MapReduce)

(MapReduce)

Page 66: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Flume

• Servicio distribuido y fiable para recopilar,

agregar y mover grandes volúmenes de datos

(de log) de forma eficiente

• De muchas y variadas fuentes de logs a un

lugar centralizado de almacenamiento de

datos (ej. Hadoop)

• Cuando los datos se generan de forma

continua

• No solo logs, también sirve para p.e. datos de

tráfico de red, datos generados por social

media, emails, …

Page 67: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Flume

• Una fuente externa envía eventos a un

agente Flume, en un formato que Flume

pueda reconocer.

• El evento se guarda en el canal, hasta que

es consumido por el sumidero (Sink)

• El Sink quita el evento del canal y lo pone

en un repositorio externo o en otro origen

de Flume

Page 68: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Flume

Page 69: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Flume

• Origenes Flume:

– Avro

– Thrift

– Exec (el resultado de la ejecución de un comando Unix)

– Un directorio a la espera de nuevos ficheros y sus contenidos

– Twitter

– NetCat

– Syslog

– HTTP

Page 70: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Flume

• Canales Flume:

– Memoria

– JDBC

– Fichero

– …

Page 71: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Flume

• Sinks Flume:

– HDFS

– Avro

– Thrift

– IRC

– Fichero

– Hbase

– …

Page 72: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Flume

• El Sink HDFS crea un fichero, lo abre, mete datos, y cierra el fichero de forma constante

• Se falla el Sink antes de cerrar el fichero, se pierden los datos: falta persistencia

• En contra de la filosofía de Hadoop: ficheros grandes Vs. muchos ficherospequeños

– Sus metadatos se guardan en memoria del NameNode!!

Page 73: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ingestión de Datos en streaming:

Apache Kafka

• Servicio para registro de logs distribuido y particionado

• Rápido: un Kafka “broker” puede manejarcientos de megabytes de lecturas y escrituras por segundo de miles de clientes

• Escalable: los flujos de datos se puedendividir por el cluster, y así ser consumidosde forma distribuida

• Durable: los mensajes son persistentes (en disco)

Page 74: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Consulta de datos

Page 75: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Consulta: Hive

• Provee un mecanismo para proyectar

estructuras de datos y ser consultadas en

un lenguaje pseudo-SQL: HiveQL

• La consulta genera un conjunto de

MapReduces, donde su resultado se

muestra como una tabla

Page 76: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Consulta: Impala

• Mediante Impala se pueden consultar

datos de HDFS o de Hbase

• Se integra con Apache Hive, para

compartir sus tablas y BBDD.

• No usa MapReduce

• Es de Cloudera (MapR tiene Drill)

Page 77: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Consulta: Search (Solr)

• Indexación de contenidos escalable, fiable

y distribuido

• Capaz de Indexar:

– Texto

– JSON

– XML

– CSV

Page 78: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Análisis de Datos

Page 79: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Análisis de datos

• In-Memory Analytics vs. In-Hadoop Analytics

• El fondo es el mismo, pero ahora: – Distribuido

– Escalable

• Herramientas– R

– Spark (Mllib)

– TODOS: RapidMiner, SAS, Teradata,…

Page 80: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Análisis de datos: Apache Mahout

• Un entorno para generar aplicacionesescalables de machine learning– El entorno mismo

– Algoritmos de Scala + Spark, H2O y Flink

– Algoritmos Mahout para Hadoop MapReduce

• Algoritmos:– Recomendador

– K-Means, Fuzzy K-Means clustering

– Clasificadores Naïve Bayes, Random Forest

– …

Page 81: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Análisis de datos: Apache Spark

• Procesamiento en memoria (vs.

MapReduce)

• Muy rápido

• Java, Scala, Python

Page 82: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Análisis de datos: RHadoop

• R: Software estadístico muy extendido

• RHadoop:

– ravro: lee/escribe ficheros en formato Avro

– rmr: funcionalidad MapReduce en R

– rhdfs: funciones de gestión de ficheros en

HDFS

– rhbase: gestión de base de datos HBase

desde R.

Page 83: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Otros…

Page 84: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Orquestador: ozzie

• Programa flujos de trabajo para gestionar

trabajos Hadoop

• Orquesta trabajos MapReduce, generados

en Java, Pig, Hive, Sqoop,…

Page 85: Monta una Infraestructura Big Data para tu Empresa - Sesión I

El cuidador: Zookeeper

• Servicio de mantenimiento de:

– Información de configuración

– Información de nombres (nodos)

– Sincronización de la distribución

Page 86: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Conclusiones

Page 87: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Ecosistema Hadoop (simplificado)

Apache

Pig:

Scripting

Almacenamient

o redundante y

fiable

YARNGestiona

recursos del

Cluster

Procesamiento

Distribuido de

datosZookee

per:

Coordin

a la

distribuc

ión

Data

Warehous

e

Machine

LearningColector

de datos

Conector

BBDDR-

HDFS

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

S.

O.

Page 88: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Objetivos: ¿Qué valor añadido quiero

obtener?

• Alinea la necesidad de Big Data con los

objetivos de negocio

• Implementar Big Data es decisión de

negocio, no de TI

• Evalúa los requisitos de los datos (V’s!)

Page 89: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Selecciona la infraestructura

• En casa?

– Hardware (mínimo): 2*6core CPU, 24-64GB RAM, 1-2TB HDD

– Distribuciones Hadoop: Cloudera, MapR, Hortonworks

• En la nube?

– IaaS (Amazon Elastic Compute Cloud, Azure,…)

– PaaS (Amazon Elastic MapReduce, AzureHDInsight,…)

– SaaS (Teradata, sqlstream,…)

Page 90: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Fórmate

• Diferentes perfiles:– Sistemas:

• Administración del cluster, servidores y nodos

– Desarrollo• NoSQL

• Procesamientos (Map/Reduce, Storm, Spark, Pig,…)

• Visual Analytics (d3.js, CartoDB, Gephi, Tableu,…)

– Machine Learning / Data Mining• Conocimiento de Algoritmos y procesos

• Herramientas/Lenguajes (R, SAS, …)

Page 91: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Une las piezas

• ¿Qué preguntas debo responder?

• ¿Cómo recojo los datos?

• ¿Cómo los almaceno?

• ¿Cómo los analizo?

• ¿Cómo muestro los resultados?

Page 92: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Realiza implementaciones ágiles e

iterativas

Page 93: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Empieza con objetivos simples e

integra los resultados

• Según se van obteniendo pequeños

resultados, aparecen nuevas preguntas a

responder.

• Integrar resultados con el Sistema de

Producción/Sistema de Gestión actual

Page 94: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Conclusiones

• Objetivos, estrategia, ROI

• Datos: ¿Estamos preparados?

• Infraestructura Local o en la Nube?

• Big Data está relacionado con:

Análisis de Datos = Data Science

• Analizas tus datos en “Small Data” ahora?

Page 95: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Conclusiones

Las bases de datos tradicionales

y data warehouses siguen

siendo necesarias!

Page 96: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Conclusiones

Hadoop no es bueno en

analítica en tiempo real!!

Page 97: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Conclusiones

Una estrategia única basada en

Hadoop no tiene sentido

Page 98: Monta una Infraestructura Big Data para tu Empresa - Sesión I
Page 99: Monta una Infraestructura Big Data para tu Empresa - Sesión I
Page 100: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Conclusiones

Hadoop es complicado…

Page 101: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Conclusiones

No necesitas el ecosistema

completo

Page 102: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Eskerrik asko

www.mondragon.edu

Urko Zurutuza

Mondragon Unibertsitatea

[email protected]

https://es.linkedin.com/in/uzurutuz

a/

@urkovain

Page 103: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Montando la infraestructura

• VMWare

• Ubuntu Server 14.04:

http://www.ubuntu.com/download/server

Page 104: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Montando la infraestructura

• Atención: Evitar “Easy Install” de VMWare.

Page 105: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Montando la infraestructura

• VMWare, características:

– RAM: 8GB

– 2 Procesadores

– Red en modo “Bridge”

– CD/DVD: usar la imagen .iso de Ubuntu

Page 106: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Montando la infraestructura

• Ubuntu, características:

– Nombres de las máquinas (hostname):

• taldeanodo1, taldeanodo2,…

• taldebnodo1, taldebnodo2,...

• Taldecnodo1, taldecnodo2,...

– Usuario: user

– Password: eskola2016

Page 107: Monta una Infraestructura Big Data para tu Empresa - Sesión I

Montando la infraestructura

• Ubuntu, características:

– Instalar Open SSH (al final)

– Putty

• A por ello!!