www.datalytics.com   18D – Pentaho Big Data Architecture
Un punto de inflexión

           LOS DATOS SE
      40   DUPLICAN CADA 2 AÑOS                                        80%
      35                                                               DE LA INFORMACIÓN ES NO
      30                                                               ESTRUCTURADA
                                                                                               (Gartner, December 2011)
      25
 ZB
      20

      15                                                               LAS EMPRESAS MANEJARÁN
      10                                                               50X MÁS DATOS
       5                                                               EN LA PRÓXIMA DÉCADA
            2005       2010        2015      2020
                                                                                    (IDC Digital Universe Study, June 2011)
       0
           (IDC Digital Universe Study, June 2011)


“El aumento exponencial en la cantidad de información disponible ha hecho que las empresas recurran
a nuevas herramientas y procesos para recopilar datos (tanto estructurados como no estructurados) y
para almacenar, administrar, manipular, analizar, e integrar datos. ”
J|M|P Securities, Big Data and How BI Got Its Groove Back, Nov. 2011
Qué es Big Data?
   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
De dónde viene?
   Información transaccional
        Operaciones bancarias
        Servicios financieros, portales de bolsa
        Tiendas virtuales / e-commerce
   La nube
        World Wide Web / Blogs
        Redes sociales: Twitter, Facebook, LinkedIn
   Machine-generated data (MGD)
        Weblogs
        Centrales telefónicas
        Sensores de todo tipo
        Logs de aplicaciones
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Bases de datos Transaccionales
   Utilizadas en la mayoría de las empresas en la actualidad
                                                                           Atomicidad
   Motores transaccionales, diseñados y desarrollados para
    soportar transacciones y trabajar con pocos registros por
    operación.                                                    Durabilidad      Consistencia

   Las soluciones de Business Intelligence involucran cientos
    de miles (e inclusive millones) de registros en una única
                                                                            Isolación
    operación, y deben responder en un tiempo adecuado.
   Las bases de datos transaccionales no fueron diseñadas para responder a consultas
    analíticas sobre grandes volúmenes de información.
   La irrupción de Big Data comienza a dejar en evidencia estas falencias, debiendo utilizar
    complejos índices, tablas agregadas, tablas particionadas, etc., aumentando el costo de
    desarrollo y mantenimiento, obteniendo tiempos
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Bases de datos NoSQL
   Distintos tipos de bases para distintos tipos de aplicaciones: documentales, grafos, clave/valor,
    orientadas a objetos, tabulares, …
   Características
        SQL: Sin (o muy poco) soporte para SQL.
              Datos accedidos a través de programas Java, no consultas
        ACID: Sin integridad referencial, poco soporte transaccional
        Definición de estructuras de datos flexibles (sobre la marcha)
   Beneficios
        Facilidad de escalamiento horizontal (clusters baratos)
        Almacenamiento de grandes volúmenes (no generan cuellos de botella)
        Excelentes para lecturas masivas de registros tipo clave/valor.
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Bases de datos Analíticas
   Bases de datos diseñadas específicamente para ser utilizadas como motores de Data
    Warehouse.




   Estas bases de datos logran procesar grandes volúmenes de información a velocidades
    asombrosas, gracias a la aplicación de diferentes conceptos y tecnologías:
        Almacenamiento en columnas en lugar de filas (registros)
        Massively parallel processing (MPP)
        In-Memory Analytics
   Históricamente estas bases de datos tan especializadas tenían un costo muy elevado,
    pero hoy el mercado nos ofrece varias alternativas que se adaptan al presupuesto de
    cada organización.
Presentando a
   Infobright es una compañía que desarrolla un motor de base de datos analítico orientada a
    columnas de alta performance que entrega rápidos tiempos de respuesta a consultas ad-
    hoc sobre grandes volúmenes de información (BIG DATA) con mínimo esfuerzo de
    administración, mantenimiento y costo de propiedad.
   Fundada en 2006, Infobright tiene HQ en Toronto (Canadá) y cuenta con oficinas en
    Boston (USA), Irlanda y Polonia.
   A diferencia de otras bases analíticas, la mejor performance de Infobright esta basada en
    modelos matemáticos, no en hardware.
   Modelo de negocios “Try & Buy” basado en una versión Enterprise (Infobright Enterprise
    Edition, IEE) y una versión Open Source (Infobright Community Edition, ICE).
   Socio tecnológico de varias empresas de BI como MicroStrategy, Pentaho, Informática, etc.
   Base de clientes en aumento, incluyendo empresas como Yahoo!, Xerox, Bwin, etc.
