Páginas

28 de febrero de 2016

¿Big Data? ¿La ola del futuro?

Definición

Datos masivos es un término que hace referencia a una cantidad de datos tal que supera la capacidad del software habitual para ser capturados, administrados y procesados en un tiempo razonable. El volumen de los datos masivos crece constantemente.

En 2012 se estimaba su tamaño de entre una docena de terabytes hasta varios petabytes de datos en un único conjunto de datos. En la metodología MIKE2.0 dedicada a investigar temas relacionados con la gestión de información, definen big data en términos de permutaciones útiles, complejidad y dificultad para borrar registros individuales.

En 2001, en un informe de investigación que se fundamentaba en congresos y presentaciones relacionadas,13 el analista Doug Laney del META Group (ahora Gartner) definía el crecimiento constante de datos como una oportunidad y un reto para investigar en el volumen, la velocidad y la variedad. Gartner continúa usando datos masivos como referencia.14 Además, grandes proveedores del mercado de datos masivos están desarrollando soluciones para atender las demandas más críticas de cómo procesar tal cantidad de datos, como MapR, Cyttek Group y Cloudera.

Tecnología

Existen muchísimas herramientas para tratar con Big Data. Nombres como Hadoop, NoSQL, Cassandra, Business Intelligence, Machine Learning, MapReduce… son sólo algunos de los más conocidos. Ellos tratan con algunos de los tres tipos de Big Data:15
  • Datos estructurados (Structured Data): Datos que tienen bien definidos su longitud y su formato, como las fechas, los números o las cadenas de caracteres. Se almacenan en tablas. Un ejemplo son las bases de datos relacionales y las hojas de cálculo.
  • Datos no estructurados (Unstructured Data): Datos en el formato tal y como fueron recolectados, carecen de un formato específico. No se pueden almacenar dentro de una tabla ya que no se puede desgranar su información a tipos básicos de datos. Algunos ejemplos son los PDF, documentos multimedia, e-mails o documentos de texto.
  • Datos semiestructurados (Semistructured Data): Datos que no se limitan a campos determinados, pero que contiene marcadores para separar los diferentes elementos. Es una información poco regular como para ser gestionada de una forma estándar. Estos datos poseen sus propios metadatos semiestructurados16 que describen los objetos y las relaciones entre ellos, y pueden acabar siendo aceptados por convención. Un ejemplo es el HTML, el XML o el JSON.

Captura

¿De dónde provienen todos estos datos? Los fabricamos directa e indirectamente segundo tras segundo. Un iPhone hoy en día tiene más capacidad de cómputo que la NASA cuando el hombre llegó a la luna17 por lo que la cantidad de datos generados por persona y en unidad de tiempo es muy grande. Catalogamos la procedencia de los datos según las siguientes categorías:18
  • Generados por las personas: El hecho de enviar correos electrónicos por e-mail o mensajes por WhatsApp, publicar un estado en Facebook, tuitear contenidos o responder a una encuesta por la calle son cosas que hacemos a diario y que crean nuevos datos y metadatos que pueden ser analizados. Se estima que cada minuto al día se envían más de 200 millones de e-mails, se comparten más de 700.000 piezas de contenido en Facebook, se realizan dos millones de búsquedas en Google o se editan 48 horas de vídeo en YouTube.19 Por otro lado, las trazas de utilización en un sistema ERP, incluir registros en una base de datos o introducir información en una hoja de cálculo son otras formas de generar estos datos.
  • Transacciones de datos: La facturación, las llamadas o las transacción entre cuentas generan información que tratada pueden ser datos relevantes. Un ejemplo más claro lo encontraremos en las transacciones bancarias: lo que el usuario conoce como un ingreso de X euros, la computación lo interpretará como una acción llevada a cabo en una fecha y momento determinado, en un lugar concreto, entre unos usuarios registrados, y más metadatos.
  • E-marketing y web: Generamos una gran cantidad de datos cuando navegamos por internet. Con la web 2.0 se ha roto el paradigma webmaster-contenido-lector y los mismos usuarios se convierten en creadores de contenido gracias a su interacción con el sitio. Existen muchas herramientas de tracking utilizadas en su mayoría con fines de marketing y análisis de negocio. Los movimientos de ratón quedan grabados en mapas de calor y queda registro de cuánto pasamos en cada página y cuándo las visitamos.
  • Machine to Machine (M2M): Son las tecnologías que comparten datos con dispositivos: medidores, sensores de temperatura, de luz, de altura, de presión, de sonido… que transforman las magnitudes físicas o químicas y las convierten en datos. Existen desde hace décadas, pero la llegada de las comunicaciones inalámbricas (Wi-Fi, Bluetooth, RFID…) ha revolucionado el mundo de los sensores. Algunos ejemplos son los GPS en la automoción o los sensores de signos vitales en la medicina.
  • Biométrica: Son el conjunto de datos que provienen de la seguridad, defensa y servicios de inteligencia.20 Son cantidades de datos generados por lectores biométricos como escáneres de retina, escáneres de huellas digitales, o lectores de cadenas de ADN. El propósito de estos datos es proporcionar mecanismos de seguridad y suelen estar custodiadas por los ministerios de defensa y departamentos de inteligencia. Un ejemplo de aplicación es el cruce de ADN entre una muestra de un crimen y una muestra en nuestra base de datos.

