Roadmap para la adopción de nuevas arquitecturas de ... · Analíticas: almacenamiento de la...

14
Roadmap para la adopción de nuevas arquitecturas de información

Transcript of Roadmap para la adopción de nuevas arquitecturas de ... · Analíticas: almacenamiento de la...

Roadmap para la adopción de nuevas arquitecturas de información

Qué es Big Data..?

“…es el nombre que se le da a conjuntos de información que crecen de una manera tan exponencial

que resulta prohibitivo almacenarlos y/o procesarlos con métodos o técnicas tradicionales del mundo

de base de datos relacionales…”

Big Data son tres V’s y una C

Velocidad: los datos se generan a un ritmo exponencial.

Volumen: la irrupción de Big Data dejó en el pasado el Terabyte para hablar de Petabytes y

Zetabytes.

Variedad: datos estructurados y no estructurados, proveniente de la web 2.0, sensores, logs,

etc.

Complejidad: volumen de datos tal que no permite procesarlo con técnicas tradicionales

“…cuando el tamaño de los datos son parte del problema…”

“el futuro pertenece a aquellos que entienden cómo recolectar, almacenar y utilizar sus datos de

manera efectiva”

Cambio creciente en la importancia respecto del rol de los datos en nuestras actividades.

Qué es Big Data..?

“…es el nombre que se le da a conjuntos de información que crecen de una manera tan exponencial

que resulta prohibitivo almacenarlos y/o procesarlos con métodos o técnicas tradicionales del mundo

de base de datos relacionales…”

Big Data son tres V’s y una C

Velocidad: los datos se generan a un ritmo exponencial.

Volumen: la irrupción de Big Data dejó en el pasado el Terabyte para hablar de Petabytes y

Zetabytes.

Variedad: datos estructurados y no estructurados, proveniente de la web 2.0, sensores, logs,

etc.

Complejidad: volumen de datos tal que no permite procesarlo con técnicas tradicionales

“…cuando el tamaño de los datos son parte del problema…”

“el futuro pertenece a aquellos que entienden cómo recolectar, almacenar y utilizar sus datos de

manera efectiva”

Cambio creciente en la importancia respecto del rol de los datos en nuestras actividades.

Quiero Big Data!

Nuevas arquitecturas de información

El concepto de base de datos que utilizábamos hasta hace poco cambió.

En base a qué voy hacer con los datos, defino cómo almacenarlos (lógica y físicamente)

Distintas tecnologías, para distintas necesidades.

Bases de datos relacionales: para almacenar información crítica del negocio (CRM, ERP, sistemas

legacy, …)

NoSQL: agrupación incoherente de bases de datos con propósitos específicos que por lo

general: no soportan el modelo relacional, no usan esquemas, escalan horizontalmente (clusters

baratos), open-source.

Analíticas: almacenamiento de la información en forma columnar con el objetivo de dar

respuestas rápidas a consultas de agregación sobre grandes volúmenes de datos.

Hadoop (HDFS & MapReduce): para almacenar y procesar grandes volúmenes de

información no necesariamente estructurada.

Repensar algunas cosas…

Extracción de información

Nuevas fuentes (DB’s de distintos tipos y sin lenguaje estándar, Hadoop, API’s, …)

Internas como externas, con o sin control

Disponibilidad

Procesamiento y explotación

ETL? ELT? TEL?

Latencia

Escalabilidad

Almacenamiento

Si se qué quiero hacer, puedo pensar cómo almacenar y estructurar.

Si no, al menos debería pensar dónde almacenar.

Resultados al corto plazo sin perder el foco

Evitar enfoques Big Bang

Metodología ágil

Típicos problemas

Según Gartner, entre 70% y el 80% de los proyectos de BI o DM son un fracaso.

Presupuestos excedidos (x2 o x3)

Cronogramas incumplidos (x2 o x3 o …)

Alcance original incompleto, funcionalidad reducida

Usuarios poco involucrados, sin motivación y hasta en contra de la solución

En ocasiones se dificulta justificar el costo y/o los beneficios no son los esperados

Los problemas de calidad de datos aumentan en relación al uso de los datos

Malos resultados en términos de:

Performance: la velocidad es lenta lo que desalenta a los usuarios

Disponibilidad: la solución es inestable, se cae constantemente

Escalabilidad: la performance es inversamente proporcional al volumen de datos y cantidad de

usuarios