Características de Infobright

                Base de datos columnar orientada al análisis de información
                Excelente performance:
                     Análisis ad-hoc de grandes volúmenes de información
                     Tiempos de carga de 2TB/hour
                     Tasas de compresión de 10:1 a 40:1 (o aún más)
                Fácil administración e implementación:
                     Elimina la necesidad de mantener índices, tablas particionadas,
                      tablas agregadas, etc
                     Auto-tunning: la base va “aprendiendo” de las consultas que recibe
                     Se instala en minutos, y no tiene grandes requisitos de HW
                     Basada en arquitectura MySQL (BD más utilizada en el mundo)
                     Es una base relacional, por lo que dialoga SQL
                Modelo de suscripción Low Cost
Y por qué resulta mejor para BI?

     Base de datos      Potencia basada en    Administración
      orientada a       inteligencia, no en    simplificada
       columnas              Hardware

     Diseñada para                              No existe el
                          Knowledge Grid
    análisis de datos                          tuning manual


                                                 Tareas de
    Excelente tasa de
                          Motor iterativo      administración
       compresión
                                                 mínimas
Almacenamiento en columnas, no filas
 ID       Tarea      Departamento    Ciudad                      1          Envío       Operaciones   Medellín

 #                                                               2       Recepción      Operaciones   Medellín
 #                                                               3       Registración    Finanzas     Bogotá
 #
 #                                                        El almacenamiento en filas sirve si…
 #
 #
                                                           Todas las columnas son necesarias
                                                                Por ejemplo, el detalle de una compra de supermercado
                                                           Ideal para un mundo transaccional donde usualmente
                                                            se necesita todo el detalle de una entidad

                  Almacenamiento
                    en Columnas                           El almacenamiento en columnas sirve si…
                                                           Sólo se requieren algunas columnas para el análisis
      1              Envío       Operaciones   Medellín         Por ejemplo, el total vendido del producto X en cada una
                                                                  de las sucursales en los últimos 3 meses.
      2           Recepción      Operaciones   Medellín
                                                           Información consolidada (sumas, cantidades,
      3           Registración      Finanzas   Bogotá
                                                            promedios, …)
                                                           Ideal para un mundo analítico, donde la información se
                                                            concentra en métrica de distintas entidades
Almacenamiento en filas vs. columnas
                                                           30 columnas
Ejemplo de aplicación:
 50 días con información; 30
  columnas/variables por
  cada registro; un millón de
  registros por cada día
 El acceso a disco es un
  problema
 El almacenamiento en filas    50 millones de registros
  obliga a recuperar la
  información de todas las
  columnas
 Al incrementarse el tamaño
  de la tabla, se incrementan
  los índices
 La velocidad de carga se
  degrada dado que los
  índices deben recrearse al
  incorporarse nuevos datos
Almacenamiento en filas vs. columnas
                                                                              30 columnas
Objetivo: obtener el total de
ventas de una semana del
año.
 La consulta SQL sería algo
  como:
  Select sum(ventas)
  from tabla
  where semana = X              50 millones de registros




                                                           Día de la semana




                                                                                     Venta diaria
Almacenamiento en filas vs. columnas
                                                                                           30 columnas
Utilizando un esquema de
 almacenamiento en filas
 (esquema tradicional)
  Se recorren 7 millones de
   registros (un millón por cada
   día)
  Para acceder a un valor en
                                   50 millones de registros
   particular (el valor de la




                                                                        Día de la semana
   venta) es necesario leer las




                                                                                                  Venta diaria
   30 columnas, aún cuando                                    Información recuperada para el cálculo
   no tengan información                                            (210 millones de variables!)
   relevante.
  Se procesan TODAS las
   columnas (210 millones,
   30 x 7), y se DESCARTAN
   TODAS MENOS una.
  Es decir se procesó un 93%
   más de información.
