Tecnología
Contenido
Existen muchísimas herramientas para el manejo de los macrodatos. Algunos ejemplos incluyen Apache_Hadoop, NoSQL, Apache_Cassandra, inteligencia empresarial, aprendizaje automático y MapReduce. Estas herramientas tratan con algunos de los tres tipos de macrodatos:[45].
• - Datos estructurados: 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 los almacenes de datos.
• - Datos no estructurados: 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, correos electrónicos o documentos de texto.
• - Datos semiestructurados: 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 semiestructurados[46] que describen los objetos y las relaciones entre ellos, y pueden acabar siendo aceptados por convención. Como ejemplos tenemos los archivos tipo hojas de cálculo, HTML, XML o JSON.
Un informe de 2011 del McKinsey Global Institute") caracteriza los componentes principales y el ecosistema de macrodatos de la siguiente manera:[47].
• - Técnicas para analizar datos, como pruebas A / B, aprendizaje automático y procesamiento del lenguaje natural.
• - Grandes tecnologías de datos, como inteligencia de negocios, computación en la nube y bases de datos.
• - Visualización, como tablas, gráficos y otras visualizaciones de los datos.
Los macrodatos multidimensionales también se pueden representar como cubos de datos o, matemáticamente, tensores. Los sistemas de bases de datos Array se han propuesto proporcionar almacenamiento y soporte de consultas de alto nivel en este tipo de datos. Las tecnologías adicionales que se aplican a los macrodatos incluyen un cálculo basado en tensor eficiente,[48] como el aprendizaje de subespacio multilineal,[49] bases de datos de procesamiento paralelo masivo (MPP), aplicaciones basadas en búsqueda, extracción de datos,[50] sistemas de archivos distribuidos"), bases de datos distribuidas, nube e infraestructura basada en HPC(aplicaciones, almacenamiento y recursos informáticos)[51] e Internet. A pesar de que se han desarrollado muchos enfoques y tecnologías, sigue siendo difícil llevar a cabo el aprendizaje automático con grandes datos.[52].
Algunas bases de datos relacionales de MPP tienen la capacidad de almacenar y administrar petabytes de datos. Implícita es la capacidad de cargar, supervisar, realizar copias de seguridad y optimizar el uso de las tablas de datos de gran tamaño en el RDBMS.[53].
El programa de Análisis Topológico de Datos") de DARPA busca la estructura fundamental de los conjuntos de datos masivos y en 2008 la tecnología se hizo pública con el lanzamiento de una compañía llamada Ayasdi.[54].
Los profesionales de los procesos de análisis de macrodatos generalmente son hostiles al almacenamiento compartido más lento,[55] prefieren el almacenamiento de conexión directa (DAS) en sus diversas formas, desde unidad de estado sólido (SSD) hasta disco SATA de gran capacidad enterrado dentro de nodos de procesamiento paralelo. La percepción de las arquitecturas de almacenamiento compartidas, la red de área de almacenamiento (SAN) y el almacenamiento conectado a la red (NAS), es que son relativamente lentas, complejas y costosas. Estas cualidades no son consistentes con los sistemas de análisis de datos grandes que prosperan en el rendimiento del sistema, infraestructura de productos básicos y bajo costo.
La entrega de información real o casi en tiempo real es una de las características definitorias del análisis de macrodatos. Por lo tanto, se evita la latencia siempre que sea posible. Los datos en la memoria son buenos; los datos en el disco giratorio en el otro extremo de una conexión FC SAN no lo son. El costo de una SAN en la escala necesaria para las aplicaciones analíticas es mucho mayor que otras técnicas de almacenamiento.
Hay ventajas y desventajas para el almacenamiento compartido en el análisis de macrodatos, pero los practicantes de análisis de macrodatos a partir de 2011 no lo favorecieron.
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 ser humano llegó a la Luna,[56] 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:[57].
• - Generados por las propias personas. El hecho de enviar correos electrónicos o mensajes por WhatsApp, publicar un estado en Facebook, publicar relaciones laborales en Linkedin, 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 correos electrónicos, 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.[58] 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.
• - Obtenidas a partir de transacciones. La facturación, tarjetas de fidelización, las llamadas telefónicas, las conexiones torres de telefonía, los accesos a wifis públicas, el pago con tarjetas de crédito o las transacciones entre cuentas bancarias generan información que tratada puede ser datos relevantes. Por ejemplo transacciones bancarias: Lo que el usuario conoce como un ingreso de X euros, el sistema lo capturará como una acción llevada a cabo en una fecha y momento determinado, en un lugar concreto, entre unos usuarios registrados, y con ciertos metadatos.
• - Mercadotecnia electrónica y web. Se genera una gran cantidad de datos cuando se navega 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 seguimiento utilizadas en su mayoría con fines de mercadotecnia 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.
• - Obtenidos a partir de las interacciones máquina a máquina (M2M). Son datos obtenidos a partir de la recogida de métricas obtenidas desde 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 (wifi, Bluetooth, RFID, etc.) ha revolucionado el mundo de los sensores. Algunos ejemplos son los GPS en la automoción, los sensores de signos vitales (muy útil para seguros de vida), pulseras en los festivales,[59] monitorizadores del funcionamiento y conducción de autoḿoviles (se obtiene información muy útil para las aseguradoras),[60] los smartphone (son sensores de localización).
Transformación
Una vez encontradas las fuentes de los datos necesarios, muy posiblemente dispongamos de un sinfín de tablas de origen que no estarán relacionadas. El siguiente objetivo es hacer que los datos se recojan en un mismo lugar y darles un formato adecuado.
Aquí entran en juego las plataformas extraer, transformar y cargar (ETL). 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, etc.) y finalmente cargar los datos en la base de datos o almacén de datos especificada.[62] 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 (no solo SQL) y son sistemas de almacenamiento que no cumplen con el esquema entidad-relación.[63] 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 mapas o diccionarios de datos, donde se accede al dato a partir de una clave única.[64] Los valores (datos) son aislados e independientes entre ellos, y no son interpretados por el sistema. Pueden ser variables "Variable (programación)") 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.[65].
Son útiles para operaciones simples basadas en las claves. Un ejemplo es el aumento de velocidad de carga de un sitio web que puede 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. Apache Cassandra es la tecnología de almacenamiento clave-valor más reconocida por los usuarios.[66].
• - 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 el anterior no se requería una estructura de datos concreta, en este caso guardamos datos semiestructurados.[66] Estos datos pasan a llamarse documentos, y pueden estar formateados en XML, JSON, Binary JSON o el que acepte la misma base de datos.
CouchDB o MongoDB[66] 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,[66] algo similar al modelo relacional. Su mayor uso se contempla en casos de relacionar grandes cantidades de datos que pueden ser muy variables. Por ejemplo, los nodos "Nodo (informática)") pueden contener objetos "Objeto (programación)"), variables "Variable (programación)") y atributos "Atributo (informática)") diferentes en unos y otros. Las operaciones JOIN se sustituyen por recorridos a través del grafo, y se guarda una lista de adyacencias entre los nodos.[64] Encontramos un ejemplo en las redes sociales: en Facebook cada nodo se considera un usuario, que puede tener aristas "Arista (teoría de grafos)") de amistad con otros usuarios, o aristas "Arista (teoría de grafos)") de publicación con nodos "Nodo (informática)") de contenidos. Soluciones como Neo4J") y GraphDB[66] son las más conocidas dentro de las bases de datos en grafo.
Análisis de datos
El análisis permite mirar los datos y explicar lo que está pasando. 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.[67] 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 comercios electrónicos.
• - 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 aprendizaje automático con almacenamiento en bases de datos.[68] 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.[68] 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 clusterización.[69].
• - Análisis de texto (text analytics): gran parte de los datos generados por las personas son textos, como correos, búsquedas web o contenidos. Esta metodología permite extraer información de estos datos y así modelar temas y asuntos o predecir palabras.[70].
• - Análisis topológico de datos (TDA): tiene como objetivo el análisis de la estructura geométrica y topológica de los datos. Desarrollada desde los años 90 haciendo uso de herramientas de la topología algebraica como la homología persistente.[71] Ha demostrado ser útil para la clusterización de algunos datos y para el análisis de datos oncológicos, siendo capaz de predecir tratamientos de respuesta y generar diagnósticos.[72].
Visualización de datos
Tal y como el Instituto Nacional de Estadística "Instituto Nacional de Estadística (España)") dice en sus tutoriales, «una imagen vale más que mil palabras o que mil datos».[73] La mente agradece mucho más una presentación bien estructurada de resultados estadísticos en gráficos o mapas en vez de en tablas con números y conclusiones. En los macrodatos 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?».
Mondrian "Mondrian (informática)")[74] 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. En los últimos años se han generalizado otras plataformas como Tableau, Power BI y Qlik.[75].
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.[76].