Herramientas open source comienzan a surgir proporcionando análisis más rápidos de grandes volúmenes de datos. No siempre el negocio podrá esperar decisiones con una espera de varios días...
El tema de Big Data está en los medios y comenzando a convertirse en realidad. Pero curiosamente, incluso por la inexactitud del nombre, se presta mucha atención al factor volumen. La capacidad de almacenar datos crece rápidamente, al mismo tiempo que su costo disminuye. Pero una variable importante es la velocidad con la que, rápida y eficazmente, logramos acceder, analizar y tomar decisiones basadas en esta información. La variable velocidad, o la velocidad con la que el flujo de información navega por la organización, es una de las principales V de los conceptos integrados en Big Data.
La velocidad de acceso ya es una realidad en algunos sectores, como el financiero, donde la ventaja competitiva en la compra y venta de acciones se mide en microsegundos. Pero a medida que interactuamos con las empresas de forma continua, con nuestros smartphones y tablets, estas comienzan a identificar la importancia de interactuar con sus clientes durante las propias interacciones. Así, un negocio de comercio electrónico, como el de Amazon, propone recomendaciones basadas en sus patrones de compra en el instante en que usted está activo en el sitio web. Y los bancos intentan identificar un fraude en el momento en que usted está utilizando una tarjeta de crédito, en cualquier lugar del planeta.
Pero, ¿se han detenido a pensar en el inmenso volumen de datos y la demanda de procesamiento que hay detrás de estas operaciones? Identificar un patrón de compras o un intento de fraude implica el análisis de una montaña de datos estructurados y no estructurados.
Con una mayor variedad de datos disponibles, mayores son las posibilidades de que los algoritmos logren identificar patrones. En Big Data, el análisis, por lo tanto, no se restringe solo a volúmenes más grandes, sino a una cantidad más compleja (diversidad de datos) y a una velocidad que responda a las necesidades del negocio. Un ejemplo interesante es la empresa Dataminr, que analiza cerca de 500 millones de tuits al día para buscar información que mueva al mercado antes de que llegue a las noticias. Dataminr categoriza y analiza cada tuit en tiempo real, separando el spam y comparando la información con otras fuentes de noticias, precios de mercado, patrones climáticos y otros datos para determinar su importancia.
Este aspecto, la velocidad, ha sido el blanco de numerosas investigaciones y proyectos tecnológicos. Algunos ejemplos son Druid y Drill. Drill es la versión open source de Dremel, de Google. Vale la pena estudiar un poco más la tecnología Dremel, y para ello sugiero la lectura del texto http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/36632.pdf. Recomiendo también mirar Storm, utilizado por Twitter. Es un sistema open source de baja latencia, con el concepto de “stream processing”. Esta modalidad de procesamiento es necesaria cuando la aplicación demanda una respuesta inmediata al dato que llega. ¡Fíjense cómo tenemos soluciones de tecnología de punta en open source! Me parece que, poco a poco, las soluciones propietarias comienzan a dar lugar a soluciones open source, a medida que estas maduran y crean un ecosistema consistente a su alrededor.
Estas tecnologías complementan al omnipresente Hadoop, que fue desarrollado para operar en batch (un tiempo mucho más lento...) y probablemente se consolidarán en los próximos años. Por su parte, los distribuidores de Hadoop, como Cloudera, desarrollan soluciones que permiten realizar análisis rápidos sobre la masa de datos, sin necesidad de pasar por procesos batch. Impala es un ejemplo muy emblemático.
Pero aquí tenemos un hecho interesante. Ser rápido no significa ser en tiempo real. En la práctica no existe el tiempo real, sino el “casi tiempo real”. Tiempo real significa que se procesa el dato en el instante en que llega. Se procesa el dato en el presente. A diferencia de sistemas como Drill y Dremel, que procesan datos ya almacenados, aunque a gran velocidad. Lo mismo ocurre con Dataminr, que procesa tuits ya publicados. En el día a día son pocos los casos de tiempo real. Un algoritmo de recomendación como el de Amazon no necesita ser en tiempo real. Sí necesita, en cambio, interactuar con el cliente mientras navega por el sitio web de la empresa, lo que puede llevar algunos segundos o minutos. El tiempo real es necesario para un vehículo autónomo, como el automóvil sin conductor de Google, ya que tiene que tomar decisiones en el instante en que ocurre la situación.
Planificar iniciativas de Big Data pasa necesariamente, en mayor o menor grado, por las distintas V, como el volumen y la variedad. Sin embargo, el aspecto de la velocidad no puede ni debe ser menospreciado.
No siempre el negocio podrá esperar decisiones con una espera de varios días... Tal vez necesitemos analizar y decidir en el momento en que el hecho está ocurriendo.
(*) Cezar Taurion es CEO de Litteris Consulting, autor de seis libros sobre Open Source, Innovación, Cloud Computing y Big Data