Big Data en la nube

Velocidad, volumen, variedad y veracidad de los datos

Big Data es un dispositivo inherente de la nube y brindan oportunidades sin precedente para utilizar información de base de datos tradicional y sin estructura y analítica empresarial con redes sociales, datos de red de sensor y multimedia mucho menos estructurada. Las aplicaciones de Big Data requieren una arquitectura de computacional centrada en los datos, y muchas soluciones incluyen APIs basadas en la nube para la interfaz con búsquedas avanzadas por columna, algoritmos de aprendizaje automático y analítica avanzada como visión artificial, analítica de video y herramientas de visualización. Este artículo examina el uso del lenguaje R y herramientas similares para análisis de Big Data y métodos para escalar servicios de Big Data en la nube. Proporciona una vista a profundidad a la gestión de fotografía digital como un servicio simple de Big Data que emplea elementos clave de búsqueda, analítica y aprendizaje automático aplicados a los datos sin estructura.

Sam Siewert, Principal Software Architect/Adjunct Professor, University of Colorado

Dr. Sam Siewert is a systems and software architect who has worked in the aerospace, telecommunications, digital cable, and storage industries. He also teaches at the University of Colorado at Boulder in the Embedded Systems Certification Program, which he co-founded in 2000. His research interests include high-performance computing, broadband networks, real-time media, distance learning environments, and embedded real-time systems.



09-07-2013

Este artículo se enfoca en aplicaciones que utilizan Big Data y explica conceptos fundamentales detrás de la analítica de Big Data y cómo combinar eso con aplicaciones de inteligencia empresarial (BI) y tecnologías paralelas como los métodos de visión artificial (CV) y aprendizaje automático cubiertos en la Parte 3 de la serie "Cloud scaling".

Lo que distingue la analítica de Big Data de la analítica de video es la gran cantidad de tipos de datos procesados y las herramientas de análisis interactivo y búsqueda proporcionadas en comparación a, por ejemplo, los métodos de minería de datos o MapReduce utilizados, que pueden ser más sofisticados pero requerir mucho más tiempo para ejecutarse que Google BigQuery, por ejemplo, el cual utiliza la búsqueda por columnas para comprimir y acelerar las búsquedas interactivas de cantidades masivas de datos sin estructura. De hecho, en "An Inside Look at Google BigQuery" (vea Resources), Google explica que en decenas de segundos, BigQuery puede realizar coincidencia de texto regex en una enorme tabla de unos 35 mil millones de filas y 20 TB. La funcionalidad MapReduce de la herramienta requiere de mucho más tiempo para ejecutarse, pero proporciona reducción de datos sofisticada.

Cualquiera con una cuenta de Google puede utilizar BigQuery. O, para una idea más rápida de una búsqueda típica de Big Data descargue mi imagen y súbala a Google Images. Debe obtener todas las mismas páginas con mi imagen (de IBM, la Universidad de Colorado Boulder, etc.), que incluyen al menos un falso positivo. He utilizado este ejemplo principalmente para asegurarme de que las imágenes que he descargado tienen los créditos adecuados de fotografía y los permisos otorgados para su reutilización. Junto con otros ejemplos que exploro aquí, este ejemplo da una idea del espíritu de Big Data, encontrando una aguja en un pajar de datos sin estructura — de hecho, más bien son millones de pajares.

Definiendo Big Data

Big Data es ampliamente definida como la captura, la gestión y el análisis de datos que van más allá de los datos estructurados típicos, que pueden ser consultados por sistemas de gestión de bases de datos relacionales — frecuentemente para archivos sin estructura, video digital, imágenes, datos de sensor, archivos de registro y en realidad cualquier dato que no esté contenido en registros con distintos campos que puedan ser buscados. En cierto sentido, los datos sin estructura son los datos interesantes, pero es difícil sintetizarlos en la BI o sacar conclusiones de ellos a menos que puedan correlacionarse con datos estructurados.

