LA MEJOR definición de Big Data para Latinoamérica

Publicado el viernes, 15 de junio de 2018

Publicado en LinkedIn

Es fácil olvidar lo que la tecnología costó en el pasado. Por ejemplo un disco duro de 5 MB (¡MB!) de Apple costaba USD 3.500,- en 1981. Un disco de 1 GB (1000 MB) parecía fabulosamente barato en USD 849,- en 1995 [1]. Lo que significa que a precio de hoy, con esos USD 849 dólares puedes guardar esos datos por 10.000 años, ya que guardar 1 GB cuesta USD 0.084 por GB / año hoy en día [2].

Al igual que los precios para almacenar datos, los costos de capacidad computacional siguen bajando también. En la interfaz entre capacidad de almacenaje y capacidad computacional nos encontramos con el fenómeno de Big Data, un concepto que según John Mashey se empezó a usar en los años 90 [3, 4]. En las presentaciones históricas parece que el concepto de Big Data era claramente relacionado con el almacenamiento y la gestión de datos masivos y el estrés que esto causa sobre infraestructura existente [5]

Pero en los últimos años parece que se ha diluido la claridad de definición de Big Data. Cuando le preguntamos a gerentes y profesionales en TI por su definición de Big Data, las respuestas cubren todo el espectro que va desde análisis predictivo hasta almacenaje de objetos (object storage). Lo interesante es que personas en roles de negocio tienden a dar una definición relacionada con el uso de los datos (análisis predictivo, mejoras en reportería) mientras que perfiles más técnicos tienden a definirlo en términos de almacenaje y acceso a datos.

El resultado de esta divergencia de definiciones es usualmente la parálisis. Así mismo, ofertas de proveedores para "almacenaje Big Data" rápidamente suman a inversiones enormes, dejando al negocio preocupado si después de semejante inversión verán algún resultado en la parte del uso innovativo de datos para añadir valor a su negocio. La respuesta que intuyen muchas veces es no.

Para salir de este bloqueo y desatar el nudo en proyectos de innovación, muchas veces lo que se necesita es buscar un marco de referencia común sobre lo que significa el término Big Data para la organización. Inclusive en algunos casos es i mejor darle un nombre nuevo al proyecto ya que hay presión desde el mercado de vender una gran diversidad de productos bajo el nombre "Big Data" causando confusión interna cuando se consulta con proveedores externos.

Pero entonces, ¿cuál es LA MEJOR definición de Big Data? En ixpantia nos encanta la aproximación pragmática y práctica de RStudio al caso. En nuestra entrevista con Edgar Ruiz [6] el explicó que en RStudio hablan de Big Data cuando se cumplen las siguientes dos condiciones:

Los datos ya no caben en la memoria del computador donde estamos haciendo los análisis.
Los datos no caben por los canales (cables) de acceso, ya sea la red interna o la conexión a internet cuando los datos están en la nube.

Ambas situaciones requieren una solución de infraestructura que no necesariamente implica inversiones enormes. Tener éxito con Big Data se basa en poder experimentar y tener la costumbre de replicar un problema primero en un entorno manejable. Una vez que se tiene una solución, la podemos escalar al nivel del total del problema. Esto no se hace una vez, pero múltiples veces, donde cada vez que aprendemos algo nuevo que nos da más herramientas para llegar a una solución más rápidamente la siguiente vez.

Por ejemplo, en el mundo R y RStudio tenemos - entre otras - las siguientes aproximaciones para lidiar con Big Data:

dbplyr para poder delegar la gestión de datos, como por ejemplo el filtrado, agregación a bases de datos SQL. De esa forma nos ahorramos memoria del workstation donde hacemos el análisis [7].
SparklyR para usar todo el poder de computación distribuida para nuestro análisis, empezando a escala mínima en nuestro workstation para pruebas de concepto que podemos escalar a cualquier escala al llevarlo a producción [8].
Plumber para crear microservicios que se encargan de una parte bien definida de un proceso de análisis y que puede alimentar a los pasos subsecuentes con datos pre-calculados. Al levantar estos servicios en contenedores Docker tenemos a nuestro alcance un mundo de optimización del uso de recursos de cómputo con Swarm y Kubernetes [9].
Tensorflow para crear modelos de aprendizaje máquina que se pueden desplegar sobra la infraestructura de análisis de Google cuando van más allá de lo que nuestro workstation puede manejar [10].

Esta última lista es obviamente incompleta. El paisaje de soluciones para trabajar de formas innovadoras con datos y aplicar metodologías de análisis cambia de mes a mes. Aún así creemos que hay un par de puntos para tomar en cuenta al pensar en las posibilidades que Big Data nos da:

Es clave tener una definición compartida de "Big Data" para lograr trabajar en equipo sobre el tema.
Para todas las organizaciones el volumen de lo que se considera "Big Data" es diferente por lo que es necesario descubrir y definir este volumen antes de comenzar.
Es muy fácil sobre-invertir en "Big Data" y lo recomendable es empezar desde prototipos pequeños; estudiar y practicar cómo escalar estos prototipos al tamaño de los datos de la organización.

Dadas las ventajas de nuestra era con la accesibilidad a tecnologías y bajo costo cada vez más organizaciones se suman a innovar con datos. Si estás interesado en dar este paso o mejorar podés aprender más sobre experiencias con Big Data en Latinoamerica escuchando las entrevistas del Data Latam Podcast en www.datalatam.com. O bien nos puedes contactar visitando www.ixpantia.com para ayudarte conasesoría o manos para la ejecución de proyectos. Referencias

[1] Matthew Komorowski. A history of storage cost. 2009

[2] Google. Google Coldline Storage pricing. 2018

[3] Steve Lohr. The Origins of ‘Big Data': An Etymological Detective Story. 2013

[4] John Mashey. Big Data, Yesterday, Today and Tomorrow. 2013

[5] John Mashey. Big Data ... and the Next Wave of InfraStress. 1998

[6] Data Latam Podcast. Edgar, su curiosidad en datos y el camino desde Guatemala a RStudio. 2018.

[7] RStudio. Databases using R. 2018

[8] Rstudio. sparklyr: R interface for Apache Spark. 2018

[9] Jeff Allen. Creating APIs in R with Plumber. 2018

[10] Rstudio. R Interface to TensorFlow. 2018