Publicada Release 4.0 de Sofia2 IoT Platform

Ya está disponible la release 4.0 de Sofia2 IoT Platform.

1

Esta release se ha disponibilizado en la Plataforma de Experimentación Sofia2 CloudLab.

Ver releases

Esta release incluye numerosas novedades y mejoras, entre ellas:


SOPORTE GSMA DATA MODEL

La asociación GSMA está trabajando en un IoT Big Data Harmonised Data Model. Los Data Models GSMA (también llamados FIWARE DataModel) se definen en JSON, por lo que su representación como Ontología Sofia2 es inmediata.

Se han creado las plantillas Sofia2 que permiten trabajar directamente con estos modelos de datos como puede verse en este documento.


INTEGRACIÓN CON PORTAL OPEN DATA CKAN

Ahora Sofia2 soporta la comunicación bidireccional con el portal Open Data CKAN, lo que nos permite integrarnos con los repositorios de información de la instituciones públicas que han optado por este estándar.

La plataforma permite:

  • Registrar un Repositorio CKAN
  • Importar DataSets de un repositorio CKAN
  • Exportar APIS y Ontologías como DataSets en un repositorio CKAN

A la hora de registrar un repositorio C-KAN podemos hacerlo en modo Lectura (cuando no disponemos de un usuario y un API-KEY para publicar en el repositorio CKAN) o bien en modo Lectura y escritura si tenemos el API KEY.

Una vez registrado un repositorio podremos ver los datasets que tiene publicados

, y su detalle:

incluyendo visualizar el dataset en los formatos que expone el portal (habitualmente JSON, XML y CSV).

Para cada uno de los formatos en los que está publicado el DATASET Sofia2 permite importarlo como Ontología:

Una vez importado ya tenemos una ontología con toda la funcionalidad de la plataforma disponible: desde consultas, visualización, analítica.

Cuando lo que queremos es publicar una Ontología a un CKAN remoto lo que haremos será crear un API en el API Manager Sofia2 y luego desde el propio Panel de Control publicaré un Dataset con la URL de ese API. De esta forma CKAN actúa como portal Open Data sobre la información gestionada por la plataforma.


CREACIÓN Y CARGA DE ONTOLOGÍAS DESDE FICHEROS XML Y JSON.

Hasta ahora la plataforma soportaba la creación y carga de ontologías desde CSV/Excel; con esta utilidad podré cargar directamente un fichero XML o JSON que creará la ontología y la cargará con estos datos.

Para esto desde la pantalla de creación de ontología en la opción Seleccionar Fichero JSON/XML seleccionaremos el archivo JSON o XML y pulsaremos “cargar atributos en JSON/XML”, elegiremos uno de los tres registros que nos aparecen como ejemplo y seleccionaremos el carácter decimal.

Por último, generaremos el esquema y pulsaremos “cargar datos” para crear la ontología.


SOPORTE MODELADO ONTOLOGÍAS TIPO TIME SERIES:

Se incorpora un nuevo tipo de ontología que da soporte al concepto de series temporales. Este nuevo tipo de ontología registra eventos con su marca de tiempo dentro de una ventana temporal mayor que los agrupa en un documento en la BDTR, haciendo más eficiente su consulta, ya que con una única lectura en BDTR se pueden consultar todos, o un subconjunto de los eventos, de la misma ventana temporal

Una ontología de tipo Serie Temporal se puede crear desde el menú Ontologías del Control Panel, donde se puede configurar el intervalo de la ventana temporal (un intervalo corresponde con un documento en BDTR), su unidad de agrupación y la frecuencia de las muestras, así como definir el tipo de datos:

Una instancia de ontología Time Series tiene el siguiente aspecto:

(En este ejemplo se trata de una ventana horaria, con agrupación por minutos y muestras cada segundo, de esta forma tendríamos un ontología agrupando en 60 grupos (minutos) las 60 muestras de cada segundo.

A nivel de consultas, en SQL podemos por ejemplo:

Que me devolverá:


NUEVA VERSIÓN DEL MÓDULO NOTEBOOKS

El módulo Notebooks se basa en el software open-source Zeppelin, en esta release se ha migrado a la última versión de Zeppelin, además se han incorporado nuevas características:

Entre las nuevas capacidades incorporadas a Notebook tenemos:

  • Exportación/importación de notebooks como archivos JSON
  • Exportación de los datos generador en las diferentes visualizaciones tanto en formato TSV/CSV

  • Control de versiones sobre los notebooks sobre diferentes repositorios:

  • Nuevas capacidades de visualización gracias a la incorporación del framework Helium
  • Actualización a Zeppelin 0.7 y Spark 2.1
  • Visualización centralizada de la información de ejecución de notebooks (Jobs)

  • Mejoras en la seguridad de los notebooks

COMPONENTES CLIENTE SOFIA2 PARA NODE-RED:

Se han desarrollo un conjunto de nodos para poder usar Node-RED atacando a Sofia2 como backend.

Estos componentes están disponibles en el Github de Sofia2, en el repositorio npm y en la página oficial de Node-RED .

Estos componentes nos permiten desde la plataforma realizar las operaciones de inserción, actualización, borrado, consultas y liberación de conexión.


ORQUESTACIÓN DE NOTEBOOKS DESDE MOTOR DE FLUJOS:

Esta funcionalidad permite dentro del motor de flujos incluido en la plataforma, orquestar procesos basados en notebook, incluso paralelizando los mismos y distribuyendo la carga de trabajo:

La integración permite también el paso de parámetros dinámicos (input y output) a estos notebooks pudiendo incluir en estos notebook información fija o generada por un flujo sobre cualquier lenguaje de usado en los notebooks y más adelante iniciar una ejecución con los mismos:

Con la funcionalidad podemos crear flujos complejos como este:


APLICACIÓN WEB DE EJEMPLO SOBRE ANGULARJS Y SPRING BOOT CON BACKEND SOFIA2:

Con el API Javascript de Sofia2 es muy sencillo construir aplicaciones web que usan Sofia2 como backend.

2 de las tecnologías más utilizadas para este tipo de aplicaciones son AngularJS en frontend y Spring Boot en la capa servicios REST.

En esta release hemos desarrollo un esqueleto de aplicación web con estas tecnologías y Sofia2 como backend, de modo que se pueda usar como plantilla para desarrollar tus propias aplicaciones con Sofia2 como backend.

El ejemplo representa un catálogo de dispositivos, y permite listar, dar de alta un nuevo móvil, ver su detalle y eliminar un elemento:

El ejemplo también incluye la autenticación contra Sofia2 y maneja la ontología archetype_phone.

El ejemplo está disponible como proyecto Maven en el github de Sofia2.


MEJORAS EN EL DESPLIEGUE Y OPERACIÓN DE LA PLATAFORMA

En esta release se ha completado el despliegue de la plataforma con Docker + Kubernetes. De esta forma conseguimos simplificar los despliegues e incrementar la elasticidad de estos:

Además se ha mejorado y automatizado el ciclo de vida de una release siguiendo los principios DevOps, desde el desarrollo, pasando por la integración continua (CI) y los despliegues usando un orquestador de contenedores como Kubernetes:


SOPORTE DRILL-DOWN EN DASHBOARDS

Esta funcionalidad que muchos estabais esperando desde hace tiempo, permite crear filtros que aplicarán a los gadgets del dashboard que seleccionemos:

De esta forma puedo construir sin programar interfaces como este:

Como podéis ver en el ejemplo, pueden crearse filtros de tipo simple, múltiple o rango entre fechas.

Los filtros pueden aplicarse a todos los gadgets, incluyendo mapas:


NOVEDADES Y MEJORAS EN GADGETS Y DASHBOARDS:

Además de la inclusión del soporte drill-down en esta release se han habilitado diversos wizards, como el de creación de gadgets o el de creación de dashboards.

También se han incluido mejoras estéticas en los diferentes paneles:

Por otro lado los gadgets permiten exportar los datos que representan en formato CSV, para eso pulsando el botón de descarga de un gadget


CREACIÓN GRUPO MEETUPS IoT & BigData Sofia2 Lab

Los meetups son grupos virtuales de personas interesadas en temáticas comunes que se reúnen para debatir y exponer sobre estos (en nuestro caso tecnológicas y de innovación).

El grupo se ha creado con la intención de realizar reuniones y eventos al menos una vez al mes. Se pretende que estas reuniones no solo tengan carácter divulgativo, sino además involucrar a los asistentes en la realización de talleres y ejemplos prácticos en torno a Sofia2 y las tecnologías IoT y Big Data.

El próximo 4 de Mayo se celebrará el tercer meetup, en el que se pondrán a prueba las capacidades analíticas de la plataforma: https://www.meetup.com/es-ES/IoT-BigData-Sofia2-Lab/events/238898432/


 

Publicada Release 4.0 de Sofia2 IoT Platform

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s