" Data for all and

all for Data "

Perspectivas y Oportunidades en la Web de Datos

Coloquio de Investigación Multidisciplinaria 
21/10/2016
            
        
Dr. Jose María Alvarez-Rodríguez
            
        
            Orizaba, México
        

Una pregunta...

¿Mujeres políticas nacidas en Orizaba en la segunda mitad del siglo XX?

Otra pregunta...

¿Actrices nacidas en Orizaba en el año 1936?

Otra pregunta...

Latitud, longitud y nombre de lugares cercanos a Orizaba  en 200KM con una densidad de población mayor de 100 habitantes por KM2.

Consulta DBPedia

PREFIX dbo: <http://dbpedia.org/ontology/>

SELECT ?name ?birth ?description ?person WHERE {
     ?person dbo:birthPlace <http://dbpedia.org/resource/Orizaba>.
     ?person <http://purl.org/dc/terms/subject> 
          <http://dbpedia.org/resource/Category:Mexican_women_in_politics>.
     ?person dbo:birthDate ?birth .
     ?person foaf:name ?name .
     ?person rdfs:comment ?description .
     FILTER (?birth > "1950-01-01"^^xsd:date AND ?birth < "1970-01-01"^^xsd:date).
     FILTER (LANG(?description) = 'en') .
   
}
ORDER BY ?name

Respuesta

Consulta DBPedia

PREFIX dbo: <http://dbpedia.org/ontology/>

SELECT ?name ?birth ?description ?person WHERE {
     ?person dbo:birthPlace <http://dbpedia.org/resource/Orizaba>.
     ?person <http://purl.org/dc/terms/subject> 
          <http://dbpedia.org/resource/Category:Mexican_comedians>.
     ?person dbo:birthDate ?birth .
     ?person foaf:name ?name .
     ?person dbo:alias ?alias .
    FILTER (?birth > "1936-01-01"^^xsd:date AND ?birth < "1936-12-31"^^xsd:date).
}
ORDER BY ?name

Respuesta

Consulta DBPedia

PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 
PREFIX onto: <http://dbpedia.org/ontology/> 
SELECT * WHERE {
	?s a onto:Place .
	?s geo:lat ?lat .
	?s geo:long ?long .
 FILTER(
	xsd:double(?lat) - xsd:double(19.6613) <= 2 && 	xsd:double(19.6613) - xsd:double(?lat) <= 2 &&
	xsd:double(?long) - xsd:double(-96.8875) <= 2 && 	xsd:double(-96.8875) - xsd:double(?long) <= 2).
        ?s <http://dbpedia.org/ontology/PopulatedPlace/populationDensity> ?density.
  FILTER(xsd:double(?density) > xsd:double(100)).
}
LIMIT 100

http://bit.ly/2dVGgeh

Respuesta

¡Explosión de datos!

... NO todo es social media!

¿En qué era estamos viviendo?

4ª Revolución Industrial

Transformación Digital

aplicada a la

Industria

Cyber-Physical Systems

Software

"alma" de los sistemas

Datos

"alimento" de los sistemas

Un ejemplo...

  • " driven by exponential increases in computing power and by the availability of vast amounts of data "
  • "...growing transparency, consumer engagement, and new patterns of consumer behavior (increasingly built upon access to mobile networks and data )..."
  • These technology platforms, rendered easy to use by the smartphone, convene people, assets, and data —thus creating entirely new ways of consuming goods and services.
  • New technologies make assets more durable and resilient, while data and analytics are transforming how they are maintained . A world of customer experiences, data-based services, and asset performance through analytics,
  • ...

The 4th Industrial Revolution

...algunas preguntas..

¿La compañía de taxis más grande?

¿La gran tienda del mundo?

¿La cadena de hoteles con más habitaciones?

¿La universidad más grande?

¿El medio de noticias con más información?

...y la industria del automóvil?

  • Renault/Nissan
  • Fiat/Chrysler
  • Volkswagen
  • Ford
  • Daimler
  • BMW
  • TATA
  • GM
  • Toyota
  • Volvo
  • Intel

  • Microsoft

  • Google

  • Apple

  • Uber

  • Baidu

  • Nokia

This graphic originally published June 28, 2016. It has since been updated with additional reporting. SOURCE: Data compiled by Bloomberg
ADDITIONAL WORK: John Lippert, Keith Naughton and Cedric Sam

Software

"alma" de los sistemas

Datos

"alimento" de los sistemas

¿Seguro?

Según Forbes (2012)...

Según UX-Sears (2012)...

Según Matt Turck (2014)

Según BigDataLandscape...

...Gartner 2015 Hype Cycle...

Big Data is out!