Big Data también tienen nuevos orígenes, como la generación automática (por ejemplo, archivos de registro o redes de sensores), dispositivos móviles (video, fotografías y mensajería de texto) y máquina-a-máquina, donde el Internet de las Cosas informa el estado para propósitos de planificación de mantenimiento para flotas de vehículos o aeronaves o supervisión de telemetría en general. Una forma de ver esto es por las características de volumen. IBM estima que 2,5 trillones (2.500.000.000.000.000.000) de bytes de datos son creados actualmente cada día (vea Resources). La segunda forma es la velocidad, donde las tasas de datos se están incrementando debido al ancho de banda de la red — normalmente en tasas de gigabits actualmente (gigE, 10G, 40G, 100G) en comparación con tasas de megabits. La tercera forma es la variedad, ahora que incluyen más tipos de datos sin estructura, como secuencias de video digital y datos de sensor así como archivos de registro. La última forma es la veracidad de los datos, o qué tanto se puede confiar en los datos cuando hay que tomar decisiones clave con base en volúmenes tan grandes a tasas altas. Simplemente saber que los datos no están falseados, que no se han corrompido o que provienen de un origen esperado es difícil — pueden provenir, por ejemplo, de una de los miles de cámaras de seguridad, cada una produciendo muchos miles de fotogramas de video cada hora. Así que señalemos algunos de los aspectos clave de Big Data, las aplicaciones y los sistemas para entenderlos mejor.

¿De dónde proviene Big Data?

Big Data se ha producido en gran medida debido a avances en dispositivos móviles que ahora incluyen video digital, fotografía, audio y dispositivos avanzados de email y texto. Los usuarios están recolectando datos en números que nunca eran vistos hace una década; de igual manera, nuevas aplicaciones como Google Translate suministran dispositivos de servidor de Big Data— traducción natural del idioma para frases habladas o escritas en dispositivos móviles. IBM vio a los datos habilitados por tecnología móvil primero en el evento Global Technology Outlook para 2013 (vea Resources) y caracteriza los datos grandes por volumen, variedad, velocidad y veracidad. Los datos están naturalmente mucho menos estructurados que los registros de bases de datos relacionales, pero pueden correlacionarse con dichos datos. Este artículo proporciona detalles sobre lo que constituye Big Data.

Quizá la mejor forma de entender Big Data es revisar su historia, como lo ha hecho la Revista Forbes (vea Resources). La escala de lo que ha sido considerado como Big Data por supuesto se ha incrementado hasta la tasa actual de más de 2,5 exabytes por día. Curiosamente, la mayoría de los datos nunca serán revisados por un humano (con solo 7 mil millones de personas de acuerdo con el Censo de EE UU, cada uno de nosotros tendría que revisar más de 300MB de información cada día). Debido a este reto, la única forma lógica de utilizar todos estos datos es la automatización de máquina-a-máquina o la consulta inteligente de Big Data. Más aún, si todos estos datos son mantenidos durante largos periodos de tiempo, ¿cómo sabría alguien si algunos de ellos se han corrompido? Por supuesto, podemos almacenar resúmenes de datos (como MD5, que es una forma de suma de comprobación) y utilizar una matriz redundante de discos independientes (espejos RAID—, paridad XOR o códigos de borrado para detectar y recuperar datos corrompidos), pero está aumentando la preocupación de que algunos datos podrían sufrir una corrupción silenciosa (vea Resources).

Internet Archive, un curador de datos, ha realizado investigaciones sobre esta preocupación. En general, la veracidad de Big Data es un reto, pero los códigos de borrado y los métodos avanzados de resumen de datos son prometedores. Los métodos tradicionales como XOR RAID o el duplicado simple — que proporcionan solo protección de fallas individual contra la pérdida de datos cuando los dispositivos de almacenamiento fallan y no manejan escenarios sutiles de corrupción causada por errores de software, errores del operador del centro de datos o fallos del soporte físico provocados con el tiempo — están siendo sustituidos por RAID-6 y códigos de borrado más avanzados. El concepto de la durabilidad de los datos para Big Data se ha vuelto importante, un tema que he investigado mediante modelos matemáticos trabajando con Intel y Amplidata. Con tantos datos, la idea de que los humanos los revisen para comprobar su veracidad es simplemente imposible, y la pérdida de datos podría no ser detectada hasta que sean finalmente consultados o accedidos mucho después.


Diseño del sistema de Big Data

Las arquitecturas para la protección de datos a escala deben incluir protección contra pérdida, corrupción silenciosa, malware y modificación maliciosa de datos por criminales cibernéticos o a través de guerra cibernética. Los datos son un activo y cada vez son más utilizados por los gobiernos y empresas para tomar sus decisiones clave, pero si la veracidad de los datos es desconocida, el valor de los datos se reduce o incluso se pierde — o peor aún: se toman malas decisiones. Este tema va más allá del ámbito de este artículo, pero claramente la protección contra la pérdida y la modificación no detectada o la corrupción de los datos es necesaria.

