¿Qué son los datos masivos o Big Data? Los datos son la información que proviene de una variedad de fuentes, como personas, imágenes, texto, sensores y sitios web. Los datos también provienen de dispositivos tecnológicos, como teléfonos celulares, computadoras, quioscos, tablets y cajas registradoras. Recientemente, se produjo un pico en el volumen de datos generados por los sensores. Los sensores ahora se instalan en una cantidad cada vez mayor de ubicaciones y objetos. Estas incluyen cámaras de seguridad, semáforos, automóviles inteligentes, termómetros e incluso vides y viñedos. Los datos masivos son una gran cantidad de datos, pero ¿qué es una gran cantidad? Nadie tiene un número exacto que indique cuándo los datos de una organización se consideran "datos masivos". Las siguientes son tres características que indican que una organización puede estar haciendo frente a datos masivos: Tienen una gran cantidad de datos que requiere cada vez más espacio de almacenamiento (volumen). Tienen una cantidad de datos que crece exponencialmente rápido (velocidad). Tienen datos que se generan en diferentes formatos (variedad). ¿Qué cantidad de datos recopilan los sensores? Estos son algunos ejemplos aproximados: Los sensores de un automóvil autónomo pueden generar 4000 gigabits (Gb) de datos por día. El motor de un Airbus A380 genera 1 petabyte (PB) de datos en un vuelo de Londres a Singapur. Los sensores de seguridad en las operaciones de minería pueden generar hasta 2,4 terabits (TB) de datos por minuto. Los sensores de un hogar conectado inteligente pueden producir 1 gigabyte (GB) de información por semana. Si bien los datos masivos sí suponen desafíos para las organizaciones en términos de análisis y almacenamiento, también pueden proporcionar información invaluable para refinar las operaciones y mejorar la satisfacción del cliente. Grandes conjuntos de datos Las empresas no necesariamente tienen que generar sus propios datos masivos. Las organizaciones más pequeñas podrían no tener los sensores, el volumen de clientes ni la capacidad para generar la variedad de información que podría beneficiar a su empresa. Hay fuentes de conjuntos de datos gratuitos disponibles y listas para usar y analizar por cualquier persona dispuesta a buscarlas. Muchas empresas de distintos tamaños, consideran que tienen que recopilar sus propios datos para ver los beneficios del análisis de datos masivos, pero esto simplemente no es cierto. ¿Cuáles son los desafíos de los datos masivos? Los cálculos de datos masivos de IBM concluyen que “cada día creamos 2,5 trillones de bytes de datos”. Para configurar esto en contexto, cada minuto de cada día: Cargamos cerca de 300 horas de video de YouTube. Enviamos cerca de 3,5 millones de mensajes de texto. Transmitimos cerca de 86 mil horas de video de Netflix. Le damos Me gusta a cerca de 4 millones de publicaciones de Facebook. Pedimos cerca de 14 millones de pronósticos de The Weather Channel. El rápido crecimiento de datos puede ser una ventaja o un obstáculo cuando se trata de lograr los objetivos comerciales. Para tener éxito, las empresas deben ser capaces de acceder y administrar fácilmente sus activos de datos. Con la constante creación de esta enorme cantidad de datos, las tecnologías tradicionales y los almacenes de datos (Data Warehouses) no pueden cumplir con las necesidades de almacenamiento. Incluso con los recursos de almacenamiento en la nube que están disponibles por parte de las empresas como Amazon, Google, Microsoft y muchas otras, la seguridad de los datos almacenados se convierte en un gran problema. Las soluciones de datos masivos deben ser seguras, tener una alta tolerancia a fallas y utilizar replicación para garantizar que los datos no se pierdan. El almacenamiento de datos masivos no solo implica guardarlos, sino que también consiste en administrarlos y protegerlos. ¿Dónde podemos almacenar los datos masivos? Por lo general, los datos masivos se almacenan en varios servidores normalmente alojados en centros de datos. Para la seguridad, la accesibilidad y la redundancia, los datos se suelen distribuir y/o replicar en diferentes servidores en varios centros de datos diferentes. Computación en la niebla La computación en la niebla es una arquitectura que utiliza dispositivos “perimetrales” o de clientes de usuarios finales para ejecutar gran parte del procesamiento previo y almacenamiento requeridos por una organización. La computación en la niebla se diseñó con el fin de mantener los datos más cerca del origen para su procesamiento previo. Los datos de sensores, en particular, se pueden procesar previamente más cerca de donde se recopilan. La información adquirida a partir de ese análisis de procesamiento previo puede introducirse en los sistemas de las empresas para modificar los procesos, de ser necesario. Dado que los datos del sensor previamente son procesados por terminales dentro del sistema de la empresa, las comunicaciones hacia y desde los servidores y dispositivos serían más rápidas. Esto requiere menos ancho de banda que el que se usa al conectarse constantemente con la nube. Después de que los datos se hayan procesado previamente, a menudo se envían para su almacenamiento a más largo plazo, para realizar copias de respaldo o análisis más pormenorizados dentro de la nube. La nube y la computación en la nube Como se mencionó anteriormente, la nube es una colección de centros de datos o grupos de servidores conectados. El acceso al software, el almacenamiento y los servicios disponibles en los servidores, se obtiene a través de Internet mediante una interfaz de navegador. Los servicios en la nube son proporcionados por grandes empresas como Google, Microsoft y Apple. Los servicios de almacenamiento en la nube son proporcionados por diferentes proveedores, por ejemplo: Google Drive, Apple iCloud, Microsoft OneDrive y Dropbox. Desde la perspectiva de una persona, mediante los servicios en la nube, usted podrá: Almacenar todos sus datos, como imágenes, música, películas y correos electrónicos, y así liberar espacio en el disco duro local Acceder a muchas aplicaciones en lugar de descargarlas en su dispositivo local Acceder a sus datos y aplicaciones en cualquier lugar, en cualquier momento y en cualquier dispositivo Una de las desventajas de utilizar la nube es que sus datos podrían caer en las manos equivocadas. Sus datos están a la merced de la solidez de la seguridad de su proveedor de la nube elegida. Desde la perspectiva de una empresa, los servicios y la computación en la nube permiten resolver una variedad de problemas de administración de datos: Permite el acceso a los datos organizacionales en cualquier momento y lugar. Optimiza las operaciones de TI de una organización suscribiéndose únicamente a los servicios necesarios. Elimina o reduce la necesidad de equipamiento, mantenimiento y administración de TI en el sitio. Reduce el costo de los equipos, electricidad, requisitos de planta físicos y las necesidades de capacitación del personal. Permite respuestas rápidas a los requisitos de volumen de datos crecientes. Procesamiento distribuido Desde una perspectiva de administración de datos, el análisis era sencillo cuando solamente creaban datos los seres humanos. La cantidad de datos era administrable y relativamente fácil de depurar. Sin embargo, con la explosión de los sistemas de automatización empresarial y el crecimiento exponencial de las aplicaciones web y los datos generados por máquinas, el análisis se torna cada vez más difícil de procesar. De hecho, el 90% de los datos que existen actualmente se generó solo en los últimos dos años. Este aumento del volumen dentro de un período breve es una propiedad del crecimiento exponencial. Este alto volumen de datos es difícil de procesar y analizar dentro de una cantidad de tiempo razonable. En lugar de procesar grandes bases de datos con computadoras centrales grandes y potentes, y almacenarlas en arreglos de discos gigantes (escalabilidad vertical), el procesamiento de datos distribuidos toma el volumen de datos de gran tamaño y lo divide en partes más pequeñas. Estos volúmenes de datos más pequeños se distribuyen en muchas ubicaciones para que los procesen muchas computadoras con procesadores más pequeños. Cada computadora de la arquitectura distribuida analiza su parte del total de datos masivos (escalabilidad horizontal). La mayoría de los sistemas de archivos distribuidos están diseñados para ser invisibles por los programas del cliente. El sistema de archivos distribuidos localiza los archivos y transfiere datos, pero los usuarios no pueden saber que los archivos están distribuidos entre muchos servidores o nodos diferentes. Los usuarios tienen acceso a estos archivos como si fueran locales en sus propias computadoras. Todos los usuarios tienen la misma vista del sistema de archivos y pueden acceder a los datos simultáneamente a otros usuarios. Hadoop se creó para manejar estos volúmenes de datos masivos. El proyecto Hadoop comenzó con dos aspectos: el sistema de archivos distribuidos Hadoop (HDFS), que es un sistema de archivos distribuidos con tolerancia a fallas, y MapReduce, que es una manera distribuida de procesar datos. Hadoop ahora ha evolucionado y se transformó en un ecosistema muy completo de software para la administración de datos masivos. Hadoop es un software de código abierto que permite el procesamiento distribuido de grandes conjuntos de datos que pueden tener terabytes de tamaño y que se almacenan en clústeres de computadoras. Hadoop está diseñado para escalarse desde servidores únicos hasta miles de máquinas, y cada una puede ofrecer computación y almacenamiento local. Para que sea más eficaz, Hadoop se puede instalar y ejecutar en muchas VM. Estas VM pueden funcionar en conjunto en paralelo para procesar y almacenar datos. Hadoop tiene dos características principales que lo han transformado en el estándar de la industria para procesar datos masivos: Escalabilidad: los tamaños de clúster más grandes mejoran el rendimiento y proporcionan capacidades de procesamiento de datos más altas. Con Hadoop el tamaño del clúster puede escalarse de manera simple desde un clúster de cinco nodos hasta un clúster de mil nodos sin aumentar excesivamente la carga administrativa. Tolerancia a fallas: Hadoop replica datos automáticamente a través de clústeres para asegurarse de que no se perderán. Si un disco, nodo o un rack falla, los datos están seguros. ¿Por qué las empresas analizan datos? Cada organización debe volverse más eficiente y más innovadora para mantenerse competitiva y relevante en el mundo digitalizado. IoT es una parte integral para lograr esa eficiencia e innovación. El objetivo de muchas empresas es recopilar y analizar cantidades masivas de nuevos datos sobre el uso de productos y obtener conocimientos valiosos. El análisis de datos permite que las empresas comprendan mejor el impacto de sus productos y servicios, ajusten sus métodos y objetivos, y proporcionen a sus clientes mejores productos más rápido. La capacidad para obtener nuevas perspectivas a partir de los datos aporta valor a la empresa. Para los negocios, los datos son el nuevo petróleo. Como el petróleo crudo, tiene valor, pero si está sin refinar no puede utilizarse con facilidad. El petróleo crudo debe transformarse en gasolina, plástico, sustancias químicas y otras sustancias para que sea un producto valioso. Es lo mismo con los datos. Los datos se deben descomponer y analizar para que tengan valor. Los valores provienen de los dos tipos de datos procesados principales: transaccionales y analíticos. La información transaccional se captura y se procesa a medida que se producen eventos. La información transaccional se utiliza para analizar informes de ventas y planes de fabricación diarios a fin de determinar cuánto inventario transportar. La información analítica permite que se realicen tareas de análisis a nivel gerencial, como determinar si la organización debe instalar una nueva planta de fabricación o contratar personal de ventas adicional. Fuentes de información La fuente de los grandes conjuntos de datos es variada. Además de los datos de los sensores, otros datos se originan a partir de todo lo que se ha analizado, introducido y divulgado en Internet de fuentes tales como las siguientes: Sitios de redes sociales: Facebook, YouTube, eHarmony y Twitter HTTP, páginas web y motores de búsqueda en Internet Datos históricos de archivos públicos y privados Metadatos que se adjuntan a correos electrónicos, imágenes y documentos transmitidos Formularios médicos, formularios de seguros y formularios de impuestos Investigación genómica mediante ADN Los datos recopilados se pueden clasificar como estructurados o no estructurados. Los datos estructurados se crean mediante aplicaciones que utilizan entradas de formato “fijo”, como hojas de cálculo o formularios médicos. Incluso si los datos se consideran estructurados, diferentes aplicaciones crean archivos en distintos formatos que no necesariamente son compatibles unos con otros. Es posible que los datos estructurados se deban manipular en un formato común como CSV. Los archivos de valores separados por comas (CSV) son un tipo de archivo de texto simple que usa comas para separar columnas en una tabla de datos, y el carácter de retorno de párrafo para separar filas. Cada fila es un registro. A pesar de ser comúnmente utilizados para importar y exportar en bases de datos y hojas de cálculo tradicionales, no existe un estándar específico. JSON y XML también son tipos de archivo de texto simple que utilizan un modo estándar para representar registros de datos. Estos formatos de archivo son compatibles con una amplia gama de aplicaciones. La conversión de datos en un formato común es una manera valiosa de combinar datos de diferentes orígenes. Los datos no estructurados se generan en un estilo de “forma libre”, como audio, video, páginas web y tweets. Los datos no estructurados requieren diferentes herramientas para preparar los datos para análisis o procesamiento. Los siguientes son dos ejemplos: Los sitios web se crean para proporcionar datos a los seres humanos, no a las máquinas. Las herramientas que «raspan la red» (web scraping) extraen datos de páginas HTML automáticamente. Esto es similar al rastreador o araña web de un motor de búsqueda. Explora la web para extraer datos y crear bases de datos para responder a las consultas de búsqueda. El software de web scraping puede utilizar el Protocolo de transferencia de hipertexto o un explorador web para acceder a la World Wide Web. Por lo general, el proceso de web scraping es un proceso automatizado que utiliza un bot o un rastreador web para obtener datos. Los datos específicos se recopilan y se copian de la web a una base de datos o una hoja de cálculo. Los datos pueden luego analizarse fácilmente. Muchos proveedores de servicios web importantes como Facebook proporcionan interfaces estandarizadas para recopilar los datos automáticamente mediante interfaces de programación de aplicaciones (API). El enfoque más habitual es usar API RESTful. Las API RESTFul usan HTTP como el protocolo de comunicación y estructura de JSON para codificar los datos. Las páginas web de Internet como Google y Twitter recopilan grandes cantidades de datos estáticos y de series de tiempo. El conocimiento de API para estos sitios permite que los analistas y los ingenieros de datos tengan acceso a las grandes cantidades de datos que se generan constantemente en Internet. Visualización de datos La minería de datos es el proceso que se utiliza para convertir los datos sin procesar en información significativa al detectar patrones y relaciones en los grandes conjuntos de datos. Para ser de valor, los datos sometidos a minería de datos se deben analizar y presentar a los administradores y las personas responsables de tomar decisiones. Existen muchas visualizaciones diferentes que se pueden utilizar para presentar el valor de los datos. La determinación del mejor gráfico a utilizar variará según lo siguiente: Cantidad de variables para mostrar Cantidad de puntos de datos en cada variable Representan los datos una línea de tiempo Los elementos requieren comparaciones Algunos de los tipos más comunes de gráficos son circulares, de líneas, de columnas, de barras y de dispersión. Análisis de datos masivos para el uso eficaz en la empresa Los datos masivos son solo eso: ¡GRANDES! Resultan más útiles si puede analizarlos para obtener valor a partir de ellos. El análisis de datos es el proceso de inspección, limpieza, transformación y creación de modelos de datos para descubrir información útil. El análisis de los datos masivos generalmente requiere herramientas y aplicaciones creadas para este propósito. Estas herramientas de análisis se diseñaron para brindar a las empresas conocimientos valiosos, patrones e información detallada. Tener una estrategia permite que una empresa determine el tipo de análisis requerido y la mejor herramienta para realizar dicho análisis. Una estrategia también ayuda a determinar la manera más eficaz de presentar los resultados para la administración. Las herramientas y aplicaciones varían desde el uso de una hoja de cálculo de Excel o Google Analytics para muestras de datos pequeñas a medianas, hasta las aplicaciones dedicadas a la manipulación y al análisis de conjuntos de datos realmente masivos. Existen muchas herramientas de análisis de datos masivos que una empresa puede seleccionar, por ejemplo: Knime, OpenRefine, Orange y RapidMiner.