Saltar a contenido

Big Data

Aunque parece que todo el mundo debe trabajar con cuantos más datos mejor, no todo es Big Data en el mundo tecnológico.

Datos y más datos
Datos y más datos

Esta claro que los datos son el petroleo del siglo XX, tal como dijo Clive Humby en el 2006, y que se puede obtener mucho valor si almacenamos y sabemos extraer información precisa de "nuestros" datos. Sin embargo, ya en la década del 2020, los datos per se no son suficiente si no que debemos conocerlos y cuidarlos.

Pero el adjetivo Big implica cantidades ingentes, dicho de otro modo, cantidades de datos que una de nuestras máquinas no puede gestionar y necesita de la computación distribuida y plataformas como el cloud para su almacenamiento y gestión. Es probable que con soluciones de Small Data podamos cubrir gran parte de los problemas que requieren nuestra industria más cercana. Eso sí, muchas de las técnicas y destrezas asociadas a la ingeniería de datos no son únicas de grandes volúmenes de datos con arquitecturas distribuidas, sino que, podemos llevárnoslas a nuestros desarrollos a menor escala para automatizar y poner los datos por delante de nuestras empresas y aplicaciones.

Pero antes de entrar en harina, retrocedamos en el tiempo.

Hablemos de V

V fue un fenómeno en los 80 como serie de ciencia ficción, pero relacionado con el Big Data, dependiendo de la literatura, tenemos las 3V del Big Data, las 5V, las 7V...

En los inicios, para saber si hablábamos o no de Big Data, nos teníamos que preguntar si cumplían con las 3V:

  • Variedad: en relación a las fuentes, formas y tipos. Por ejemplo, pueden ser:estructurados, como tablas de una base de datos relacional o ficheros de texto o semiestructurados como los documentos JSON. Incluso almacenar datos no estructurados como correos electrónicos, imágenes o audios.
  • Volumen: Entendida como la cantidad de datos procesados y almacenados. A día de hoy probablemente superior al orden de TB de datos y que para su procesamiento, superan la memoria RAM de nuestros sistemas.
  • Velocidad: el tratamiento que realizamos sobre los datos, en ocasiones cercano al tiempo real o con unos tiempos de recolección, procesamiento y almacenamiento finitos y claramente definidos.

Luego se añadieron un par más, haciendo un total de 5V:

  • Valor: "Lo que importa, son los datos importantes", los que aportan valor, transformando datos en información, y a su vez, en conocimiento que facilita la toma de decisiones.
  • Veracidad: Debemos asegurar que los datos que tenemos son reales y no contienen datos erróneos, es decir, que son fiables. Se dedica un esfuerzo importante en explorar y validar los datos para que la analítica realizada sen veraz.

Y por último, otras dos hasta llegar a las 7V:

  • Viabilidad: Es necesario saber la capacidad que tiene una empresa para realizar un uso eficaz de los datos, cuestionarse qué y cuántos datos se necesitan para predecir los resultados más interesantes para la empresa.
  • Visualización: Necesitamos poder representar los datos, ya sea de manera visual mediante gráficos o codificados en indicadores (KPI) para hacer que sean legibles y accesibles.
Las 7 V del Big Data
Las 7 V del Big Data

Claramente, para los departamentos de marketing, Big Data se escribe con V.

Hablemos de analíticas

Mientras que las aplicaciones Big Data recogen información desde múltiples fuentes de entrada, el concepto de inteligencia de negocio (business intelligence) se centra en el uso que hace la empresa de dichos datos, es decir, coge los datos y los transforma en conocimiento para la ayuda en la toma de decisiones en base a los datos analizados.

Las herramientas de Business Intelligence (BI) son aplicaciones de soporte de decisiones que permiten en tiempo real, acceso interactivo, análisis y manipulación de información crítica y así ser capaces de generar conocimiento mediante el análisis de la información ya almacenada, es decir, realizando analítica descriptiva (¿Qué sucedió?) y diagnóstica (¿Por qué sucedió?).

Con la ayuda del Big Data y la IA, podemos afrontar analíticas más avanzadas, como son la analítica predictiva (¿Qué pasará?) y prescriptiva (¿Cómo podemos prevenir? ¿Qué debería suceder?) para establecer tendencias, averiguar por qué suceden las cosas y hacer una estimación de cómo se desarrollarán las cosas en el futuro.

La ciencia de datos