Una forma de entender mejor Big Data es simplemente observar más de cerca algunos sitios de la nube que tienen suficientes datos (petabytes, normalmente) junto con herramientas para consultar (normalmente terabytes) para que sean utilizadas por aplicaciones. La mayoría de nosotros utilizamos consultas de Google diariamente, pero Google también proporciona BigQuery, que utiliza almacenamiento y búsqueda por columnas más sofisticados (discutido con más detalle como un ejemplo). Otros ejemplos bien conocidos son Facebook (redes sociales), Wikipedia (captura de conocimiento general), Internet Archive (curadores de datos digitales), DigitalGlobe (sistemas de información geográfica [GIS]), Microsoft® Virtual Earth (GIS), Google Earth (GIS) y numerosos proveedores nuevos de servicios de Big Data.

Las compañías tienen datos internos así como en sistemas de nube privada. Muchos sistemas de Big Data son de solo lectura para consultas de usuario (con captura de orígenes generados por máquina), pero probablemente incluyen una fuerte autenticación si permiten actualizaciones en bases de datos o datos sin estructura, mediante frases de contraseña, requiriendo que los usuarios se autentiquen mediante códigos de confirmación de mensaje de texto de teléfono móvil, con el uso de retos gráficos para verificar el ingreso de datos humanos y quizá mediante autenticación biométrica en el futuro.


Aplicaciones de Big Data

Las aplicaciones asesinas para analítica de video se están pensando para el uso diario para CV y analítica de video, algunas quizá a años de su realización debido a los requisitos informáticos o al costo de implementación. No obstante, esta es una lista de aplicaciones interesantes:

  • El análisis de sentimientos de la bolsa de valores mediante Google Trends ha mostrado correlacionarse bien con descensos y aumentos de índices históricos, lo cual quizá no sea sorprendente pero sí interesante en términos de importancia para una aplicación de Big Data. El artículo "Quantifying Trading Behavior in Financial Markets Using Google Trends" (vea Resources) proporciona evidencia de que el uso del análisis de sentimientos para tomar decisiones largas y cortas de comprar y vender para las acciones puede superar las estrategias simples de comprar y mantener e indexar el fondo de inversión. Esta investigación sin duda requiere más análisis, pero es atractiva. No obstante, una consideración interesante es qué sucederá a medida que estos sistemas de comercio basados en máquina se vuelvan disponibles junto con el comercio programado existente.
  • El organizador de fotografías Picasa de Google es una herramienta útil que permite a un usuario organizar, consultar e identificar rostros automáticamente mediante técnicas de CV combinadas con aprendizaje automático. Esta es una excelente forma de identificarse con el valor de los servicios y aplicaciones de Big Data. Deja bien claro que la analítica de Big Data requerirá de analítica avanzada como CV y métodos como visión automática.
  • Sistemas de recomendación como Pandora (música), Netflix (películas) y Amazon (libros y productos) utilizan datos de clientes y múltiples agentes en un enfoque conocido como filtrado colaborativo. Este servicio de Big Data ha sido el tema de investigaciones avanzadas en aprendizaje automático y minería de datos. Claramente, la habilidad de hacer buenas recomendaciones puede incrementar las ventas y la satisfacción del cliente.
  • La analítica base del cliente puede proporcionar análisis de sentimientos para sus clientes con base en datos de redes sociales (Facebook y Twitter, por ejemplo) cuando estos datos textuales están correlacionados con BI recolectada de registros transaccionales de cliente tradicionales. El análisis de sentimientos permite que una empresa conozca lo que sus clientes piensan sobre sus productos, su interés en ellos o en los de la competencia, lo que les gusta y lo que no les gusta, etc.
  • Los datos generados por máquina de orígenes como redes de sensores (por ejemplo, sensores intercalados en grandes sistemas como el transporte urbano, los semáforos y en infraestructura en general); datos de máquina a máquina, en donde el sensor o los datos de registro de una máquina (normalmente en el lugar) son ingeridos por otra máquina; y archivos de registro, frecuentemente utilizados por la TI para depurar problemas y gestionar sistemas por excepción (ignorarlos excepto cuando necesiten atención humana para recuperación y operación continua).
  • Los sistemas de reservación para viajar están siendo mejorados al incorporar la preferencia del cliente, logística e historial previo para hacer sugerencias útiles para esa siempre ardua tarea de planificar un viaje.
  • Las redes sociales para el entretenimiento están sustituyendo el aspecto social de discutir sobre los programas de televisión y las películas, donde los medios digitales on demand ahora permiten que cualquiera vea el contenido casi en cualquier lugar y en cualquier momento y que se siga compartiendo la experiencia a través de las redes sociales. Aunque esto hace que el consumo de contenido se disfrute más, permite que los creadores de contenido, escritores y artistas tengan la habilidad de conocer su audiencia mejor que nunca antes.
  • Los diagnósticos médicos frecuentemente han incluido sistemas de soporte de decisiones de expertos basadas en normas (DSSes), pero con los Big Data, existe evidencia de que estos sistemas se salgan del ámbito de la investigación y se vuelvan asistentes principales médicos. Por ejemplo, un nuevo DSS para ayudar con la evaluación psicológica objetiva de pacientes en riesgo de suicidarse ha mostrado ser prometedor para la investigación (vea Resources). Parte de comprobar estos sistemas es compararlos con datos históricos: estos sistemas no sustituirán la toma de decisiones humana, pero prometen mejorarla cuando se utilicen como una herramienta de soporte.