Flexibilidad: se obliga a los usuarios a trabajar de una nueva y única manera

Estructuremos y ordenemos en etapas

Objetivos concretos a desarrollar

Qué quiero hacer?

Revisión de la arquitectura actual de información

Qué tengo disponible hoy?

Arquitectura de información necesaria

Qué información voy a necesitar? La tengo?

Definiciones tecnológicas

Qué voy a necesitar?

Desarrollo iterado

Prototipos

Objetivos concretos a desarrollar

Cuál es el objetivo o el problema a atacar? (Alto nivel)

Es difícil conocer el estado real de la información con la que vamos a trabajar (calidad, disponibilidad,

etc) y los resultados que vamos a encontrar durante el análisis.

Partir el objetivo/problema en sub-problemas concretos más sencillos de resolver de manera

tal que de manera iterada se construya la solución originalmente buscada

Resultados al corto plazo

Evitar estar lejos del usuario

Asegurar que los problemas sean baratos de resolver

Arquitectura actual de datos

Con qué información contamos hoy? Formal e informal.

Fuente de información: un objeto que puede ser usado como input de un proceso de análisis

Bases de datos, logs de aplicaciones con tracks de uso, archivos, correos electrónicos, mensajes

entre aplicaciones, etc.

Relevar, catalogar y armar un mapa de información que identifique:

El origen: interno, externo

La calidad esperada de la información (análisis exploratorio?)

La periodicidad en la actualización

La estructura de los datos (estructurados? no estructurados? Estructurados con un formato

inútil?)

El volumen actual vs el crecimiento esperado

Etcétera

Esfuerzo interdisciplinario

Arquitectura de información necesaria

Qué información voy a necesitar? La tengo??? Existe..??!?!?!?

En base al mapa de información, entender el GAP entre:

Lo que tengo

Cómo está almacenado? Está almacenado? Qué procesamiento necesitaría?

Lo que necesito

Existe? Es integrable?

La calidad de lo que tengo o consigo, sirve para algo?

Definir la arquitectura necesaria en términos de capacidades actuales vs la necesaria.

Modelo de procesamiento

Infraestructura y tecnología (SW) necesaria

Definiciones tecnológicas

Qué herramientas necesito?

Posponer la elección lo más que se pueda: evitar el sesgo comercial!

Almacenamiento de información

Data Lakes (Hadoop): Almacenamiento completo de toda la información, en su estado más

crudo.

Evitar perder información que eventualmente será clave en análisis todavía no pensados.

Evitar estructurar la información de antemano siendo que el valor final de los datos se

obtendrá posterior a su análisis.

Bases de datos analíticas: almacenamiento de grandes volúmenes de información en un

formato orientado a consultas con muy bajo tiempo de respuesta.

Permitir la navegación en tiempo real de grandes volúmenes de información.

Data Warehouse: Consume y retroalimenta. Provee información a los sistemas de reporting

tradicionales (soluciones OLAP, tableros, etc), y también consume y provee información a las

bases analíticas.

Info

rmac

ión

+ e

stru

ctu

rad

a

Definiciones tecnológicas

Sistemas de explotación

Soluciones de reporting no modelado (“Visual Analytics”): evitar la predefinición del análisis,

permitir navegar e integrar información de cualquier fuente sin necesidad de modelos previos.

Capacidad de análisis adhoc sobre información no incorporada al modelo de datos de un

sistema tradicional

Soluciones de reporting Tradicional: siguen vigentes.

Respuesta a las necesidades de reporting actuales e incorporan nuevos componentes

según se transforman en cotidianos los nuevos análisis.

La calidad, trazabilidad y gobierno de los datos están garantizados.

Soluciones analíticas que facilitan el procesamiento y análisis de grandes volúmenes de

información.

Infraestructura: Local vs. cloud

...Etcétera

Desarrollo

Desarrollo iterados con versiones incrementales en cada iteración.

Acercarnos al usuario

Toda versión es funcional de manera independiente

Las nuevas versiones aportan nueva funcionalidad

En todo momento el proyecto puede frenarse o cambiar de prioridad, sin afectar la solución

El tiempo de desarrollo de una versión no puede superar los 2 meses

El alcance de cada versión está acotado

Estimación de esfuerzos realista

Los cambios son bienvenidos.

Entregables acotados, expectativas realistas

Los errores son fáciles y baratos de corregir; mayor calidad de entregables