La ciencia de datos incluye una serie de métodos para analizar tanto pequeños conjuntos de datos como cantidades enormes. Aunque no exista una proceso claramente definidos, podemos identificar los siguientes pasos:

  1. Establecer el objetivo de la investigación: todas las partes interesadas entienden el qué, el cómo y el por qué del proyecto y se crea un project charter o acta de constitución del proyecto.
  2. Recuperación de datos: búsqueda de los datos, ya sean internos o externos a la empresa. El resultado son datos en bruto que seguramente habrá que limpiar y transformar antes de poder utilizarlos.
  3. Preparación de los datos: necesitamos transformar los datos para que sean utilizables por los modelos, detectando y corrigiendo los diferentes tipos de errores, combinando datos de diversas fuentes.
  4. Exploración de datos, para obtener un conocimiento profundo de los datos, buscando patrones, correlaciones o desviaciones, normalmente, mediante técnicas visualizar y descriptivas
  5. Modelado: creación de modelos, en ocasiones basados en IA, para obtener la información o realizar las predicciones indicadas en el acta de constitución del proyecto.
  6. Presentación y automatización: Con la presentación de los resultados obtenidos y su comprobación, es probable que se entre en un ciclo iterativo que provoque volver al paso 2 con datos nuevos y requiera automatizar todos el proceso.

Al final estos pasos se trasladan al ciclo de vida del dato que estudiaremos en la siguiente sesión.

Almacenando los datos

Dentro del ecosistema de los datos, en sus diferentes etapas, y de manera consistente es necesario utilizar diferentes sistemas de almacenamiento. Además de las conocidas bases de datos relacionales, ya sea MariaDB, Postgres u Oracle, se utilizan sistemas NoSQL como MongoDB, Redis o Cassandra, o incluso bases de datos para consultas como ElasticSearch.

Aviso a navegantes

El campo del Big Data es enorme, con una cantidad de herramientas y tecnologías que es imposible dominarlas todas. Dicho esto, a lo largo de las diferentes sesiones iremos destacando y trabajando aquellas que nos aportan una visión más completa y tienen una alta aceptación en el mercado.

Data Warehouse

Las empresas que han trabajado con datos en los últimos años, normalmente, centralizaban toda su analítica en un Data Warehouse, el cual integra todos los datos de los que dispone la empresa para después aplicar inteligencia de negocio y extraer información, etc... Es decir, es la centralización de todos los datos en una misma base de datos OLAP (online analytical processing) cuyo objetivo es obtener valor contrastado para la toma de decisiones basada en datos históricos.

Es fundamental tener en cuenta que un data warehouse sólo admite datos estructurados y esquemas bien definidos, soportando un enfoque schema-on-write que sigue un esquema predefinido para los datos, los cuales obtiene de múltiples fuentes.

Sus principales funciones son:

  • Extracción de datos
  • Limpieza (cleansing) de datos
  • Transformación de datos
  • Carga / Recarga de los datos

Los datos de los almacenes de datos son datos estructurados y procesados que resultan de procesos ETL y pueden aprovecharse mediante consultas y herramientas de minería de datos.

Componentes de un datawarehouse
Componentes de un datawarehouse

Los datos dentro de un data warehouse son de sólo lectura, ya que las operaciones CRUD se realizan en los orígenes, dentro de sistemas OLTP (online transactional processing). Para ello, se realizan procesos batch para permitir la analítica.

Data Lake

Con la llegada del Big Data y la necesidad de almacenar muchos más datos y muchos de ellos sin una estructura clara, surge un nuevo enfoque conocido como Data Lake o lago de datos. En estos sistema, se guarda el dato en crudo (archivos JSON, imágenes, audios, vídeos, textos de correos electrónicos, documentos PDF,...), y sobre estos datos, se realizan diversas transformaciones y se vuelven a almacenar en el lago de datos.

Así pues, es un tipo de repositorio que almacena conjuntos grandes y diversos de datos sin procesar en su formato original y que mantiene una perspectiva general de éstos.

Lago de datos
Lago de datos

Para ello, necesitamos sistemas de almacenamiento distribuido que sean fácilmente escalables, dado que estos lagos no paran de crecer. La solución on-premise de HDFS basada en Hadoop está dejando paso a las plataformas cloud con sistemas como AWS S3 a Azure Blog Storage. Estas soluciones están facilitando la creación de lagos de datos en contraposición de los data warehouse que venían reinando dentro del Business Intelligence.