Almacenamiento en columnas, no filas
Utilizando un esquema de
 almacenamiento en columnas
 (esquema utilizado por
 Infobright)
   Se recorren 7 millones de
    registros (un millón por cada
    día)
                                50 millones de registros
   Se procesan sólo las 2




                                                           Día de la semana




                                                                              Venta diaria
    columnas necesarias: día y
    venta diaria.
   Es decir, sólo se procesa la
    información necesaria.
   La inteligencia está en la
    forma de almacenamiento y
    en el algoritmo usado para                                                               93% menos de información
    extraer los datos.                                                                             recuperada!
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
         de negocio que requieran de grandes volúmenes de información.
                                                                                            Big Data

        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Hadoop (HDFS, Map/Reduce, Hive, Pig, …)
   Origen (Google): cómo hacer para indexar la web sin morir en el intento?
   Solución: arquitectura masivamente paralela, que incluye un sistema de archivos y
     un esquema de procesamiento distribuido.
   Permite almacenar y procesar grandes volúmenes de cualquier tipo
    de información
   Ideal para:
        Grandes volumenes de datos no
         estructurados que no cuadran en
         bases de datos transaccionales o
         NoSQL
        Emails, tweets, imágenes, logs,
         videos, …
   Hadoop = Almacenamiento + procesamiento (consultas)


                     HDFS + programas Map/Reduce (Java)
Ejemplo: Map/Reduce


       Cuantas veces
     aparece la palabra
       Datalytics en                                          Contá las
        Archivo.txt?                                        repeticiones
                                                           de Datalytics
                                                           en el Bloque C




          (*)             (*)                      (*)



         Cantidad = 3     Cantidad = 0             Cantidad = 11


                                     Archivo.txt

                                                    (*) Deben programarse en Java! 
Ejemplo: Map/Reduce


                                                         Sumá
                                                       “Datalytics”




        Resultados.txt     (*)
       (Datalytics = 14)



                           Datalytics   =0
      (*)                  (*)               (*)




                                                   (*) Deben programarse en Java! 
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
                                                                                            Big Data
         de negocio que requieran de grandes volúmenes de información.
        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
Tipos de bases de datos
   El concepto de base de datos que utilizábamos hasta hace 2 años cambió
   Distintos tipos de bases de datos, para distintos tipos de necesidades.
        Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en
         las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)
        NoSQL: para capturar de manera segura y escalable, grandes volúmenes
         de información continua generados por eventos.
        Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas
                                                                                               Big Data
         de negocio que requieran de grandes volúmenes de información.
        Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de
         información estructurada o semi-estructurada.
   Desafíos…
        Son de distintos vendedores y no están integradas
        Estos tipos de DB’s se utilizan por lo general en conjunto
        Se utilizan y administran de distinta manera; utilizan distintos lenguajes: no SQL!
        Dependencia de sistemas: vuelta a las raíces?
Tipos de bases de datos
Tipos de bases de datos
Integración con Big Data
 Fuentes de                                     Repositorios
  BIG DATA                                       BIG DATA

    DATOS
ESTRUCTURADOS


                                                   Hadoop

CRM, POS, ERP, etc.




   DATOS NO
ESTRUCTURADOS                                      NoSQL
                                                  Databases
                              Cargar
                      Manipular & Transformar
                             Integrar
                                                   Analytic
                              Acceso              Databases
                            Modelado
Integración con Big Data




     Integración,       Enterprise & Ad Hoc           Data Discovery,
Manipulaciónn & Carga        Reporting                 Visualización     Análisis predictivo




            Hadoop                            NoSQL                     Analíticas
Integración con Big Data




                            Pasar de un desarrollo lento,
                           complejo y permeable a errores
Integración con Big Data




                           Desarrollo visual, hecho por el
                                     area de BI
Integración con Big Data
   Pentaho reduce drásticamente el tiempo para diseñar, desarrollar e implementar soluciones de Big
    Data llegando a ser hasta 15 veces más rápido
        Desarrollo 100% visual, 0% programación Java
        Procesos de análisis simplificado de punta a
         punta
        Plataforma completa, desde la extracción
         hasta las herramientas de análisis.
        Alta performance, incluyendo capacidad de
         ejecución dentro de Hadoop.