Esto de ninguna manera es una lista completa de aplicaciones de Big Data, pero puede encontrar más para explorar en Resources. La aplicación de consulta por columnas, analítica para datos sin estructura, MapReduce y visualización razonamiento sobre Big Data apenas inicia.

Big Data en la seguridad pública

La integración de la analítica de Big Data con la información pública (o información privada suministrada voluntariamente a un guardián) puede permitir una rápida búsqueda de grandes volúmenes de video, voz, datos de sensor y texto de email para mejorar la seguridad pública para recuperación de desastres, para prevenir amenazas terroristas y para entender las preocupaciones públicas. Se podría pensar en esto incluso casi como retroalimentación en comparación con los sistemas de advertencia de emergencias de transmisión de una sola vía. Por supuesto, existen preocupaciones y un lado obscuro potencial para los Big Data y la analítica de video/voz/email si se convierte en una invasión a la privacidad. Dichos sistemas requieren de un uso responsable, absoluta confidencialidad y auditoría de los datos recolectados en lugares públicos y redes.

Consideraciones de la privacidad de la aplicación de Big Data

Si las compañías, los gobiernos y las organizaciones recolectan, analizan y utilizan con cuidado los Big Data, el valor para el público será aparente. Si se abusa de las posibilidades de la analítica de Big Data, la confianza pública se perderá y su valor también. Los sentimientos de los usuarios deben ser ofrecidos voluntariamente, y gran parte del valor proviene de saber la forma en que las personas se sienten sobre aquello con lo que están interactuando, sobre el lugar donde se encuentran o sobre lo que están leyendo. Si se desarrolla un sensor capaz de leer mentes, podríamos llegar a tener un verdadero dilema ético. Por ahora, el uso de la minería de datos de cámaras, grabaciones de voz o emails debe perseguirse con mucho cuidado por la privacidad y en una forma que mantenga la confianza del usuario.

Como un perfecto ejemplo, durante la escritura de este artículo, el problema de la base de datos de metadatos de teléfono de la Agencia de Seguridad Nacional de EE UU, en la que se puede hacer minería de datos en caso de una amenaza nacional, ha causado una preocupación importante (vea Resources). Obviamente, la mayoría de los detalles serán aclarados en juicios, pero tener mucho cuidado con el diseño de sistemas de Big Data sin duda ahorrará muchos dolores de cabeza en los litigios.


Ejemplo: mediante scripts R

Kit de Herramientas del proyecto R en InfoSphere Streams

InfoSphere Streams es una plataforma informática avanzada que permite que aplicaciones desarrolladas por usuarios ingieran, analicen y correlacionen información rápidamente a medida que llega desde miles de orígenes en tiempo real, manejando tasas de rendimiento de datos muy elevadas: hasta millones de eventos o mensajes por segundo. La versión 3.1 incluye un Kit de Herramientas del proyecto R que le permite aplicar algoritmos complejos de minería de datos para detectar patrones de interés en secuencias de datos. Aprenda más y pruébelo..

Analítica visual es el término utilizado para describir la visualización de Big Data (no debe confundirse con la analítica de video, el análisis de secuencias de imágenes para entender lo que contienen). La visualización históricamente ha sido una práctica más frecuentemente encontrada en la informática de alto rendimiento, pero con el crecimiento de los datos sin estructura de dispositivos móviles, redes sociales, sistemas de máquina a máquina y datos generados por redes de sensores, la necesidad de una visualización avanzada está creciendo para los Big Data. Los simples gráficos circulares, el principio de Pareto, los trazos X-Y y los gráficos de barras frecuentemente utilizados en la toma de decisiones empresariales históricamente quizá no han sido suficientes para entender los Big Data.

