Please enable JavaScript.
Coggle requires JavaScript to display documents.
Tecnologías de Big Data - Coggle Diagram
Tecnologías de Big Data
3.4 Visualización
Es una técnica que transforma grandes cantidades de datos en gráficos, mapas, tablas y otros elementos visuales para que sean más fáciles de entender. En lugar de leer miles de números, puedes ver patrones, tendencias y relaciones de forma clara y rápida.
¿Por qué es importante en Big Data?
Big Data genera enormes volúmenes de información.
La visualización ayuda a explorar y explicar esos datos de manera intuitiva.
Permite tomar decisiones más rápidas y acertadas.
Herramientas populares
Tableau
QlikSense
Grafana
D3.js
CartoDB
¿Y qué es el Data Storytelling?
Es contar una historia con los datos. No solo mostrar gráficos, sino explicar qué significan y por qué son importantes. Es como convertir los datos en una narrativa que conecte con quien la ve.
3.3 Análisis
El análisis se concentra al final en dos grandes áreas: inteligencia de negocio, y analítica de negocio
El valor toma la forma del análisis.
Componentes de la inteligencia del negocio:
Tipos de analiticas de negocio:
Comparativas de librerias ML
Tipos de analiticas de negocio:
Principales librerias de Machine Learning:
Un primer enfoque para pensar en las tecnologías de big data es recuperar las 3 V presentadas en el subapartado 1.2. Diferentes problemáticas del dato necesitan diferentes paradigmas, tal y como apuntan Casado y Younas, y como se ilustra en la figura 2.
3.1. Almacenamiento
En las últimas décadas, las bases de datos relacionales han sido la opción de almacenamiento de facto para los sistemas de información. En algunos con- textos con grandes necesidades de almacenamiento y procesamiento, como puede ser la meteorología, se ha trabajado con sistemas combinados de hard- ware y software optimizados para tareas intensivas en el dato, conocidos co- mo high performance computing (HPC). El enfoque de HPC se ha fundamentado principalmente en la escalabilidad vertical.
.
• La nueva tecnología no necesita de HPC para ejecutarse, sino que puede trabajar con redes de ordenadores trabajando de manera combinada con prestaciones de computación menores individualmente pero mayores co- lectivamente.
• La tecnología relacional es incompatible con los datos no estructurados, que cada vez son más relevantes para el negocio.
• La tecnología relacional no es escalable para soportar el volumen de datos en el contexto de big data.
Dentro de NoSQL
1) Key-value store: el almacenamiento se fundamenta en el uso de parejas clave-objeto en las que no hay esquema alguno. Ejemplos: Apache HDFS, Riak, Voldemort, Redis, RocksDB o Amazon DynamoDB.
2) Bases de datos orientadas a columnas: el almacenamiento del dato se realiza por columnas, no por filas. Ejemplos: Apache Hbase, Apache Cassandra, MonetDB, Druid, HP Vertica, SAP IQ, LucidDB, ScyllaDB o Amazon SimpleDB.
3) Bases de datos de grafos: usa nodos y vértices para representar datos. Ejem- plos: Neo4J, HyperGraphDB, ArangoDB, Ontotext GraphDB u OrientDB.
4) Bases de datos orientadas a documentos: el almacenamiento del dato se realiza como si fuera un documento semiestructurado. Ejemplos: MongoDB, CouchDB o MarkLogic.
3.2. Procesamiento
La necesidad de procesar datos no es un aspecto nuevo para las organizaciones. En el pasado se ha abordado usando técnicas de integración de datos, o data integration. Aunque existen muchas técnicas de integración, el procesamiento de big data se fundamenta principalmente en ELT (extract, load, transform). Es decir, se pone foco en guardar el dato en bruto, con el menor número de cambios, y el proceso de transformación se ejecuta en cada una de las bases de datos (sea cual sea su tipología).
• Procesamiento de datos en paralelo: lo que significa que un proceso se divide en múltiples tareas que se ejecutan en paralelo. Tradicionalmente este enfoque se ha realizado con una única máquina con múltiples proce- sadores o núcleos.
• Procesamiento de datos distribuidos: lo que significa que el proceso se divide en múltiples tareas que se ejecutan en un clúster de máquinas co- nectadas en red siguiendo la filosofía «divide y vencerás».
1) Procesamiento en modo batch, o por lotes: el dato se procesa en modo offline. Su latencia puede ir desde minutos hasta horas. El dato se ha almace- nado previamente antes de ser procesado. Apache MapReduce y Spark, este último con mejores prestaciones en término de velocidad, permiten este tipo de procesamiento.
2) Procesamiento en modo real time, o en tiempo real: el dato se procesa en modo online. Su latencia está en el rango desde menos de un segundo has- ta el minuto. Por ello, el dato se procesa en memoria en el momento de su captura antes de almacenarlo. Hay dos tipos: procesamiento en flujo (stream), en el que el dato llega de forma continua, y procesamiento por intervalos o eventos (event). Apache Storm, Apache Flink y Spark permiten este tipo de procesamiento.
.
• Si se necesita S y C, no es posible procesar grandes volúmenes de datos porque retrasan el procesamiento.
• Si se necesita C y V, no es posible trabajar a una gran velocidad porque el procesamiento a gran velocidad requiere menores cantidades de datos.
• Si se necesita V y C, se consideran muestras (en lugar de trabajar con todo el conjunto de datos), lo que reducirá la consistencia
• Almacenamiento: permitir el almacenamiento del dato conforme a las necesidades de negocio.
• Procesamiento: permitir la captura, la transformación y el movimiento del dato conforme a las necesidades de negocio.
• Análisis: permitir la generación de valor para el negocio a partir del dato.
• Visualización: permitir la presentación y comunicación de los resultados de acuerdo con las necesidades de negocio.
3.5 Sistemas Híbridos
Arquitecturas de Procesamiento de Datos
Existen dos necesidades principales en
big data: procesamiento batch (lotes) y procesamiento streaming (flujo en tiempo real).
Una organización puede requerir ambos enfoques.
Arquitectura Lambda (Nathan Marz):
Diseñada para cubrir batch y streaming.
Componentes principales:
Capa batch: gestiona datos maestros y precalcula vistas.
Capa de velocidad (streaming): procesa datos recientes y actualizaciones rápidas.
Capa de distribución: indexa vistas batch para consultas con baja latencia.
Resultado de consultas: combinación de datos en reposo y en movimiento.
Tecnologías: Apache Storm, Apache Samza, Kafka, etc.
Ventaja: cubre ambos enfoques (lotes y flujo).
Desventaja: mayor complejidad en el diseño y mantenimiento.
Arquitectura Kappa (Jay Kreps) :
Basada en streaming; considera batch como un caso especial de streaming.
Funcionalidades:
Procesar datos en flujo y datos almacenados.
Gestionar entrada/salida de datos (históricos y en tiempo real).
Simplificación de componentes.
Tecnologías: Apache Flink, Kafka, Samza, Spark Streaming.
Ventaja: menor complejidad de mantenimiento, tendencia a reemplazar Lambda.
Ejemplos de uso:
(fraude en finanzas, energía o retail):
Batch: análisis forense de transacciones históricas → detectar patrones de fraude.
Streaming: detección en tiempo real de patrones en transacciones → velocidad de respuesta.