BIG DATA ¿éxito o fracaso?

Cómo afrontar un proyecto y no morir en el intento

Autor: Luis Martínez Ordoñez

 

Luis Martínez es Talento Asociado de Manager in Motion. Interim manager de TI para gestionar proyectos de transformación digital. Arquitecto de sistema software para acelerar la Industria 4.0 en las organizaciones de servicios, su comprensión de los negocios le permite enfocar, diseñar y evaluar propuestas de crecimiento.

 

Así que quieres digitalizar tu negocio. Perfecto.

 

Te has entrevistado con el consultor de turno que te ha convencido que lo que tu empresa necesita es Big Data. O vas a “integrar” en tus soluciones una herramienta más que tiene Big Data.

Ya está. Por fin vas a tener Big Data en tu negocio, se lo vas a comentar a tus amigos y lo vas a publicitar en las redes sociales, en todas. Probablemente no hayas analizado a fondo el por qué necesitas Big Data, porque de eso se encarga el consultor. También se encargará del cómo, o al menos, confías en que se encargue él, o su empresa, que para eso cobran.

Recuerda que lo importante en un proyecto es responder adecuadamente a las preguntas qué, para quién, cómo, y cuándo.

Aunque quizás te quede un pequeño rastro de duda sobre si el Big Data será realmente útil en tu empresa… Entonces quizás esto te interesa.

Big Data es un paradigma que va sobre el tratamiento de grandes volúmenes de datos (primera V), con mucha velocidad (segunda V) y con enorme variedad (tercera V). Es lo primero que te dicen cuando te hablan de Big Data, las 3V. Pero el problema fundamental no es guardar esa gran cantidad de información, probablemente provenientes de muchas y distintas fuentes, que no tiene una estructura consistente (es desestructurada), y guardarla y procesarla a mucha velocidad. El verdadero reto del Big Data es el análisis de datos. Poder obtener información relevante e importante sobre los datos que estás tratando de una manera fácil, o al menos, sencilla.

Por un lado tenemos el asunto del tratamiento de los datos desestructurados, sin una organización o esquema uniforme, y de múltiples fuentes. Eso complica el asunto, ya que no sabemos en realidad cómo están formados y organizados los datos. Para la búsqueda y el análisis de esos datos hay soluciones más o menos acertadas. Hay ocasiones en las que se filtran los datos relevantes y se vuelcan en una base de datos relacional que facilita su análisis y visualización, y ya hay también bastantes soluciones ad-hoc para varios sistemas de Big Data. 

De cualquier forma, por qué tienes que usar Big Data es la clave de todo.

 

Un caso con poco valor añadido

 

Una StartUp con la que traté se encarga de extraer información sobre el mercado de coches de ocasión de múltiples y muy diversas fuentes haciendo “web scraping”: “leen” las páginas de distintas webs y filtran la información relevante. La información que obtienen de los vehículos suele ser siempre la misma: marca, modelo, potencia, puertas, año de fabricación, precio, color, estado, extras, … Poco más. A veces no obtienen algún dato, como los extras o el color, pero los importantes, los esenciales, siempre están. Si no, el coche no entra en el sistema. Los datos están perfectamente estructurados. Y hacen esto una vez al día. Filtran, comparan y catalogan los resultados y luego los ponen al servicio de su plataforma que hace otras cosas que no voy a mencionar para proteger su negocio. Lo guardan todo en una MongoDB, una gran base de datos de Big Data. Unos 100.000 vehículos (registros) diariamente. No suelen cambiar mucho los datos. Luego procesan parte de esa información en un sistema de análisis muy popular.

En realidad no necesitan usar una MongoDB, ni construír un cluster mínimo de tres servidores o una DynamoDB de AWS ni nada por el estilo. Pero de esta manera pueden usar el término Big Data frente a los inversores. La complicación que aporta usar MongoDB sólo favorece el negocio por la imagen que da frente a los inversores, que aportan dinero a un proyecto de Big Data. El valor de usar un motor de Big data aquí se traduce simple y llanamente en el “maquillaje” para los inversores. Y el proyecto se complica un tanto … bastante. Complicar equivale a perder dinero: invertir tiempo y recursos en solucionar algo que no aporta valor real al proyecto, salvo el maquillaje. Y el tiempo no se puede recuperar.

 