IoT Platform
Citizen Data Scientist
Machine Learning
NLP & Question Answering

...

 

¡Big Data ya está en uso!

¿Por ejemplo?

Sofisticación de métodos para:

  • Localización anónima de viajeros
  • Predicción de carga de viajeros
  • Manejo de situaciones excepcionales
  • Predicción de problemas en la red (predictive analytics)
...De la empresa Teradata...

Supply Chain

Supply Chain

Policía

Crímenes

Eficiencia energética

...

UC3M y RTVE

  • +29M Observaciones
  • +26 Métricas
  • +350K relaciones
  • 6 redes sociales
  • +2000 perfiles
  • +130K Tweets...

¿Algunas conclusiones iniciales?

Problemas de negocio
Monitorización

Batch vs Tiempo real vs Stream

Eficiencia y mejora
Análisis predictivo

Tecnología

Conceptos Clave

¿Qué es 

Big Data?

3v's

vs

8v's

(n+1 v's)

VOLUMEN

VOLUMEN

  • Cantidad de datos que se han de procesar
  • Crecimiento Continuo

¿Cuál es el tamaño para ser considerado Big Data?

  • Al menos 1 TB hasta el orden de PB (en el futuro EB)
  • ...pero también dependerá de la calidad

Ejemplo

Twitter

Otro ejemplo

Linkedin

VARIEDAD

Tipos

  • Documentos
  • Imágenes
  • Vídeos
  • Posts en redes sociales
  • Datos científicos, geográficos, etc.

Formatos

Estructurado vs

Semi-estructurado

No estructurado​

 

  • CSV, TSV, MSExcel
  • PNG, JPG, MPEG, etc.
  • PDF, HTML, etc.

 

 

Acceso

  • Ficheros
  • Lenguajes de consulta
  • Streams
  • BBDD
  • ...

McKinsey

Tipos de Datos por Sector

VELOCIDAD

Velocidad

Actualización y tipo de procesamiento

  • Batch
  • Periódico
  • Eventos
  • Cercano a tiempo real
  • Tiempo real

Ejemplo

500M de Tweets por día

6000 por segundo de media

VERACIDAD

Veracidad

  • Calidad
  • Limpieza
  • Fuente de datos confiable
  • ...

VISCOSIDAD

Viscosidad

  • Resistencia a formar parte del flujo de datos
  • Capacidad de integración de los datos
  • Tipos de procesamiento:
  • Stream
  • Bus de integración
  • Procesamiento de eventos complejos (CEP)

VIRALIDAD

Viralidad

PROPAGACIÓN DE LA INFORMACIÓN

VELOCIDAD Y TIEMPO

VALOR

Valor

Datos estadísticos

Eventos

Hipótesis (estimaciones)

Correlaciones

Variabilidad

Variabilidad

¿Cuán de dinámicos son los datos?

Atomicidad

COMPLEJIDAD

COMPLEJIDAD

¿Cómo conectar?

¿Cómo correlar?

¿Capas?

¿Modos?

...

 

(Casi)

Todo en uno...

Big Data es...

  • Es lo mismo que resolver problemas "Small Data
  • ...pero el disponer de muchos datos implica...
  • Nuevas arquitecturas (distribuidas)
  • Necesidades de almacenamiento
  • Diferentes tipos de procesamiento
  • ...
  • para resolver problemas existentes con un mejor/nuevo enfoque

Old wine in new bottles!

Referencia oficial

Big Data Working Group en el NIST

NIST SP 1500-1  -- Volume 1: Definitions

  NIST SP 1500-2  -- Volume 2: Taxonomies

 

(Instituto de Estandarización Americano)

¿Por qué

Big Data?

MEJORA EN LAS CAPACIDADES DE ALMACENAMIENTO

MAYOR CAPACIDAD DE PROCESAMIENTO

DISPONIBILIDAD DE DATOS

...para resolver problemas...

Otro caso de éxito: Walmart

Arquitectura

Necesidades

  • Almacenar grandes cantidades de datos
    • Caducidad en el tiempo
  • Integrar fuentes de datos
  • (Re) Procesar consultar en
    • Batch
    • Tiempo real
  • ...para proporcionar servicios de 
    • Toma de decisiones
    • Informes, etc.
  • ....y con capacidades de...
    • Escalabilidad
    • Tolerancia a fallos
    • Replicación

¿Alguna idea?

¿Una BBDD relacional tradicional?

¿Un sistema de procesamiento off-line?

¿Un sistema de Inteligencia de Negocio?

¿OLAP y variantes?

...

Sistemas NoSQL

  • Key /Value (Tablas)
  • Documentos
  • Grafos

Database Landscape

Teorema CAP

"Es imposible para un sistema de computación distribuida garantizar al mismo tiempo":

  • Consistencia (Consistency)
  • Disponibilidad (Availability)
  • Tolerancia a fallos (Partition tolerance)

 

Ejemplos

AP: Cassandra y CouchDB

CP: HBase y PAXOS

CA: BBDD relacionales

CAP y Big data

Superando el teorema CAP

Las propiedades ACID de las bases de datos relacionales no encajan demasiado bien con las necesidades de un sistema Big Data 
(almacenar y procesar en ~tiempo real).

¿Factores Clave?

¿Arquitecturas?

¿Patrones?

 

Clasificación de IBM

Diferentes Arquitecturas

  • Lambda
  • Kappa
  • Zetta
  • IoT-a
  • Polyglot Processing

...dependiendo de las necesidades...

Arquitectura Lambda

Nathan Marz

Ejemplo arquitectura Lambda

Arquitectura Kappa

Arquitectura Zetta

Arquitectura Zetta en Google

Arquitectura IoT-A

Arquitectura Polyglot Processing

Referencia oficial del NIST

 NIST Big Data Reference Architecture Subgroup
   5. NIST SP 1500-5 -- Volume 5: Architectures White Paper Survey
   6. NIST SP 1500-6 -- Volume 6: Reference Architecture
 

¿Big Data Management Platforms?

Tecnología

Map/Reduce (M/R)

 

Un modelo de programación...

 

  • Procesamiento de datos a gran escala y distribuido 
  • Simple pero restringido
  • Programación paralela
  • Extensible
  • ...

Antecedentes

Programación Funcional

  • Inspirado pero no equivalente

Ejemplo en Python

"Dada una lista de números entre 1 y 50 mostrar sólo los pares"

print filter(lambda x: x % 2 == 0, range(1, 50)) 
  • Datos (una lista de números)
  • Condición (ser par)
  • Función de filtro
  • ...

Otro ejemplo...

"Calcular la suma de los cuadrados de los números entre 1 y 50"
import operator
reduce(operator.add, map((lambda x: x **2), range(1,50)) , 0)
  • reduce es equivalente a foldl en otros lenguajes como Haskell
  • se deben considerar otros aspectos matemáticos (tipo de operador)

Modelo Básico de M/R

MapReduce: The Programming Model and Practice

SIGMETRICS, Tutorials 2009, Google.

Mapping en M/R

Mapping es una función que crea una lista de salida tras la aplicación de un función a cada elemento de la lista de entrada.

Reduce en M/R

Reduce es una función  que itera sobre los elementos de entrada para agregarlos en un sólo valor.

¿Qué es M/R?

Es un modelo de programación  inspirado en programación funcional para resolver problemas mediante un enfoque "divide y vencerás"  con procesamiento distribuido y paralelo.

¿Cuándo utilizar M/R?

  • Indexado y búsqueda (índices inversos)
  • Filtrado
  • Clasificación
  • Recomendación (clustering o filtrado colaborativo)
  • Resumen y estadística
  • Ordenación y "merging"
  • Distribución de frecuencia
  • Consultas tipo SQL (group-by, having, etc.)
  • Procesamiento y generación de gráficos (histogramas)
  • Algoritmos tipo : Búsqueda en anchura o PageRank, 

Consulta

Análisis

Otros

¿Cómo lo utiliza Google?

  • Indexado y búsqueda a escala web (pre-caché de consultas y resultados)
  • Clustering para recomendación en Google News
  • Informes para Google Trends
  • Procesamiento de imágenes de satélites
  • Machine translation
  • Aprendizaje automático
  • ...

Comparación M/R y otros enfoques

MapReduce: The Programming Model and Practice, SIGMETRICS, Turorials 2009, Google.

Evaluación y características M/R

MapReduce: The Programming Model and Practice, SIGMETRICS, Turorials 2009, Google.

Apache Hadoop

The Apache Hadoop software library is a framework that allows for the 
distributed processing of large data sets across clusters of computers 

using simple programming models.

Hadoop Ecosystem

M/R Ejemplos

Apache Hadoop

Resumen M/R

Conclusiones

  • M/R es un modelo de programación
    • ...para manejar grandes cantidades de datos off-line
    • ...escalabilidad, replicación, tolerancia a fallos, etc.
  • Apache Hadoop no es una base de datos
  • Existen muchos proyectos basados en Hadoop
  • Existen enfoques similares:
    • Apache Storm
    • Apache Spark
    • Apache Flink 
    • Signal/Collect
  • ...

¿Qué hay después?

  • Concatenación de trabajos M/R

    • En otros frameworks ya superado (ej: Flink)

  • Optimización de los parámetros del algoritmo

  • Pipelining con otros lenguajes de programación

  • Patrones más avanzados

  • Procesamiento en tiempo real 

  • Problemas actuales: imágenes, etc.

  • ...

Ejemplo completo de

arquitectura Lambda

Apache Spark

Apache Flink

vs

Apache Spark

Apache Flink

Apache Flink

Resumen

¿Qué es Big Data?
Arquitectura 
M/R y Hadoop
Tecnología y frameworks

FAQ

¿Tengo un problema Big Data?

  • Evaluar de acuerdo a las 3-8 V's
  • Definir necesidades
  • Procesamiento
    • ¿Batch? ¿Tiempo real ? ¿Ambas?
  • Almacenamiento
    • Tablas, documentos, grafos, etc.
    • Frecuencia de actualización
  • Consulta
    • Lenguaje de consulta
  • Infraestructura
    • ¿Local? ¿Cloud Computing?
  • Seleccionar tecnología

¿Cuál es el coste?

  • La implementación es cuestión de tiempo y de la tecnología seleccionada

¿Existe alguna suite completa?

  • Cloudera Impala
  • Pentaho (ETL)
  • RapidMiner
  • MapR
  • Hortonworks
  • IBM Watson Analytics
  • Palantir
  • Presto
  • Lambdoop
  • ...

¿Existen oportunidades de negocios?

¿Existen temas abiertos?

 

  • Privacidad
  • Salto entre modelo matemático y despliegue en arquitectura Big Data
  • Big Data Governance (¿Semántica?)
  • Acercar o facilitar Big Data para usuarios finales
  • Aplicaciones
    • Recomendación
    • Análisis de sentimiento, etc.
  • Visualización (D3.js, Highlights.js, etc.
  • ...

 

¿Cuál es la diferencia con BI?

No es sencillo de hacer una gran diferenciación pero caería en los siguientes puntos:

 

  • Big Data: estadística inferencial low-density información
  • BI: estadística descriptiva high-density información

¿Big Data vs HPC?

  • Big Data trata sobre datos
  • HPC trata sobre poder computacional 

 

 

 

 

 

 

...pero destinados a encontrarse...

http://www.hpcuserforum.com/presentations/tuscon2013/IDCHPDABigDataHPC.pdf

¿Cómo se forma un equipo?

¿Por dónde continuar?

¿Cursos on-line específicos?

¿Algún libro?

Top libros...

Tendencias

(además de las de Gartner 2015)

Microservicios y similares

Deep Learning-

Google Tensor Flow

Data Lake

Almacén de datos "en crudo" y en sus formatos nativos hasta que son procesados.

Sistemas interactivos para ciencia de Datos

Ej: Jupyter

Mitos

"Yo también quiero Big Data"

Dependiendo del problema se podrán aplicar las técnicas de forma más exitosa. 

La selección debería basarse en innovación tecnológica para un proceso en negocio y no en marketing.

 

"Es sólo un problema técnico(IT)"

Realmente se debe buscar el problema de negocio y de ahí descender a la solución técnica. Ej: Walmart

"No se puede aplicar a grandes empresas por su diversidad"

Realmente el problema reside en la integración de datos y no en la aplicabilidad de las técnicas 

 

"El coste de las herramientas y expertos es muy alto"

Sobre las herramientas e infraestructura ya se ha comentado y sobre los expertos el problema reside en seleccionar el perfil correcto: estadístic@, ingenier@, etc.

y más mitos...

  • Big data is new
  • Big data is a commodity
  • Big data is a problem
  • Your data is useful only to you
  • The government isn't interested in your social media data
  • Big data won't land you in jail
  • ...

Si con un "SMARTPHONE" no eres más "SMART"

 

Con"BIG DATA" no eres más "BIG"

Es muy importante contextualizar el problema de negocio tanto en necesidades como en nuestras capacidades

No es necesario diseñar/implementar una arquitectura desde el inicio, existen muchas herramientas ya disponibles

...pero...

IBM BIG DATA (Predicción)

4x more digital data than all the grains of sand on earth by 2020 #bigdata

https://twitter.com/IBMAnalytics/status/417748100217061377/photo/1

¡Explotemos Big Data!

  • Ponente: Dr. Jose María Alvarez-Rodríguez 

Créditos

Data for all and all for Data: Perspectivas y Oportunidades en la Web de Datos

By Jose María Alvarez

Data for all and all for Data: Perspectivas y Oportunidades en la Web de Datos

Data for all and all for Data: Perspectivas y Oportunidades en la Web de Dato

  • 3,333