Transformación

Una vez encontradas las fuentes de los datos necesarios, muy posiblemente dispongamos de un sinfín de tablas de origen sin estar relacionadas. El siguiente objetivo consta en hacer que los datos se recojan en un mismo lugar y darles un formato.

Aquí entran en juego las plataformas ETL (Extract, Transform and Load). Su propósito es extraer los datos de las diferentes fuentes y sistemas, para después hacer transformaciones (conversiones de datos, limpieza de datos sucios, cambios de formato…) y finalmente cargar los datos en la base de datos o Data Warehouse especificada.21 Un ejemplo de plataforma ETL es el Pentaho Data Integration, más concretamente su aplicación Spoon.

Almacenamiento NoSQL

El término NoSQL se refiere a Not Only SQL y son sistemas de almacenamiento que no cumplen con el esquema entidad-relación.22 Proveen un sistema de almacenamiento mucho más flexible y concurrente y permiten manipular grandes cantidades de información de manera mucho más rápida que las bases de datos relacionales.

Distinguimos cuatro grandes grupos de bases de datos NoSQL:
  • Almacenamiento Clave-Valor (Key-Value): Los datos se almacenan de forma similar a los maps o diccionarios de datos, donde se accede al dato a partir de una clave única.23 Los valores (datos) son aislados e independientes entre ellos, y no son interpretados por el sistema. Pueden ser variables simples como enteros o caracteres, u objetos. Por otro lado, este sistema de almacenamiento carece de una estructura de datos clara y establecida, por lo que no requiere un formateo de los datos muy estricto.24
Son útiles para operaciones simples basadas en las claves. Un ejemplo es el aumento de velocidad de carga de un sitio web que pueden utilizar diferentes perfiles de usuario, teniendo mapeados los archivos que hay que incluir según el id de usuario y que han sido calculados con anterioridad. Cassandra es la tecnología de almacenamiento clave-valor más reconocida por los usuarios.25
  • Almacenamiento Documental: Las bases de datos documentales guardan un gran parecido con las bases de datos Clave-Valor, diferenciándose en el dato que guardan. Si en la anterior no requería una estructura de datos concreta, en este caso guardamos datos semiestructurados.25 Estos datos pasan a llamarse documentos, y pueden estar formateados en XML, JSON, Binary JSON o el que acepte la misma base de datos.
