Concepto de Big Data y sus Principios Fundamentales
El Big Data es el proceso de recolección de grandes cantidades de datos y su inmediato análisis para encontrar información oculta, patrones recurrentes y nuevas correlaciones, entre otros elementos de valor estratégico.
Principios del Big Data (Las 5 Vs)
A continuación, se presentan los principios sobre los que se sustenta esta tecnología, incluyendo ejemplos de su aplicación:
- Volumen: Se refiere al incremento masivo de los datos fruto de las nuevas tecnologías y la facilidad de generar información digital. El volumen delimita el concepto de datos masivos, ya que estos no pueden almacenarse en un ordenador convencional, requiriendo tecnología específica y distribuida.
- Velocidad: En la toma de decisiones críticas, el tiempo es fundamental. El procesamiento de los datos debe realizarse en el menor tiempo posible, incluso en tiempo real. Se requiere velocidad tanto en el acceso como en la visualización para extraer conclusiones inmediatas.
- Variedad: Caracteriza al Big Data por las distintas tipologías y estructuras de datos procedentes de fuentes diversas. La clasificación tradicional divide los datos en: estructurados, no estructurados y semiestructurados.
- Veracidad: Es vital controlar la integridad de los datos, ya que de ello dependerá el acierto de las decisiones. La fiabilidad de la información recogida implica eliminar cualquier inexactitud o incertidumbre en la recopilación.
- Valor: El propósito de cualquier estrategia de Big Data es convertir la información en conocimiento. Esto se logra a través de la analítica, que facilita la toma de decisiones informadas.
Diferencias entre Datos Estructurados y No Estructurados
Datos No Estructurados
Provienen de información contenida en imágenes, videos, audio, correos electrónicos y documentos diversos (PDF, Word, etc.). No poseen un formato tabular definido.
Datos Estructurados
Se refieren a información organizada en formatos rígidos, como bases de datos relacionales (Oracle, MySQL, SQL Server, Access), hojas de cálculo, ficheros XML, ficheros planos y APIs.
Los Drivers del Big Data
Los principales impulsores o drivers del Big Data son la Automatización, la Monetización y los Consumidores.
1. Consumidores cada vez más sofisticados
El consumidor actual tiene acceso a una oferta masiva de productos. Sin embargo, un 73% en mercados maduros y un 85% en emergentes desisten de una compra si un conocido ha tenido una mala experiencia, lo que resalta la importancia del Social Media.
- Exigen mayor transparencia e información.
- Muestran un perfil más desconfiado.
- Basan sus criterios de decisión en la información de las redes sociales.
2. Automatización
Es la capacidad de cuantificar procesos complejos para modificar la experiencia del cliente mediante políticas de software, procedimientos y sistemas self-service personalizados.
- Escalabilidad: Capacidad para almacenar volúmenes increíbles de datos de forma no manual, similar a los inicios de Google y Yahoo.
- Granularidad: Permite procesar toda la información recibida de forma detallada (por ejemplo, analizar cada tweet individualmente).
- Valor: La automatización permite procesar la información para que su recolección y almacenamiento tengan sentido mediante el análisis.
3. Monetización
La información permite obtener rentabilidad directa. Además del beneficio operativo, los datos pueden venderse a terceros si se aplica correctamente el Data Science. Un ejemplo son las empresas de telecomunicaciones, como Telefónica, que rentabilizan los datos anonimizados de sus usuarios.
Casos de Uso y Estrategia de Implementación
Escenario de Implementación Revolucionaria
Si un cliente (como Mi UCEN) desea iniciar un proyecto de Big Data sin tener conocimiento experto ni soluciones previas de análisis (ni siquiera reportes en Excel), este tipo de implementación se define como Revolucionaria.
Gobierno de Datos
El Gobierno de Datos en un proyecto de Big Data es fundamental porque permite administrar toda la trazabilidad de los datos, desde sus orígenes hasta su utilización y explotación final.
Big Data Analytics
Esta disciplina busca como solución trabajar con millones de datos simultáneamente, disminuyendo la latencia en su explotación para obtener resultados ágiles.
Big Data en Ambientes Cloud
Trabajar en la nube ofrece beneficios clave como:
- Escalabilidad y Elasticidad.
- Baja latencia.
- Facilidad en el despliegue (deployment) de nuevos servicios.
Modelo de Responsabilidad en Cloud
En un modelo donde el cliente no desea administrar la infraestructura, la responsabilidad suele ser compartida (frecuentemente un 50% entre el proveedor y el cliente), aunque en ciertos niveles de servicio puede recaer totalmente en el consumidor según el contrato.
El Ecosistema Hadoop
¿Qué es Hadoop?
Hadoop es un framework que permite guardar y procesar grandes conjuntos de datos de forma paralela y distribuida. Soporta Vertical Scaling, Horizontal Scaling lineal, y procesos tanto en Batch como en tiempo real.
HDFS (Hadoop Distributed File System)
Es un sistema de ficheros distribuido, escalable y portátil escrito en Java. Está diseñado para trabajar con ficheros de gran tamaño. Su característica principal es un tamaño de bloque superior al habitual (64 MB o más) para optimizar los tiempos de acceso en lectura.
MapReduce
Es un modelo de programación para computación distribuida basado en Java. Se divide en dos fases principales:
- Map: Se encarga del mapeo y se aplica en paralelo para cada ítem de entrada.
- Reduce: Realiza el barajado (shuffling) y la reducción de los datos.
Este modelo fue popularizado por el documento “MapReduce: Simplified Data Processing on Large Clusters”.
Herramientas de Ingesta, Almacenamiento y Explotación
Dentro del ecosistema Hadoop, se distinguen diversos elementos según su función:
- Ingesta de Datos: Apache Flume y Apache Sqoop.
- Almacenamiento: Apache Kafka y RabbitMQ (aunque este último es un message broker externo).
- Explotación y Procesamiento: Apache Spark y Apache Storm.
Conceptos de Ingesta de Datos
La Data Ingestion es el proceso de obtención e importación de datos para uso inmediato o almacenamiento. Puede realizarse en tiempo real o en lotes (batch).
Apache Flume
Es un servicio distribuido para mover grandes cantidades de datos, especialmente logs, de forma eficiente. Su arquitectura se basa en flujos de datos en streaming.
- Integración total con Hadoop.
- Ideal para eventos simples y agregación de logs.
- Usa interceptores para filtrado y transformación.
- Soporta canales en memoria (efímeros) y en ficheros (duraderos, usualmente protegidos por RAID o SAN).
Apache Sqoop
Herramienta de línea de comandos diseñada para transferir datos entre bases de datos relacionales (SQL) y Hadoop. Puede importar datos hacia HDFS, Hive o HBase, y exportarlos de vuelta a sistemas como MySQL, Oracle o Postgres en formatos como CSV, Avro o binario.
Apache Kafka
Sistema de intermediación de mensajes basado en el modelo publicador/suscriptor. Es persistente, escalable y tolerante a fallos. Su alta velocidad de lectura y escritura lo hace excelente para comunicaciones en tiempo real.
