Big Data

En el mundo en el que vivimos, en el que las modas y las burbujas de todo tipo marcan el ritmo de las cosas, resulta difícil no ver cómo los términos tecnológicos son, tal y como decía Rudyard Kipling en su famoso poema, "tergiversados por bribones para hacer una trampa para los necios". Y el término "Big Data" es uno de los más usados hoy día, frecuentemente con significados dispares y, a menudo, simplemente erróneos.

Es cierto que en el área del análisis de datos resulta difícil encontrar definiciones que sean perdurables en el tiempo y se acomoden a las preferencias de todos los profesionales del área, pero el autor de estas líneas ha llegado a sentarse delante de responsables de tecnología de diversas empresas y escuchado el término "Big Data" como equivalente a "Business Intelligence" o a "Minería de datos". Y no es ni una cosa ni otra. Y de personas más alejadas del mundo de la tecnología es también frecuente oír el término con el significado de "Redes Sociales", "Internet" o "Apps" (aplicaciones normalmente para dispositivos móviles). O incluso con el significado de "Inteligencia Artificial" (aun cuando se le dé otro nombre, como "robótica" o semejante).

Big Data

Cada día se impone más la interpretación según la cual "Big Data" hace referencia a la cantidad ingente de datos que se generan a nivel global, ya sea provenientes de las Apps que utilizamos, de transacciones bancarias, de uso de redes sociales, del uso que hacemos de nuestro teléfono móvil... datos de los que podemos extraer valiosa información al respecto de nuestros hábitos de consumo que deberían permitirnos mejorar nuestro nivel de vida. Aun así, Big Data significa "Datos Masivos" o "Grandes Datos". Es un término sumamente subjetivo que, en sentido estricto, no hace referencia más que al tamaño de los datos involucrados en un proceso, de forma que cuando éstos son "muchos", hablamos de Big Data (en ese caso también podemos decir que nos encontramos en un "escenario de Big Data" o "de Datos Masivos"). ¿Y cuándo podemos decir que estamos trabajando con "muchos" datos?: Cuando su proceso (tanto si estamos hablando de análisis de datos como de cualquier otro) convierta las soluciones tradicionales de análisis en insuficientes. Y por "solución tradicional" aquí estamos refiriéndonos al uso de un ordenador con un procesador (o multiprocesador), una memoria y un disco duro. Es decir, cuando es posible analizar un conjunto de datos usando un único ordenador -y el análisis se realiza en los tiempos adecuados- no deberíamos hablar de datos masivos, por mucho que nos guste decir que "en mi empresa hacemos Big Data". Por el contrario, si esa solución tradicional no es suficiente, nos encontraremos, tal y como se ha comentado, en un escenario de datos masivos y para su análisis será necesario recurrir a lo que se denomina "computación distribuida", lo que implica el uso de varios ordenadores (en ocasiones incluso miles de ellos) entre los que se reparte el proceso. Lógicamente este reparto exige que los ordenadores estén coordinados entre sí, lo que obliga al uso de software especializado (en análisis de datos el más utilizado es Apache Hadoop). Por otro lado, la subjetividad del término "Big Data" implica que ciertos datos podrán ser considerados "grandes" o no en función de la tecnología disponible: lo que hoy consideramos Big Data probablemente no lo sea en pocos años. O, dicho con otras palabras, si dispusiéramos de un ordenador con una capacidad de cálculo infinita, no existiría el Big Data y todos los escenarios de análisis serían considerados tradicionales.

Aun cuando el uso del término Big Data está, como se ha comentado, muy de moda, es importante destacar que, si damos por buena la definición anterior, trabajar en escenarios Big Data o no, es (casi) independiente del tipo de proceso que estemos ejecutando: la única diferencia sería la tecnología sobre la que nos basamos para ejecutarlos. Sí es cierto que hay algoritmos de aprendizaje automático utilizados en minería de datos que resultan difícilmente distribuibles entre varios ordenadores (en algunos casos es sencillamente imposible), pero son excepciones que no deben desviar la atención de lo realmente importante: la computación distribuida no es más que un recurso al que recurrimos para satisfacer una necesidad de capacidad de computación impuesta por unas exigencias mayores de lo habitual, pero esto es, desde un punto de vista conceptual, irrelevante en el análisis.

Etiquetas