Todos los documentos tienen una clave única con la que puede ser accedido e identificado explícitamente. Estos documentos no son opacos al sistema, por lo que pueden ser interpretados y lanzar queries sobre ellos.23 Un ejemplo que aclare cómo se usa lo encontramos en un blog: se almacena el autor, la fecha, el título, el resumen y el contenido del post.
CouchDB o MongoDB25 son quizá las más conocidas. Hay que hacer mención especial a MapReduce, una tecnología de Google inicialmente diseñada para su algoritmo PageRank, que permite seleccionar un subconjunto de datos, agruparlos o reducirlos y cargarlos en otra colección, y a Hadoop que es una tecnología de Apache diseñada para almacenar y procesar grandes cantidades de datos.
  • Almacenamiento en Grafo: Las bases de datos en grafo rompen con la idea de tablas y se basan en la teoría de grafos, donde se establece que la información son los nodos y las relaciones entre la información son las aristas,25 algo similar en el modelo relacional. Su mayor uso se contempla en casos de relacionar grandes cantidades de datos que pueden ser muy variables. Por ejemplo, los nodos pueden contener objetos, variables y atributos diferentes en unos y los otros. Las operaciones de join se sustituyen por recorridos a través del grafo, y se guarda una lista de adyacencias entre los nodos.23 Encontramos un ejemplo en las redes sociales: en Facebook cada nodo se considera un usuario, que puede tener aristas de amistad con otros usuarios, o aristas de publicación con nodos de contenidos. Soluciones como Neo4J y GraphDB25 son las más conocidas dentro de las bases de datos en grafo.
  • Almacenamiento Orientado a Columnas: Por último, el almacenamiento Column-Oriented es parecido al Documental. Su modelo de datos es definido como “un mapa de datos multidimensional poco denso, distribuido y persistente”.23 Se orienta a almacenar datos con tendencia a escalar horizontalmente, por lo que permite guardar diferentes atributos y objetos bajo una misma Clave.   A diferencia del Documental y el Key-Value, en este caso podremos almacenar varios atributos y objetos, pero no serán interpretables directamente por el sistema. Permite agrupar columnas en famílias y guardar la información cronológicamente, mejorando el rendimiento. Esta tecnología se acostuma a usar en casos con 100 o más atributos por clave.25 Su precursor es BigTable de Google, pero han aparecido nuevas soluciones como HBase o HyperTable.

Análisis de datos

Teniendo los datos necesarios almacenados según diferentes tecnologías de almacenamiento, nos daremos cuenta que necesitaremos diferentes técnicas de análisis de datos como las siguientes:
  • Asociación: Permite encontrar relaciones entre diferentes variables.26 Bajo la premisa de causalidad, se pretende encontrar una predicción en el comportamiento de otras variables. Estas relaciones pueden ser los sistemas de ventas cruzadas en los e-commerce.

  • Minería de datos (Data Mining): Tiene como objetivo encontrar comportamientos predictivos. Engloba el conjunto de técnicas que combina métodos estadísticos y de machine learning con almacenamiento en bases de datos.27 Está estrechamente relacionada con los modelos utilizados para descubrir patrones en grandes cantidades de datos.

  • Agrupación (Clustering): El análisis de clústeres es un tipo de minería de datos que divide grandes grupos de individuos en grupos más pequeños de los cuales no conocíamos su parecido antes del análisis.27 El propósito es encontrar similitudes entre estos grupos, y el descubrimiento de nuevos conociendo cuáles son las cualidades que lo definen. Es una metodología apropiada para encontrar relaciones entre resultados y hacer una evaluación preliminar de la estructura de los datos analizados. Existen diferentes técnicas y algoritmos de clustering.28 
  • Análisis de texto (Text Analytics): Gran parte de los datos generados por las personas son textos, como e-mails, búsquedas web o contenidos. Esta metodología permite extraer información de estos datos y así modelar temas y asuntos o predecir palabras.29

Visualización de datos


Esto es una infografía
Tal y como el Instituto Nacional de Estadística dice en sus tutoriales, “una imagen vale más que mil palabras, o que mil datos”. Nuestra mente agradecerá mucho más la visualización amigable de unos resultados estadísticos en gráficos o mapas que no en tablas con números y conclusiones.

En Big Data se llega un paso más allá: parafraseando a Edward Tufte, uno de los expertos en visualización de datos más reconocidos a nivel mundial "El mundo es complejo, dinámico, multidimensional, el papel es estático y plano.

¿Cómo vamos a representar la rica experiencia visual del mundo en la mera planicie?”. Mondrian30 es una plataforma que permite visualizar la información a través de los análisis llevados a cabo sobre los datos que disponemos. Con esta plataforma se intenta llegar a un público más concreto, y una utilidad más acotada como un Cuadro de Mando Integral de una organización.

Por otro lado, las infografías se han vuelto un fenómeno viral, donde se recogen los resultados de los diferentes análisis sobre nuestros datos, y son un material atractivo, entretenido y simplificado para audiencias masivas.31

Utilidad

Este conjunto de tecnologías se puede usar en una gran variedad de ámbitos, como los siguientes.

Empresarial

