Está en la página 1de 22

Arquitecturas de Big

Data
BIG DATA ACADEMY

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Escalabilidad del proceso

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Necesidad de negocio
PERSONA DE NEGOCIO DESARROLLADOR PROCESO DE NEGOCIO

“Tengo una necesidad de negocio”: Implementa la necesidad con El proceso se ejecutará sobre
algún lenguaje: algún tipo de infraestructura
- Construye un reporte
- Haz un proceso de limpieza de datos - Python
- Construye una red neuronal - Scala
- R
- SQL

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Ejecución del proceso de negocio
DATA INPUT INFRAESTRUCTURA DE PROCESAMIENTO DATA OUTPUT
6. Envío de resultantes a negocio

1. Subida de datos

2. Lectura en variables sobre la RAM


10GB 1 GB
5. Almacenamiento de resultados en el DISCO DURO

4. Almacenamiento de resultados en la RAM

DISCO: 10 TB
3. Procesamiento del proceso sobre los núcleos de CPU
RAM: 100 GB
CPU: 40 NÚCLEOS

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Procesamiento sobre computadoras de
escritorio
DATA INPUT INFRAESTRUCTURA DE PROCESAMIENTO DATA OUTPUT

DÍA 1
LAPTO DE DESARROLLADOR
1GB DISCO: 1 TB
RAM: 16 GB
CPU: 4 NÚCLEOS

DÍA 2
10GB

DÍA 3
En el 3er día el proceso no pudo ejecutarse, no Negocio no funciona
50GB
hay suficiente RAM (16 GB) para colocar un este día
archivo de 50 GB

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Solución: Escalamos a un servidor
empresarial

PERSONA DE NEGOCIO ADQUISICIÓN DE SERVIDOR


SERVIDOR EMPRESARIAL

DISCO: 10 TB
5 SEMANAS DESPUÉS
RAM: 100 GB
CPU: 40 NÚCLEOS
ALGUNA ACTIVIDADES
“Compraremos un servidor empresarial” - Preparación de licitación [1 semana]
- Contacto a proveedores [1 semana]
Durante 5 semanas, negocio
- Elección de proveedor [1 semana] no funcionó
- Compra y despliegue [1 semana]
- Instalación de software [1 semana]

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Después de 5 semanas: Procesamiento
sobre servidor empresarial
DATA INPUT INFRAESTRUCTURA DE PROCESAMIENTO DATA OUTPUT

DÍA 1
SERVIDOR EMPRESARIAL
50GB DISCO: 10 TB
RAM: 100 GB
CPU: 40 NÚCLEOS

DÍA 2
90GB

DÍA 3
En el 3er día el proceso no pudo ejecutarse, no Negocio no funciona
300GB
hay suficiente RAM (100 GB) para colocar un este día
archivo de 300 GB

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Solución: Escalamos a un clúster de
servidores
10 SERVIDORES

PERSONA DE NEGOCIO ADQUISICIÓN DE CLÚSTER


CADA SERVIDOR:
DISCO: 10 TB
5 SEMANAS DESPUÉS RAM: 100 GB
CPU: 40 NÚCLEOS

ALGUNA ACTIVIDADES
“Compraremos un clúster de servidores” - Preparación de licitación [1 semana] POTENCIA DEL CLÚSTER
- Contacto a proveedores [1 semana] DISCO: 100 TB
- Elección de proveedor [1 semana] …
- Compra y despliegue [1 semana] RAM: 1000 GB
- Instalación de software [1 semana] CPU: 400 NÚCLEOS

Durante 5 semanas, negocio


no funcionó
Alonso Melgarejo [alonsoraulmgs@gmail.com]
Problema: El proceso no distribuye la
carga de trabajo sobre el clúster
CLÚSTER
RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB

300GB
PROCESO
RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB

El proceso no se distribuye
sobre el clúster, el
desarrollador debe modificar
el código para incluir la lógico
de distribución de carga de
trabajo

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Solución: Adaptar el proceso para
distribuir la carga de trabajo
PROCESO ORIGINAL PROCESO ADAPTADO

ADAPTACIÓN DEL PROCESO

5 SEMANAS DESPUÉS