Un caso con valor añadido

 

Otra StartUp en la que hicimos un super proyecto complejo y puntero, en Mobaloo. Construímos una plataforma que, entre otras cosas, se conectaba vía API a distintas redes de “advertisers” para descargar más de 150.000 ofertas de banners de móviles cada hora. Las catalogaba, las segmentaba, las clasificaba y las comparaba, seleccionando las mejores por país, segmento, precio, etc… poniéndolas vía API a disposición de una red de más de 1.000 “publishers” en todo el mundo. Unas 150.000 ofertas cada hora, 24 x 7, en todo el mundo. Usábamos una MongoDB distribuída, con un master y dos slaves al principio. Y funcionaba de maravilla.

Las ofertas eran incompletas, la misma oferta podía venir de manera distinta de varios advertisers, algunas horas no venían todas las ofertas, esto es, estaban desestructuradas. Podíamos haber usado DynamoDB, que empezaba en aquella época, pero era caro, o Cassandra o Hadoop, pero no necesitábamos su fiabilidad y sí la facilidad de implantación. El objetivo era guardar una gran cantidad de ofertas, de muchas fuentes distintas, muy desectructuradas, y todo ello rápidamente. Conectarse a 100 API en una hora no es sencillo ni mucho menos rápido.

Big Data es un término que se usa para definir un marco concreto de actuación sobre unas necesidades determinadas, y existe un conjunto de herramientas que apoyan esas actuaciones. En realidad nadie decide que es y qué no es Big Data. Cada fabricante decide acoplar su solución al término para que el consumidor la identifique. Luego los expertos deciden si la solución es adecuada, versátil, útil, …

El objetivo del fabricante es vender más, y el del cliente es comprar mejor. Pero integrar, instalar, construir un proyecto alrededor del concepto, en definitiva, comprar “Big Data”, para no quedarse atrás o para ser (o parecer) más avanzado no es inteligente. Lo inteligente es pensar el problema que se quiere solucionar, estudiar las mejores opciones, y diseñar un plan de actuación.

Por ello voy a definir un marco de análisis, destacando 4 puntos para ayudar a tomar decisiones a la hora de afrontar un proyecto en este ámbito.

1-Determinar las necesidades del proyecto.

Obtener información significativa a través del uso de grandes análisis de datos. Donde es importante determinar si realmente se va a obtener información, o por el contrario se va a intentar obtener información. Es una diferencia sutil pero importante, y una misma solución puede no ser útil para ambos casos. Se puede requerir un prototipo escalable una vez que demuestre su valor o bien un proyecto consolidado con un escenario conocido.

2-Definir el proceso de convertir los grandes datos en información valiosa.

Imprescindible contar con un profesional para crear la arquitectura adecuada del Big Data  (inputs, validación, patterns, visualización para el usuario,…) basada en capas de estructuración para mejoras y mantenimiento futuros (base de datos, interface con el usuario,…)

 

3-Definir las fuentes de datos y los distintos tipos de datos:

Por ejemplo, las empresas de comercio electrónico necesitan analizar los datos de los registros de los sitios web, los call centers, los «escaneos» de los sitios web de la competencia y los medios sociales. Los formatos de datos obviamente serán diferentes, y hacerlos “coincidir” puede ser problemático.

4-Seleccionar las herramientas adecuadas:

Es vital contar con profesionales que entiendan tanto el ecosistema tecnológico como el negocio para escoger y seleccionar la mejor combinación de herramientas.

 

Antes de dejarse deslumbrar por el término Big Data, y de empezar cualquier proyecto, de cualquier tipo, conviene hacer un diagnóstico acertado de cuál es el problema que queremos resolver, diseñar la mejor manera de afrontarlo y planificar su desarrollo. Big data no es un coche nuevo, o una máquina deslumbrante, pero si permite poner los medios para abarcar cantidades ingentes de información, canalizarla y filtrarla para brindar más oportunidades de interacción con los usuarios y añadir nuevas ventajas comerciales.