Para explorar esto, implementé las ecuaciones Lorenz en C y en el lenguaje de scripts R (una herramienta de análisis de Big Data). Utilizando C y Microsoft® Excel® para entender estas ecuaciones complejas es limitado, principalmente porque el modelado y el análisis no están integrados y las hojas de cálculo normalmente no proporcionan visualización compleja y multidimensional. Con C y Excel, pude producir trazos de dispersión 2-D de las ecuaciones de Lorenz, que modelan la convección atmosférica, como se muestra en la Figura 1. Puede haber una mejor forma para visualizar estos datos con Excel, pero no hubo ninguna forma obvia para explorar más de dos dimensiones.

Figura 1. Un trazo de hoja de cálculo en 2-D de un modelo Lorenz
Image shows a two-dimensional Lorenz plot

Analítica visual con R

Utilizando R, puede importar un gran número de paquetes de analítica y visualización y utilizarlos con este lenguaje de scripts intuitivo. Por ejemplo, para visualizar mejor las ecuaciones de Lorenz, importé el paquete scatterplot3d, como se muestra en la Figura 2, permitiendo una mejor vista de las ecuaciones de Lorenz en 3-D inherentemente comparadas con una simple hoja de datos. También pudo utilizar herramientas de visualización científica como MATLAB o incluso trazo GNU para este tipo de análisis basado en el modelo, pero R también incluye una variedad de paquetes que se ajustan bien al análisis de conjuntos de datos de muchas dimensiones que no tienen una naturaleza científica, como las visualizaciones de BI, para lo cual puede encontrar ejemplos en Resources. El ejemplo de Lorenz es una introducción simple al poder de R.

Figura 2. Importando un paquete de visualización en R para Windows
Image showing an imported visualization package into R

Así como MATLAB proporciona un entorno de análisis interactivo científico y de ingeniería para modelado y exploración de datos para ingenieros y científicos, R proporciona lo mismo para analistas empresariales y análisis de Big Data de todos los tipos (vea la Figura 3 y el Listado 1). La exploración interactiva de Big Data con herramientas como R y BigQuery es lo que distingue el análisis de Big Data del análisis más orientado a lotes y de la minería de datos, lo cual es frecuentemente realizado mediante MapReduce. De cualquier manera, la meta es formar nuevos modelos y soportar la toma de decisiones aprovechando el volumen de Big Data.

Figura 3. Un trazo en 3-D de R de ecuaciones de Lorenz
An image showing an R 3D plot of Lorenz equations
Listado 1. Script de R de muestra para el trazo de ecuación de Lorenz
 library(scatterplot3d) library(gdata)
                getwd() [1] "C:/Users/ssiewert/Documents" mydata = read.csv("lorenz.csv")
                scatterplot3d(mydata, highlight.3d=TRUE, col.axis="blue", col.grid="lightblue",
                main="Lorenz Equations", pch=20)

Para ayudarle a entender y explorar la visualización, el ejemplo de Lorenz para C y Excel y también R está disponible para descarga. Para explorar más, pudo utilizar R para visualizar datos retornados desde Google BigQuery.


El futuro de los Big Data

Este artículo construye un argumento para el valor de los Big Data, el cual ha sido cuestionado, especialmente cuando la veracidad de los datos no puede ser confirmada, y proporciona sugerencias para mejorar la veracidad junto con conceptos para manejar el volumen, la variedad y la velocidad de los datos. La experiencia hasta ahora muestra que el escalamiento horizontal, el uso de métodos avanzados de durabilidad de datos, la incorporación de redes de alta velocidad para clústeres y algoritmos de escalamiento horizontal como MapReduce y la búsqueda por columna parecen prometedores para manejar efectivamente los Big Data. No obstante, los problemas que ni siquiera fueron considerados, como la corrupción silenciosa de datos, se han convertido en nuevas preocupaciones debido al incremento en el volumen, la velocidad y la variedad de los datos, anteriormente de menor preocupación cuando las tasas de errores de bits para unidades de disco y redes eran mucho menores que los bytes que pasaban a través de ellos o que eran almacenados en ellos. Por lo tanto, el arquitecto de Big Data en la actualidad tiene que ser más inteligente, no solo para proteger la veracidad y el valor de los datos, sino también para diseñar servicios que los hagan accesibles y útiles ahora que son mucho mayores que la capacidad humana para revisarlos diariamente.


Descargar

DescripciónNombretamaño
Scripted analytics examplesscript-examples.zip702KB

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Cloud computing, Information mgmt
ArticleID=963983
ArticleTitle=Big Data en la nube
publish-date=07092013