Redes Sociales: Cada vez más tendemos a subir a las redes sociales toda nuestra actividad y la de nuestros conocidos. Las empresas utilizan esta información para cruzar los datos de los candidatos a un trabajo. Oracle ha desarrollado una herramienta llamada Taleo Social Sourcing,32 la cual está integrada con las APIs de Facebook, Twitter y LinkedIn. Gracias a su uso, los departamentos de recursos humanos pueden ver, entrando la identidad del candidato, su perfil social y profesional en cuestión de segundos. Por otro lado, les permite crear una lista de posibles candidatos según el perfil profesional necesario, y así pasar a ofrecer el puesto de trabajo a un público mucho más objetivo. Por otro lado, Gate Gourmet –una compañía de catering de aerolíneas,- experimentaba una tasa de abandono del 50% de sus trabajadores asignados al aeropuerto de Chicago, y sospecharon que el problema existía en el tiempo dedicado al viaje. Para demostrarlo, hicieron análisis juntando varios data sets de sus sistemas internos y de otros externos como datos demográficos, datos de tráfico y datos de uso de redes sociales. Los resultados que obtuvieron fueron patrones que relacionaban muy consistentemente la alta tasa de abandono con la distancia del lugar de trabajo a casa y la accesibilidad al transporte público.33

Consumo: Amazon es líder en ventas cruzadas. El éxito se basa en la minería de datos masiva basando los patrones de compra de un usuario cruzados con los datos de compra de otro, creando así anuncios personalizados y boletines electrónicos que incluyen justo aquello que el usuario quiere en ese instante.34 Offline también nos encontramos con casos de aplicación Big Data. Nuestros teléfonos móviles envían peticiones de escucha WiFi a todos los puntos de acceso con los que nos cruzamos. Algunas compañías han decidido hacer un trazo de estas peticiones con su localización y dirección MAC para saber qué dispositivo hace cuál ruta dentro de un recinto. No hay que asustarse ya que con la dirección MAC no pueden invadir nuestra intimidad.35 Las grandes superficies aprovechan estos datos para sacar información como contabilizar cuánto tiempo pasan los clientes en su interior, qué rutas siguen, dónde permanecen más tiempo (ya sea escogiendo un producto o el tiempo de espera en caja) o cuál es la frecuencia de visita.

Big Data e intimidad: La cantidad de datos creados anualmente es de 2,8 Zettabytes en 2012, de los cuales el 75% son generados por los individuos según su uso de la red ya sea bajarse un archivo, conectar el GPS o enviar un correo electrónico. Se calcula que un oficinista medio genera 1,8 Terabytes al año por lo que son unos 5 GB al día de información.36 Aquí entran en juego las empresas llamadas corredores de datos. Acxiom es una de ellas, y posee unas 1.500 trazas de datos de más de 500 millones de usuarios de internet. Todos estos datos son transformados y cruzados para incluir al usuario analizado en uno de los 70 segmentos de usuarios, llamado PersonicX.37 Descrito como un “resumen de indicadores de estilo de vida, intereses y actividades”, esta correduría de datos basa su clustering en los acontecimientos vitales y es capaz de predecir más de 3.000 reacciones ante estímulos de estos clientes. En un primer momento captaba la información de los hechos reales y no virtuales de los usuarios.38 En febrero de 2013, Facebook acordó la cesión de la información personal de sus usuarios con Acxiom y otros corredores de datos haciendo cruzar las actividades de la vida off-line con las actividades on-line [30]. A nivel usuario, nos encontramos con Google Location History: un servicio de Google que registra las ubicaciones en las cuales ha estado un usuario que lleva el móvil encima, y con el servicio de localización activado (que por defecto lo está en los terminales con Android). Al acceder a él muestra un mapa con las rutas que ha seguido el usuario, con la hora de llegada y salida de cada ubicación.39 Gracias a esta utilidad se crean algoritmos de recomendaciones de amigos en redes sociales y ubicaciones a visitar basados en el historial de ubicaciones del usuario.40 Por último, Google pagó 3.200 millones de dólares por Nest, una empresa de detectores de humo.41 Ahora Google ha abierto Nest Labs, donde se pretende desarrollar sensores para convertir la casa en una Smart home. Incluir estos sensores permitirá saber por ejemplo cuándo hay alguien o no en casa gracias a su interacción con los wearables, a qué temperatura está el ambiente o detectar si hay algún peligro dentro como fuego.42

