StreamTools: Una herramienta para analizar streams

Todos los días escuchamos hablar de Big Data, IoT, Smart Data, Machine Learning, semantic data, etc. Gran parte de las veces fuera de contexto o simplemente utilizadas porque “están de moda”.

Uno de los mejores ejemplos es “Big Data”, donde se habla siempre de ingentes cantidades de información, que si sistemas, plataformas, consultas, pero con el error, desde mi punto de vista, de tomar eso como información, no, no es información, son datos, datos en bruto o datos tratados, la información es la que se extrae de esos datos. Se pierden muchas veces, con el termino “Big Data” en sólo la parte de guardar ingentes cantidades de datos, replicados y en volumenes astronómicos. Eso no es “Big Data” eso es sólo hablar de una parte, la más mecánica, y la que menos aporta a lo que se busca “Información”, es sólo “almacenaje y gestión de datos”, una pata de una mesa mucho más amplia.

Entiendo el error como que se tiende a centrar más en los componentes que en la solución requerida.

Me encantan las pruebas de concepto (esas pequeñas o no tan pequeñas herramientas/soluciones para algo ya existente o nuevo pero aplicando una solución diferente) y es ahí donde he descubierto el proyecto de New York Times R&D: Streamtools.

Para New York Times R&D Streamtools se basa en tres predicciones a 3-5 años vista:

1) Los datos serán proporcionados como streams (Flujo de datos): Debido al volumen de datos estos serán obtenidos mediante “sensores” donde APIs basadas en streams prevalecerán sobre datos obtenidos de Bases de datos. En gran medida los origenes de datos “emitirán” datos. Poner una base de datos entre ese emisor y las personas/maquinas que los procesarán será algo demasiado caro (por los volúmenes).

2) El uso de streams cambiará como sacaremos conclusiones en el mundo: Siendo este cambio de paradigma el que nos haga empezar a pensar en términos de análisis, modelado, toma de decisiones y visualización.  Cada nuevo stream que llegue nos afectará instantaneamente a nuestra visión del mundo (lo puede cambiar).

3) Las herramientas adaptables nos inferirán nuevas formas de semantizar y obtener información: El analisis de datos tenderá al “Abductive Reasoning“: El investigar empezará a explorar y observar los datos y mediante hipótesis tratará de razonarlos.

Con esto en mente crearon Streamtools, una herramienta que, con un interface gráfico, permite definir y gestionar estos streams, y no sólo trabajar con ellos sino incluso definir nuevos streams a partir de datos u orígenes aparentemente “estáticos”.

68747470733a2f2f662e636c6f75642e6769746875622e636f6d2f6173736574732f3539373839372f323434333539372f62316332343131652d616533392d313165332d396662342d3432396533393534383632302e676966 De esta forma se pueden marcar cada cuanto tiempo deben leer y de que sitio y el proceso de limpieza, filtros, acciones para gestionar ese stream.

Casos de uso que han puesto a modo de ejemplo son:

  • análisis de las visitas de NYT mediante un Queue para generar informes automáticos diarios.
  • Un tracker de terremotos utilizando los datos en tiempo real del USGS.
  • Un sistema para ver los “objetos” perdidos de los sistemas de tránsito de NY.
  • Disponibilidad de bicicletas de Citibike en la parada más cercana a las oficinas de NYT.

Ver ejemplos

Además de los ejemplos tenemos origenes de datos potenciales (potencial su uso) para el paradigma de Streamtools:  Data Sources

Streamtools tiene licencia Apache 2 ( Open Source ) y está hecha en Go.  Como proyecto de investigación es una plataforma para explorar nuevos algoritmos y métodos de análisis. Streamtools permite ser extremadamente expresivos (claros y visuales) a la hora de crear prototipos de analisis de datos.

comments powered by Disqus