Si unimos el concepto de data lake y el de data warehouse obtenemos un data lakehouse, con implementaciones como Databricks o Snowflake como puntas de lanza de la explotación de datos a gran escala.

Roles

Dentro del mercado de Big Data trabajan diferentes profesionales en equipos multidisciplinares. Entre las diferentes personas, podemos destacar los siguiente roles:

  • Analista de datos: Transforma los datos en información. Perfil técnico que conoce el negocio. Realiza un análisis más tradicional de los datos, los transforma y los interpreta con el objetivo de dar respuesta a los retos propuestos desde la inteligencia de negocio, normalmente mediante SQL y alguna herramienta de visualización de datos.

  • Científico de datos: A priori, aunque tuvo su ola como la profesión más sexy y durante un tiempo la más deseada, a día de hoy es un perfil demandado por su escasez, dada su complejidad. Su función es similar a la del Analista de datos pero su rol se centra en la aplicación de modelos de IA sobre los datos disponibles en la empresa. Son perfiles con una base matemática y estadística alta, que conoce los diferentes modelos de IA disponibles y tiene destreza para trabajar con los datos y extraer información y convertirla en conocimiento.

  • Ingeniero de datos: Es el perfil más técnico y en el que cuadra más con nuestro alumnado de FP. Profesional enfocado en el diseño, desarrollo y mantenimiento de los procesos necesarios para la extracción, carga, almacenamiento y procesamiento de los datos (ETL). Debe tener conocimiento sobre los conceptos de ingeniería del software, cloud y los diferentes sistemas de almacenamiento. Este perfil y su trabajo lo estudiaremos en profundidad en la sesión sobre Ingeniería de datos.

  • Arquitecto de datos: Define la infraestructura necesaria para la gestión de grandes volúmenes de datos que no pueden ser tratados de manera convencional. Se encarga de definir la estrategia que se aplicará con respecto a la escalabilidad, gobernanza, linaje y seguridad de los datos. En una proxima sesión, estudiaremos las diferentes Arquitecturas Big Data.

Un arquitecto de datos define las herramientas y la arquitectura en la que se almacenarían los datos, mientras que un ingeniero de datos utiliza esta arquitectura para almacenar y transformar los datos para que a continuación, el científico de datos extraiga conocimiento de ellos.

Casos de Uso

Si nos centramos en qué uso se le da hoy en día al Big Data, por citar algunos, sería:

  • La industria 4.0 se basa en gran medida en almacenar grandes cantidades de datos provenientes de sensores IoT.
  • Las operadores de streaming con sus motores de recomendaciones y trazabilidad de la navegación del usuario se basan en guardar todos los eventos generados al navegar y utilizar sus servicios.
  • Las aplicaciones de mapas que nos recomiendan diferentes rutas en base al tráfico actual lo hacen a partir de los datos de todos los conductores, tanto del histórico como de los presentes.
  • Las redes sociales son, en parte, la cuna del Big Data y fuente de los últimos modelos generativos que requieren de mucha información para su entrenamiento. Además, como fuente de publicidad, es muy común realizar un análisis de sentimiento de los mensajes de los usuarios a modo de termómetro del lanzamiento de un producto o sondeo de la población.

Referencias

  • Introducing Data Science: Big data, machine learning, and more, using Python tools - Davy Cielen, Arno D. B. Meysman, and Mohamed Ali

Actividades

  1. (RABDA.1 / CEBDA.1a / 1p) Contesta a las siguientes preguntas justificando tus respuestas:

    1. Desde tu punto de vista, ¿Qué V de las relacionadas con Big Data consideras más importante?
    2. En tu día a día, ya sea desde una perspectiva personal o profesional, ¿Qué herramienta / servicio / tecnología basada en Big Data hace tu vida más fácil y ya no podrías vivir sin él/ella?
  2. (RABDA.1 / CEBDA.1a / 1p) A partir del mapa de herramientas que muestra Matt Truck con su landscape en https://mad.firstmark.com/, localiza las siguientes herramientas/tecnologías, y anota a qué categoría pertenecen y el nombre de otra herramienta de su/s misma/s categoría:

    • AWS S3
    • Databricks
    • Microsoft Power BI
    • Apache Kafka
    • Apache Airflow
    • MongoDB

    Te puede resultar más cómodo buscar en https://mad.firstmark.com/card.