Integración con Big Data
   Pentaho reduce drásticamente el tiempo para diseñar, desarrollar e implementar soluciones de Big
    Data llegando a ser hasta 15 veces más rápido
        Toda la solución (ETL, cubos, reportes) se conecta con las distribuciones más importantes de
         Hadoop y las principales bases NoSQL y Analíticas
        Lenguaje visual unificado para todos los desarrollos
        Cargar/extraer archivos de Hadoop en un cluster local,
         en la nube, …
        Ejecutar desde PDI jobs de Map/Reduce o scripts en
         Pig desarrollados en PDI o Java dentro del cluster
        Integrar los distintos motores DB’s sin perder el
         foco en el usuario y en BI
Ejecución dentro del cluster Hadoop


                          PDI está desarrollado en Java: puede
                        ejecutarse dentro del cluster de Hadoop




                          Desarrollo fácil, misma performance
Enfoque tradicional vs. Pentaho


    Ejecutivos
                                                                                       Explo-
                                                                                       ración
  Usuario final

                                                                                                Predi-
     Analistas                                                                                  cción

                                                                              Mode-
                                                               DM / DW
       IT/DBA                                                                  lado


                       Extracción/Carga       Transformación
Programadores
                   0                      5                    10                     15
                                 20                    25                30                     35 Días

     Enfoque tradicional
Arquitectura de solución


   Structured Data
                                                                Column Store or MPP
                                                                     Database

                                                                                                      Dashboard
                                            PDI
                                      PDI           PDI


Semi-structured Data    PDI                               PDI                              Metadata    Report

                                     PDI          PDI
                                            PDI
                                                                                                      Analyzer

               Pentaho Data Integration                         Pentaho Data Integration

                        Carga                               Limpieza / Enriquecimiento

           Paseo / Validación / Consolidación              Administración de dimensiones

                       Workflow                                  Carga masiva a DB’s

                                                                       Workflow
Instaview: acceso rápido a fuentes complejas
                                                Sencillo, orientado al usuario final
                                                     Herramienta desktop para analistas de negocio
                                                     Simplifica drásticamente el acceso a fuentes de
                                                      información “Complejas” (Hadoop, NoSQL,
1. Selección de fuente de información                 fuentes de tiempo real, …)
                                                Big Data Analytics
                                                     Permite al analista acceder a fuentes de tiempo
                                                      real o complejas enmascarando la complejidad
                                                      subyacente.
 2. Preparado automático para análisis
                                                     Analistas consultan su información sin
                                                      intermediarios.




3. Visualización y exploración interactiva
Data Quality
   PDI cuenta con un plugin que permite realizar tareas avanzadas de Data Quality,
    incluyendo:
        Data Profiling: análisis de la calidad de la información.
        Data Cleaning: limpieza de la información.
        Data Monitoring: monitoreo y análisis de la evolución de la calidad de la información.
Muchas Gracias!

