Reseña del libro las bases de Big Data

Introducción

Las bases de Big Data, publicado en 2015, está escrito por Rafael Caballero Roldán y Enrique Martín Martín, ambos profesores de informática de la Universidad Complutense de Madrid, especializados en Big Data y Data Science. Este breve libro (apenas tiene 110 páginas) nos cuenta a que hace referencia el concepto “big data” y nos describe el funcionamiento de ciertas herramientas informáticas ideadas para trabajar en entornos de datos masivos.

Así mismo, el libro nos aporta un contexto, puesto que nos narra la historia de la gestión de datos. También nos detalla algunos ejemplos de grandes empresas que utilizan soluciones big data y nos hace un pronóstico de la nueva revolución tecnológica que, en mi opinión, será “el internet de las cosas”.

Seguidamente trataré de hacer un resumen de los puntos tratados en la obra que más me han llamado la atención.

¿Qué es Big Data?

Big Data son lo conjuntos de datos masivos que por su volumen, por su variedad y por su velocidad de generación las aplicaciones informáticas tradicionales de tratamiento de datos son insuficientes para trabajar con ellos.

Un poco de historia

El desarrollo de la informática permitió el almacenamiento de importantes volúmenes de datos en lo que llamamos bases de datos. La invención del sistema de bases de datos relacionales por parte de Edgar F. Codd supuso una revolución en la forma de almacenar la información ya que permitió una mayor seguridad y flexibilidad en el almacenamiento y tratamiento de los datos. Este sistema consiste en guardar los datos atomizados, es decir la unidad más pequeña de información que no se puede dividir, en diferentes tablas y relacionarlas entre sí para extraer la información. El sistema que se ideó para extraer la información a partir de consultas se llama SQL (Structured Query Language; en español lenguaje de consulta estructurada).

Con el paso del tiempo la tecnología fue avanzando y llegó internet, los teléfonos móviles y los sensores inalámbricos que permiten recopilar y transmitir datos. Todo esto llevo a  la aparición de volúmenes de datos inmensos y las bases de datos relaciones se encontraron con que no tenían ni la capacidad ni la flexibilidad para trabajar en este nuevo entorno. Para encontrar una solución ha llegado una nueva generación de bases de datos que rompen con el modelo anterior (en especial con el principio de atomicidad de los datos) y se hacen llamar bases de datos no relacionales o NoSQL.

Tipos de bases de datos NoSQL

Hoy en día no se ha escogido un modelo estándar de base de datos no relacional y, en consecuencia, encontramos de diferentes tipos. Seguidamente enumeramos las clases más destacadas:

  1. Bases de datos orientadas a documento. En este tipo de base de datos cada fila tiene un número indeterminado de información, es decir, cada registro almacena un documento diferente que puede un único dato o muchos de ellos. Mongo DB es un ejemplo.
  2. Bases de datos clave-valor. En este tipo de base de datos cada registro consta de dos campos: clave y valor. El campo clave tiene un formato definido mientras que el campo valor puede almacenar cualquier tipo de dato (por ejemplo un documento, una dirección, una foto, un video, etc.). Un ejemplo es Redis
  3. Bases de datos orientadas a columna. En este tipo de base de datos se agrupan las columnas con datos relacionados. La información se distribuye en familias de columnas y se accede a ellas a través de un campo clave. Un ejemplo es Cassandra
  4. Bases de datos orientadas a grafo. En este tipo de base de datos se representa la información como si fuese un grado. Cada nodo es un dato o serie de datos atomizados y las relaciones entre nodos (o aristas) genera información adicional. Un ejemplo es Neo4j

Nosql

¿Cómo funcionan algunas soluciones de gestión de datos NoSQL?

Hadoop