Algunas actividades:
Sólo contiene la necesidad de Necesidad de negocio +
negocio (P.E.: 1000 líneas de - Reserva de recursos sobre servidores [1 semana] Necesidad técnica (P.E.: 3000
código) - Distribución de la carga de trabajo sobre servidores líneas de código)
[1 semana]
- Coordinación de ejecución [1 semana]
- Gestión de excepciones [1 semana] Adaptar el proceso para que funcione
- Pruebas [1 semana] en un clúster toma mucho tiempo

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Después de 5 semanas: Procesamiento
sobre clúster
DATA INPUT INFRAESTRUCTURA DE PROCESAMIENTO DATA OUTPUT

DÍA 1
300GB

DÍA 2
500GB

Después de 5 semanas
Un desarrollador deberá tenemos el resultado
adaptar el proceso para la CLÚSTER
nueva volumetría DISCO: 10 TB
RAM: 100 GB
CPU: 40 NÚCLEOS

Alonso Melgarejo [alonsoraulmgs@gmail.com]


La realidad empresarial
En la empresa hay miles de procesos, mientras más volumetría procese cada proceso, en algún momento
colapsarán y habrá que adaptarlos, la adaptación toma tiempo (varias semanas), por lo tanto los
procesos no son escalables y varios procesos de negocio no funcionarán por varias semanas.

PROCESO 1

PROCESO 2

PROCESO 3000

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Clústers de Big Data

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Definición del clúster ideal
DÍA 1 DÍA 2

300GB Reserva el 30% 500GB Reserva el 50%


del clúster del clúster

DÍA 3
Si aumenta la volumetría, aumentamos la reserva del
clúster, el clúster reserva los servidores y distribuye
la carga de trabajo del código de manera
automática
700GB Reserva el 70%
del clúster

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Clúster de Big Data
CLÚSTER DE BIG DATA
RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB
DÍA 1

300GB PROCESO

DÍA 2
RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB RAM: 100GB
RESERVA
DÍA 1: 30%
500GB DÍA 2: 50%
DÍA 3: 70%

DÍA 3

700GB
CLÚSTER DE BIG DATA
- Reserva la potencia del clúster según la volumetría
- Distribuye de manera automática la carga de trabajo sobre los servidores reservador

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Concepto de Big Data
Es un marco de trabajo
(conceptos + tecnologías) que
permite implementar procesos
escalables para procesar grandes
volúmenes de datos
Alonso Melgarejo [alonsoraulmgs@gmail.com]
Hadoop como ecosistema
tecnológico estándar de Big
Data

Alonso Melgarejo [alonsoraulmgs@gmail.com]


El clúster de Big Data como un “súper-
servidor”
SÚPER SERVIDOR

POTENCIA
DISCO: 100 TB
RAM: 1000 GB
CPU: 400 NÚCLEOS

Los desarrolladores ven al clúster como 1 “súper-


10 servidores de 10TB de Disco, 100GB de RAM y 40 Núcleos de CPU
servidor de gran capacidad”, ¿qué tecnología permite
esto?
Alonso Melgarejo [alonsoraulmgs@gmail.com]
Hadoop
Hadoop es una tecnología de gestión de clústers de Big Data y tiene tres módulos principales

SÚPER SERVIDOR

HDFS [Hadoop Distributed File System]


Gestiona los discos duros del clúster

YARN [Yet Another Resource Negotiator]


Reserva la RAM y las CPU del clúster

MAPREDUCE ENGINE [Motor de procesamiento]


En todos los servidores del clúster se debe instalar Hadoop Ejecuta el proceso sobre la RAM y CPU reservadas

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Spark como motor de
procesamiento

Alonso Melgarejo [alonsoraulmgs@gmail.com]


SPARK como remplazo de MAPREDUCE
Es muy antiguo y está orientado sólo para procesos del tipo BATCH ESTRUCTURADOS (no permite
muchos otros tipos de procesamiento como REAL-TIME, ANALÍTICOS, SEMI-ESTRUCTURADOS, etc)

REEMPLAZADO POR

Alonso Melgarejo [alonsoraulmgs@gmail.com]


Ecosistema estándar de Big Data: Hadoop + Spark
SÚPER SERVIDOR

HDFS [Hadoop Distributed File System]


Gestiona los discos duros del clúster

YARN [Yet Another Resource Negotiator]


Reserva la RAM y las CPU del clúster

SPARK [Motor de procesamiento]


En todos los servidores del clúster se debe instalar Hadoop Ejecuta el proceso sobre la RAM y CPU reservadas

Alonso Melgarejo [alonsoraulmgs@gmail.com]

También podría gustarte