Big Data Architecture con Pentaho

  • 1.
    www.datalytics.com 18D – Pentaho Big Data Architecture
  • 2.
    Un punto deinflexión LOS DATOS SE 40 DUPLICAN CADA 2 AÑOS 80% 35 DE LA INFORMACIÓN ES NO 30 ESTRUCTURADA (Gartner, December 2011) 25 ZB 20 15 LAS EMPRESAS MANEJARÁN 10 50X MÁS DATOS 5 EN LA PRÓXIMA DÉCADA 2005 2010 2015 2020 (IDC Digital Universe Study, June 2011) 0 (IDC Digital Universe Study, June 2011) “El aumento exponencial en la cantidad de información disponible ha hecho que las empresas recurran a nuevas herramientas y procesos para recopilar datos (tanto estructurados como no estructurados) y para almacenar, administrar, manipular, analizar, e integrar datos. ” J|M|P Securities, Big Data and How BI Got Its Groove Back, Nov. 2011
  • 3.
    Qué es BigData?  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
  • 4.
    De dónde viene?  Información transaccional  Operaciones bancarias  Servicios financieros, portales de bolsa  Tiendas virtuales / e-commerce  La nube  World Wide Web / Blogs  Redes sociales: Twitter, Facebook, LinkedIn  Machine-generated data (MGD)  Weblogs  Centrales telefónicas  Sensores de todo tipo  Logs de aplicaciones
  • 5.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 6.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 7.
    Bases de datosTransaccionales  Utilizadas en la mayoría de las empresas en la actualidad Atomicidad  Motores transaccionales, diseñados y desarrollados para soportar transacciones y trabajar con pocos registros por operación. Durabilidad Consistencia  Las soluciones de Business Intelligence involucran cientos de miles (e inclusive millones) de registros en una única Isolación operación, y deben responder en un tiempo adecuado.  Las bases de datos transaccionales no fueron diseñadas para responder a consultas analíticas sobre grandes volúmenes de información.  La irrupción de Big Data comienza a dejar en evidencia estas falencias, debiendo utilizar complejos índices, tablas agregadas, tablas particionadas, etc., aumentando el costo de desarrollo y mantenimiento, obteniendo tiempos
  • 8.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 9.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 10.
    Bases de datosNoSQL  Distintos tipos de bases para distintos tipos de aplicaciones: documentales, grafos, clave/valor, orientadas a objetos, tabulares, …  Características  SQL: Sin (o muy poco) soporte para SQL.  Datos accedidos a través de programas Java, no consultas  ACID: Sin integridad referencial, poco soporte transaccional  Definición de estructuras de datos flexibles (sobre la marcha)  Beneficios  Facilidad de escalamiento horizontal (clusters baratos)  Almacenamiento de grandes volúmenes (no generan cuellos de botella)  Excelentes para lecturas masivas de registros tipo clave/valor.
  • 11.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 12.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 13.
    Bases de datosAnalíticas  Bases de datos diseñadas específicamente para ser utilizadas como motores de Data Warehouse.  Estas bases de datos logran procesar grandes volúmenes de información a velocidades asombrosas, gracias a la aplicación de diferentes conceptos y tecnologías:  Almacenamiento en columnas en lugar de filas (registros)  Massively parallel processing (MPP)  In-Memory Analytics  Históricamente estas bases de datos tan especializadas tenían un costo muy elevado, pero hoy el mercado nos ofrece varias alternativas que se adaptan al presupuesto de cada organización.
  • 14.
    Presentando a  Infobright es una compañía que desarrolla un motor de base de datos analítico orientada a columnas de alta performance que entrega rápidos tiempos de respuesta a consultas ad- hoc sobre grandes volúmenes de información (BIG DATA) con mínimo esfuerzo de administración, mantenimiento y costo de propiedad.  Fundada en 2006, Infobright tiene HQ en Toronto (Canadá) y cuenta con oficinas en Boston (USA), Irlanda y Polonia.  A diferencia de otras bases analíticas, la mejor performance de Infobright esta basada en modelos matemáticos, no en hardware.  Modelo de negocios “Try & Buy” basado en una versión Enterprise (Infobright Enterprise Edition, IEE) y una versión Open Source (Infobright Community Edition, ICE).  Socio tecnológico de varias empresas de BI como MicroStrategy, Pentaho, Informática, etc.  Base de clientes en aumento, incluyendo empresas como Yahoo!, Xerox, Bwin, etc.
  • 15.
    Características de Infobright  Base de datos columnar orientada al análisis de información  Excelente performance:  Análisis ad-hoc de grandes volúmenes de información  Tiempos de carga de 2TB/hour  Tasas de compresión de 10:1 a 40:1 (o aún más)  Fácil administración e implementación:  Elimina la necesidad de mantener índices, tablas particionadas, tablas agregadas, etc  Auto-tunning: la base va “aprendiendo” de las consultas que recibe  Se instala en minutos, y no tiene grandes requisitos de HW  Basada en arquitectura MySQL (BD más utilizada en el mundo)  Es una base relacional, por lo que dialoga SQL  Modelo de suscripción Low Cost
  • 16.
    Y por quéresulta mejor para BI? Base de datos Potencia basada en Administración orientada a inteligencia, no en simplificada columnas Hardware Diseñada para No existe el Knowledge Grid análisis de datos tuning manual Tareas de Excelente tasa de Motor iterativo administración compresión mínimas
  • 17.
    Almacenamiento en columnas,no filas ID Tarea Departamento Ciudad 1 Envío Operaciones Medellín # 2 Recepción Operaciones Medellín # 3 Registración Finanzas Bogotá # # El almacenamiento en filas sirve si… # #  Todas las columnas son necesarias  Por ejemplo, el detalle de una compra de supermercado  Ideal para un mundo transaccional donde usualmente se necesita todo el detalle de una entidad Almacenamiento en Columnas El almacenamiento en columnas sirve si…  Sólo se requieren algunas columnas para el análisis 1 Envío Operaciones Medellín  Por ejemplo, el total vendido del producto X en cada una de las sucursales en los últimos 3 meses. 2 Recepción Operaciones Medellín  Información consolidada (sumas, cantidades, 3 Registración Finanzas Bogotá promedios, …)  Ideal para un mundo analítico, donde la información se concentra en métrica de distintas entidades
  • 18.
    Almacenamiento en filasvs. columnas 30 columnas Ejemplo de aplicación:  50 días con información; 30 columnas/variables por cada registro; un millón de registros por cada día  El acceso a disco es un problema  El almacenamiento en filas 50 millones de registros obliga a recuperar la información de todas las columnas  Al incrementarse el tamaño de la tabla, se incrementan los índices  La velocidad de carga se degrada dado que los índices deben recrearse al incorporarse nuevos datos
  • 19.
    Almacenamiento en filasvs. columnas 30 columnas Objetivo: obtener el total de ventas de una semana del año.  La consulta SQL sería algo como: Select sum(ventas) from tabla where semana = X 50 millones de registros Día de la semana Venta diaria
  • 20.
    Almacenamiento en filasvs. columnas 30 columnas Utilizando un esquema de almacenamiento en filas (esquema tradicional)  Se recorren 7 millones de registros (un millón por cada día)  Para acceder a un valor en 50 millones de registros particular (el valor de la Día de la semana venta) es necesario leer las Venta diaria 30 columnas, aún cuando Información recuperada para el cálculo no tengan información (210 millones de variables!) relevante.  Se procesan TODAS las columnas (210 millones, 30 x 7), y se DESCARTAN TODAS MENOS una.  Es decir se procesó un 93% más de información.
  • 21.
    Almacenamiento en columnas,no filas Utilizando un esquema de almacenamiento en columnas (esquema utilizado por Infobright)  Se recorren 7 millones de registros (un millón por cada día) 50 millones de registros  Se procesan sólo las 2 Día de la semana Venta diaria columnas necesarias: día y venta diaria.  Es decir, sólo se procesa la información necesaria.  La inteligencia está en la forma de almacenamiento y en el algoritmo usado para 93% menos de información extraer los datos. recuperada!
  • 22.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 23.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas de negocio que requieran de grandes volúmenes de información. Big Data  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 24.
    Hadoop (HDFS, Map/Reduce,Hive, Pig, …)  Origen (Google): cómo hacer para indexar la web sin morir en el intento?  Solución: arquitectura masivamente paralela, que incluye un sistema de archivos y un esquema de procesamiento distribuido.  Permite almacenar y procesar grandes volúmenes de cualquier tipo de información  Ideal para:  Grandes volumenes de datos no estructurados que no cuadran en bases de datos transaccionales o NoSQL  Emails, tweets, imágenes, logs, videos, …  Hadoop = Almacenamiento + procesamiento (consultas) HDFS + programas Map/Reduce (Java)
  • 25.
    Ejemplo: Map/Reduce Cuantas veces aparece la palabra Datalytics en Contá las Archivo.txt? repeticiones de Datalytics en el Bloque C (*) (*) (*) Cantidad = 3 Cantidad = 0 Cantidad = 11 Archivo.txt (*) Deben programarse en Java! 
  • 26.
    Ejemplo: Map/Reduce Sumá “Datalytics” Resultados.txt (*) (Datalytics = 14) Datalytics =0 (*) (*) (*) (*) Deben programarse en Java! 
  • 27.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas Big Data de negocio que requieran de grandes volúmenes de información.  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.
  • 28.
    Tipos de basesde datos  El concepto de base de datos que utilizábamos hasta hace 2 años cambió  Distintos tipos de bases de datos, para distintos tipos de necesidades.  Bases de datos transaccionales: para almacenar información crítica del negocio, con origen en las aplicaciones de siempre (CRM, ERP, sistemas legacy, …)  NoSQL: para capturar de manera segura y escalable, grandes volúmenes de información continua generados por eventos.  Analíticas: para permitir a múltiples usuarios contestar rápidamente preguntas Big Data de negocio que requieran de grandes volúmenes de información.  Hadoop (HDFS & Hive): para almacenar y procesar grandes volúmenes de información estructurada o semi-estructurada.  Desafíos…  Son de distintos vendedores y no están integradas  Estos tipos de DB’s se utilizan por lo general en conjunto  Se utilizan y administran de distinta manera; utilizan distintos lenguajes: no SQL!  Dependencia de sistemas: vuelta a las raíces?
  • 29.
  • 30.
  • 31.
    Integración con BigData Fuentes de Repositorios BIG DATA BIG DATA DATOS ESTRUCTURADOS Hadoop CRM, POS, ERP, etc. DATOS NO ESTRUCTURADOS NoSQL Databases Cargar Manipular & Transformar Integrar Analytic Acceso Databases Modelado
  • 32.
    Integración con BigData Integración, Enterprise & Ad Hoc Data Discovery, Manipulaciónn & Carga Reporting Visualización Análisis predictivo Hadoop NoSQL Analíticas
  • 33.
    Integración con BigData Pasar de un desarrollo lento, complejo y permeable a errores
  • 34.
    Integración con BigData Desarrollo visual, hecho por el area de BI
  • 35.
    Integración con BigData  Pentaho reduce drásticamente el tiempo para diseñar, desarrollar e implementar soluciones de Big Data llegando a ser hasta 15 veces más rápido  Desarrollo 100% visual, 0% programación Java  Procesos de análisis simplificado de punta a punta  Plataforma completa, desde la extracción hasta las herramientas de análisis.  Alta performance, incluyendo capacidad de ejecución dentro de Hadoop.
  • 36.
    Integración con BigData  Pentaho reduce drásticamente el tiempo para diseñar, desarrollar e implementar soluciones de Big Data llegando a ser hasta 15 veces más rápido  Toda la solución (ETL, cubos, reportes) se conecta con las distribuciones más importantes de Hadoop y las principales bases NoSQL y Analíticas  Lenguaje visual unificado para todos los desarrollos  Cargar/extraer archivos de Hadoop en un cluster local, en la nube, …  Ejecutar desde PDI jobs de Map/Reduce o scripts en Pig desarrollados en PDI o Java dentro del cluster  Integrar los distintos motores DB’s sin perder el foco en el usuario y en BI
  • 37.
    Ejecución dentro delcluster Hadoop PDI está desarrollado en Java: puede ejecutarse dentro del cluster de Hadoop Desarrollo fácil, misma performance
  • 38.
    Enfoque tradicional vs.Pentaho Ejecutivos Explo- ración Usuario final Predi- Analistas cción Mode- DM / DW IT/DBA lado Extracción/Carga Transformación Programadores 0 5 10 15 20 25 30 35 Días Enfoque tradicional
  • 39.
    Arquitectura de solución Structured Data Column Store or MPP Database Dashboard PDI PDI PDI Semi-structured Data PDI PDI Metadata Report PDI PDI PDI Analyzer Pentaho Data Integration Pentaho Data Integration Carga Limpieza / Enriquecimiento Paseo / Validación / Consolidación Administración de dimensiones Workflow Carga masiva a DB’s Workflow
  • 40.
    Instaview: acceso rápidoa fuentes complejas  Sencillo, orientado al usuario final  Herramienta desktop para analistas de negocio  Simplifica drásticamente el acceso a fuentes de información “Complejas” (Hadoop, NoSQL, 1. Selección de fuente de información fuentes de tiempo real, …)  Big Data Analytics  Permite al analista acceder a fuentes de tiempo real o complejas enmascarando la complejidad subyacente. 2. Preparado automático para análisis  Analistas consultan su información sin intermediarios. 3. Visualización y exploración interactiva
  • 41.
    Data Quality  PDI cuenta con un plugin que permite realizar tareas avanzadas de Data Quality, incluyendo:  Data Profiling: análisis de la calidad de la información.  Data Cleaning: limpieza de la información.  Data Monitoring: monitoreo y análisis de la evolución de la calidad de la información.
  • 42.