ml_icono IoT - Map

En este ejemplo hacemos un seguimiento a personas, autobuses o ciclistas que se mueven por la ciudad de Madrid y envían su localización a nuestros servidores.
Se pueden agregar nuevos dispositivos virtuales al mapa, seleccionando un par de puntos (origen y destino), el sistema busca la ruta más corta (en tiempo) entre estos puntos y realiza el recorrido en el mapa.
Al hacer click sobre los objetos en movimiento en el mapa, se mostrará una imagen del lugar por el que está pasando en ese momento.

Architecture
IoT con PubNub

El diagrama de la izquierda muestra la arquitecture general del flujo de datos en el ejemplo. PubNub es un Data Stream Network que implementa el patrón Publish-Subscriber, que conciste en asignar mensajes a una "categoría". Un publicador, puede enviar mensajes a una o varias categorías, y un subscriptor puede elegir recibir mensajes de una categoría específica.

En este caso, los publicadores de mensajes son los dispositivos que informan de la geo-localización de sus portadores (persona, ciclista, autobus o coche). PubNub nos provee de manera transparente la infraestructure necesaria para el envío, almacenamiento y recepción de los mensajes, usamos su SDK de JavaScript en todo el proceso. PubNub es reconocido como una de las más eficaces herramientas para soluciones IoT por ofrecer un infraestructura confiable, eficiente y de escalabilidad transparente a los usuarios.

Para la integración con mapas, se usa PubNub EON, contruido sobre MapBox y que permite configurar un mapa como un subscriptor de mensajes. De esta forma se delega en el API de MapBox la funcionalidad de actualizar la localización en el mapa en cada recepción de mensajes de los dispositivos.

La funcionalidad de trasladar el dispositivo insertado por el usuario desde un punto a otro en el mapa se logra usando los modulos "Direction" y "Geocode" del API de MapBox


I+D+i BigData

En StrateBI creemos en el valor de las tecnologías Big Data para el procesamiento de datos y la obtención de conocimiento a partir de los mismos, con el objetivo siempre en mente de mejorar los procesos de toma de decisiones de las organizaciones de cualquier sector, nuestro equipo lleva a cabo una fuerte labor de I+D+i en Big Data.

Investigación

Revisamos novedades y documentación científica de las tecnologías Big Data.

Se hace tanto aquellas emergentes en las que detectamos un gran potencial, como sobre aquellas ya consolidadas.

Con ello detectamos los puntos en los que se puede desarrollar o aprovechar alguna mejora.

Desarrollo

Ponemos en práctica los resultados de las investigaciones anteriores.

Implementamos la mejoras y validamos su aplicación con diversos casos de estudio del mundo real, como los que podemos explorar en nuestra demos Big Data.

Innovación

Una vez hemos comprobado su utilidad y robustez, las introducimos en los proyectos que ofrecemos a nuestros clientes.

De esta forma, StrateBI garantiza el uso de la tecnologías Big Data más novedosas, previamente testeadas y mejoradas por nuestro equipo de I+D+i en Big Data.


Tecnologías Usadas

hadoop

Apache Hadoop es el entorno Big Data por excelencia, permitiendo la computación distribuida en clústeres formados por hardware comercial y de bajo coste.

En su forma más básica incluye almacenamiento distribuido (HDFS), un gestor de recursos de ejecución (YARN) y, funcionando sobre este, el entorno para el desarrollo y ejecución de aplicaciones que implementan en procesamiento distribuido (MapReduce).

Además, sobre la base de los componentes anteriores, han surgido numerosas herramientas, como Hive o Spark, que aportan modelos simplificados de programación para una amplia gama de tareas de procesamiento Big Data.

De entre las distintas tecnologías Big Data, Hadoop es la solución más completa y la que aporta un enfoque más general, siendo ideal para la implementación del novedoso concepto de Data Lake para la posterior explotación de los datos en aplicaciones analíticas.

flume

Flume es un sistema distribuido y confiable para la eficiente colección, agregación y movimiento de datos Streaming.

kafka

Kafka es un sistema de mensajería (publicador-suscriptor) distribuido, tolerante a fallos y de alto rendimiento.

hortonworks cloudera

Con el objetivo de facilitar la instalación y gestión del entorno Hadoop, y de todo el conjunto de aplicaciones que se integran con el mismo, disponemos de lo que se conoce como distribución de Hadoop.

Se trata de un paquete de software, que incluye los componentes básicos de Hadoop junto con una pila de herramientas adicional, listos para su instalación en sistemas operativos Ubuntu, Debian, CentOS o, incluso, Windows Server.

En este sentido, desde de StrateBI recomendamos el uso de una distribución, siendo Hortonworks y Cloudera actualmente las distribuciones líderes. Es por ello que los clústeres Hadoop sobre los que se ejecutan nuestras demos son Hortonworks y Cloudera, siendo ambas soluciones una opción ganadora.

spark spark streaming

Spark implementa el procesamiento de datos haciendo uso intensivo de la Memoria Ram del clúster, en lugar de hacer uso intensivo de disco como MapReduce.

De esta forma se consigue mejorar en gran medida el rendimiento de las aplicaciones Big Data, siendo adecuado para la implementación de algoritmos iterativos de Machine Learning (MLib), análisis estadístico (módulo R) o el análisis de datos en tiempo real (Spark Streaming), aplicación que hemos puesto en práctica en nuestra demo.