Deportes

Profesional: En un ámbito donde se mueve tanto dinero, suelen utilizar las nuevas tecnologías antes que los usuarios de base. Nos encontramos por ejemplo que el análisis de los partidos constituye una parte fundamental en el entrenamiento de los profesionales, y la toma de decisiones de los entrenadores. Amisco43 es un sistema aplicado por los más importantes equipos de las ligas Española, Francesa, Alemana e Inglesa des del 2001. Consta de 8 cámaras y diversos ordenadores instalados en los estadios, que registran los movimientos de los jugadores a razón de 25 registros por segundo, y luego envían los datos a una central donde hacen un análisis masivo de los datos. La información que se devuelve como resultado incluye una reproducción del partido en dos dimensiones, los datos técnicos y estadísticas, y un resumen de los datos físicos de cada jugador, permitiendo seleccionar varias dimensiones y visualizaciones diferentes de datos.43

Aficionado: Aplicaciones como Runtastic, Garmin o Nike+ proveen de resultados Big Data al usuario. Este último –Nike+- va un paso más allá a nivel de organización, ya que fabrican un producto básico para sus usuarios: las zapatillas. Los 7 millones de usuarios generan una gran cantidad de datos para medir el rendimiento y su mejora, por lo que la empresa genera unos clústeres con los patrones de comportamiento de sus usuarios. Uno de sus objetivos pues, es controlar el tiempo de vida de sus zapatillas encontrando fórmulas para mejorar la calidad. Por último, aumenta la competitividad entre sus usuarios con el uso de la gamificación: establece que comunidades de usuarios lleguen a metas y consigan objetivos conjuntamente con el uso de la aplicación, motivando e inspirando a los corredores para usar su aplicación y a más largo plazo, sus productos deportivos.

Investigación

Salud y medicina: Hacia mediados 2009, el mundo experimentó una pandemia de gripe A, llamada gripe porcina o H1N1. El website Google Flu Trends fue capaz de predecirla gracias a los resultados de las búsquedas. Flu Trends usa los datos de las búsquedas de los usuarios que contienen Influenza-Like Illness Symptoms (Síntomas parecidos a la enfermedad de la gripe) y los agrega según ubicación y fecha, y es capaz de predecir la actividad de la gripe hasta con dos semanas de antelación más que los sistemas tradicionales. Más concretamente en Nueva Zelanda44 cruzaron los datos de Google Flu Trends con datos existentes de los sistemas de salud nacionales, y comprobaron que estaban alineados. Los gráficos mostraron una correlación con las búsquedas de ILI Symptoms y la extensión de la pandemia en el país. Los países con sistemas de predicción poco desarrollados pueden beneficiarse de una predicción fiable y pública para abastecer a su población de las medidas de seguridad oportunas.

Defensa y seguridad: Para incrementar la seguridad frente a los ataques de las propias organizaciones, ya sean empresas en el entorno económico o los propios ministerios de defensa en el entorno de ciberataques, se contempla la utilidad de la tecnología Big Data en escenarios como la vigilancia y seguridad de fronteras, lucha contra el terrorismo y crimen organizado, contra el fraude, planes de seguridad ciudadana o planeamiento táctico de misiones e inteligencia militar.45
Caso específico: Proyecto Aloja:

Una de las máquinas del Marenostrum, Supercomputador del BSC
El Proyecto Aloja46 ha sido iniciado por una apuesta en común del Barcelona Supercomputing Center (BSC) y Microsoft Research. El objetivo de este proyecto de Big Data quiere conseguir una optimización automática en despliegues de Hadoop en diferentes infraestructuras. [40]

Caso específico: Sostenibilidad: Conservation International es una organización con el propósito de concienciar a la sociedad de cuidar el entorno de una manera responsable y sostenible. Con la ayuda de la plataforma Vertica Analytics de HP, han situado 1.000 cámaras a lo largo de 16 bosques en 4 continentes. Estas cámaras incorporan unos sensores, y a modo de cámara oculta graban el comportamiento de la fauna. Con estas imágenes y los datos de los sensores (precipitaciones, temperatura, humedad, solar…) consiguen información sobre cómo el cambio climático o el desgaste de la tierra afecta en su comportamiento y desarrollo.47