Hadoop es un ecosistema donde conviven distintos componentes informáticos que colaboran para almacenar y procesar Big Data. El núcleo de Hadoop lo forman el sistema de ficheros distribuido HDFS y el modelo de procesamiento de datos Map Reduce.

  • HDFS es un sistema de distribución de archivos dentro de una red de computadoras o clúster. La estrategia que sigue HDFS para ganar rapidez y seguridad es dividir y replicar. Por un lado, divide cada fichero en fragmentos de tamaño manejable y, por otro lado, almacena para cada fragmento varias copias en distintos equipos.
  • Map Reduce es el método que utiliza Hadoop para tratar cantidades masivas de datos distribuidos con HDFS. Este método sigue la filosofía de llevar los cálculos hacia donde están los datos. Sigue los siguientes pasos:
    1. Se localizan el equipo donde están los datos a tratar
    2. Se envía el programa Map que cataloga todas las variables y asigna parejas.
    3. Se agrupan las parejas similares
    4. Se ejecuta el programa Reduce que transforma el listado de parejas en valores.
    5. Se genera un fichero de salida con el resultado que es distribuido con HDFS.

La combinación de HDFS y MapReduce sirve para aplicar algoritmos susceptibles de ser tratados con la computación paralela en grandes colecciones de datos. Algoritmos que sirven para aplicar conteo de palabras, operaciones matriciales y operaciones de consulta de bases de datos relacionales.

La computación paralela sigue la filosofía de dividir un gran cálculo en multitud de cálculos sencillos y después distribuirlos en diferentes equipos para que estos vayan resolviéndolos simultáneamente.

MongoDB

MongoDB se trata de una base de datos NoSQL orientada a documento que permite almacenar grandes cantidades de datos. Lo particular de MongoDB es que ofrece un esquema de almacenamiento de datos muy flexible puesto que no exige al usuario una valoración detallada de qué valores va almacenar. El único requisito que exige MongoDB es que la información sea introducida en el lenguaje de programación JSON. Como a la hora de hacer las consultas se utiliza el mismo lenguaje, la ejecución será más rápida puesto que todo seguirá la misma estructura. Las ventajas de MongoDB son la flexibilidad y la rapidez y, como desventaja, la heterogeneidad de los datos que dificulta la consistencia de los mismos.

El futuro: internet de las cosas

Hablamos de “internet de las cosas” a aquellos sensores y aparatos inteligentes de todo tipo que pueden conectarse entre sí o a internet, y que incluso pueden tomar decisiones según los datos recopilados.

En los últimos años este concepto se está haciendo cada vez más popular. Esto es debido a que la bajada de precios y la reducción de tamaño de los sensores han permitido la introducción de sensores en todos los hogares e industrias. Todo ello genera un gran volumen de datos de todo tipo que deben ser procesados de forma rápida. Frente a este entorno las tecnologías preparadas para trabajar con Big Data ganan importancia.

Conclusiones

Como hemos podido comprobar, el libro “las bases de Big Data” nos lleva, cual cuento de navidad dickensiano, por el pasado, el presente y el futuro del Big Data. La popularidad merecida que ha ganado este concepto tecnológico no nos debe hacer olvidar que las tecnologías asociadas a la gestión de datos masivos no son la solución a todo y que, a su vez, presenta importantes retos a superar. Seguidamente enumeraré alguno de ellos:

  • La implantación de herramientas de gestión de datos masivos en una organización supone un coste económico y de formación. Por eso, antes de nada, la organización debe reflexionar si realmente le sale a cuenta implementar estas soluciones. Por ejemplo, para una empresa pequeña o mediana que no tenga que gestionar volúmenes de datos masivos le será más barato y eficiente optar por una base de datos relacionales bien diseñada.
  • Seguridad de los datos. Cuanto mayor es el volumen de los datos que se generan mayor es la dificultad en mantener su privacidad. Para poder almacenar sus grandes colecciones de datos cada vez más empresas se decantan por contratar servicios en “la nube”. Esto ha supuesto que la información deje de estar ubicada en equipos propiedad de las empresas para estar en “data centers” de grandes corporaciones como Google o Amazon.
  • Capacidad para extraer información relevante. Detrás de tanta información generada debe haber una persona que extraiga la información relevante, la interprete y saque conclusiones acertadas. A este perfil profesional se le llama Data Scientist o Data Analyst.

Con todas sus ventajas e inconvenientes cabe decir que las tecnologías Big Data no sólo son el futuro, sino que son el presente y, en mi opinión, están gradualmente transformando la sociedad en la que vivimos.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s