Já está disponível a nova versão Sofia2 IoT Platform 4.0

Já está disponível a versão 4.0 de Sofia2 IoT Platform (f. FEEP IoT&Big Data Platform Sofia2). Esta versão também foi disponibilizada na Plataforma Experimental Sofia2 CloudLab.

Ver versões

Esta versão inclui numerosas novidades e melhorias, nomeadamente:

SUPORTE GSMA DATA MODEL

A associação GSMA está a trabalhar num IoT Big Data Harmonised Data Model. Os Data Models GSMA (também denominados FIWARE DataModel) definem-se em JSON, já que a sua representação como Ontologia Sofia2 é imediata.

Foram criados templates de Sofia2 que permitem trabalhar diretamente com estes modelos de dados, conforme pode verificar este documento.

INTEGRAÇÃO COM O PORTAL OPEN DATA CKAN

Agora, Sofia2 suporta a comunicação bidirecional com o portal Open Data CKAN, que nos permite efetuar a integração com os repositórios de informação de instituições públicas que optaram por este standard.

A plataforma permite:

  • Registar um Repositório CKAN
  • Importar DataSets a partir de um repositório CKAN
  • Exportar APIS e Ontologias como DataSets num repositório CKAN

Ao registar um repositório C-KAN, podemos efetuá-lo no modo de Leitura (quando não dispomos de um utilizador e de uma API-KEY para publicar no repositório CKAN) ou então no modo de Leitura e Escrita, se tivermos a API KEY.

Uma vez registado um repositório, poder-se-á visualizar os datasets que tem publicados:

e o seu detalhe:

incluindo a visualização do dataset nos formatos que expõe o portal (em geral JSON, XML e CSV).

Para cada um dos formatos, nos quais está publicado o DATASET, Sofia2 permite importá-lo como Ontologia:

Uma vez importado, já temos uma ontologia com toda a funcionalidade da plataforma disponível: desde consultas, visualização, analítica, etc…

Quando pretender publicar uma Ontologia num CKAN remoto, deverá criar uma API no API Manager Sofia2, e o próprio Painel de Controlo publicará um Dataset com a URL dessa API. Assim, CKAN atua como portal Open Data sobre a informação gerida pela plataforma.

CRIAÇÃO E UPLOAD DE ONTOLOGIAS A PARTIR DE FICHEIROS XML E JSON.

Até agora, a plataforma suportava a criação e upload de ontologias a partir do ficheiro CSV/Excel; com esta utilidade poderá efetuar o upload diretamente de um ficheiro XML o JSON, que criará a ontologia e efetuará o upload com estes dados.

Para isso, a partir da janela de criação de ontologia, na opção Selecionar Ficheiro JSON/XML, selecionar-se-á o arquivo JSON ou XML e carregar-se-á em “carregar atributos em JSON/XML”, escolhendo um dos três registos que nos aparecem como exemplo e selecionando o carácter decimal.

Por último, gerar-se-á o esquema e carregar-se-á em “carregar dados” para criar a ontologia.

SUPORTE MODELO DE ONTOLOGIAS DE TIPO TIME SERIES:

Incorpora-se um novo tipo de ontologia, que dá suporte ao conceito de séries temporais. Este novo tipo de ontologia regista eventos com a respetiva marca de tempo numa janela temporal maior, que os agrupa num documento na BDTR, tornando mais eficiente a sua consulta, já que através de uma única leitura na BDTR se podem consultar todos os eventos ou um subconjunto da mesma janela temporal

Uma ontologia do tipo Série Temporal pode criar-se a partir do menu Ontologias do Painel de Controlo, onde se pode configurar o intervalo da janela temporal (um intervalo corresponde a um documento em BDTR), a sua unidade de agrupamento e a frequência das amostras, assim como definir o tipo de dados:

Uma instância da ontologia Time Series tem o seguinte aspecto:

(Neste exemplo, trata-se de uma janela horária, com agrupamentos por minuto e amostras a cada segundo. Desta forma, ter-se-á uma ontologia que agrupada em 60 grupos (minutos) as 60 amostras de cada segundo.

A nível de consultas, em SQL podemos por exemplo:

Que me devolverá:

NOVA VERSÃO DO MÓDULO NOTEBOOKS

O módulo Notebooks baseia-se no software open-source Zeppelin. Nesta versão, efetuou-se a migração para a última versão de Zeppelin. Além disso, incorporam-se novas características:

Entre as novas capacidades incorporadas em Notebook, temos:

  • Exportação/importação de notebooks como arquivos JSON
  • Exportação dos dados geradores nas diferentes visualizações em formato TSV/CSV

  • Controlo de versões nos notebooks em diferentes repositórios

  • Novas capacidades de visualização graças à incorporação do framework Helium
  • Atualização para Zeppelin 0.7 e Spark 2.1
  • Visualização centralizada da informação de execução de notebooks (Jobs)

  • Melhorias na segurança dos notebooks

COMPONENTES CLIENTE SOFIA2 PARA NODE-RED:

Desenvolveu-se um conjunto de nós para poder utilizar o Node-RED atacando a Sofia2 como backend.

Estes componentes estão disponíveis em Github de Sofia2, no repositório npm e na página oficial de Node-RED .

Estes componentes permitem-nos, a partir da plataforma realizar as operações de inserção, atualização, eliminação, consultas e libertação de ligação.

ORQUESTRAÇÃO DE NOTEBOOKS A PARTIR DO MOTOR DE FLUXOS:

Esta funcionalidade permite, dentro do motor de fluxos incluído na plataforma, orquestrar processos baseados no Notebook, paralelizando os mesmos e distribuindo a carga de trabalho:

A integração permite também a passagem de parâmetros dinâmicos (input e output) para estes notebooks, podendo incluir nestes notebook informação fixa ou gerada por um fluxo em qualquer linguagem utilizada nos notebooks e mais adiante iniciar uma execução com os mesmos:

Com a funcionalidade podemos criar fluxos complexos como este:

APLICAÇÃO WEB DE EXEMPLO EM ANGULARJS E SPRING BOOT COM BACKEND SOFIA2:

Com a API Javascript de Sofia2 é muito simples construir aplicaçõe web que utilizam a Sofia2 como backend.

Duas das tecnologias mais utilizadas para este tipo de aplicações são AngularJS em frontend e Spring Boot em serviços REST.

Nesta versão, desenvolvemos um esqueleto da aplicação web com estas tecnologias e Sofia2 como backend, para que se possa utilizar como modelo para desenvolver as suas próprias aplicações com Sofia2 como backend.

O exemplo representa um catálogo de dispositivos, e permite listar, registar um novo telemóvel, ver os respetivos detalhes e eliminar um elemento:

O exemplo também inclui a autenticação em Sofia2 e manuseia a ontologia archetype_phone.

O exemplo está disponível como projeto Maven no github de Sofia2.

MELHORIA NA IMPLEMENTAÇÃO E OPERAÇÃO DA PLATAFORMA

Nesta versão, concluiu-se a implementação da plataforma com Docker + Kubernetes. Desta forma, conseguimos simplificar as implementações e aumentar a sua elasticidade:

Além disso, melhorou-se e automatizou-se o ciclo de vida de uma versão, seguindo os princípios DevOps, desde o desenvolvimento, passando pela integração contínua (CI) e as implementações usando um orquestrador de contentores como Kubernetes:

SUPORTE DRILL-DOWN EM FILTROS

Esta funcionalidade, aguardada por muitos há algum tempo, permite criar filtros que aplicarão aos gadgets do dashboard selecionados:

Desta forma, pode construir sem programar interfaces como esta:

Como podem verificar no exemplo, podem criar-se filtros simple, multiple ou intervalo entre datas.

Os filtros podem aplicar-se a todos os gadgets, incluindo mapas:

NOVIDADES E MELHORIAS NOS GADGETS E DASHBOARDS:

Além da inclusão do suporte drill-down nesta versão, foram disponibilizados diversos wizards, como o de criação de gadgets ou o de criação de dashboards.

Também se incluíram melhorias estéticas nos diferentes painéis:

Por outro lado, os gadgets permitem exportar os dados que representam em formato CSV. Para isso, carregue no botão de download de um gadget

CRIAÇÃO GRUPO MEETUPS IoT & BigData Sofia2 Lab

Os meetups são grupos virtuais de pessoas interessadas em temáticas comuns que se reúnem para debater e expor sobre estes temas (no nosso caso tecnológicos e de inovação).

O grupo foi criado com a intenção de realizar reuniões e eventos pelo menos uma vez por mês. Pretende-se que estas reuniões não tenham apenas um carácter divulgativo, mas que envolvam os assistentes na realização de oficinas e exemplos práticos em torno de Sofia2 e das tecnologias IoT e Big Data.

O próximo 4 de Maio, celebrar-se-á o terceiro meetup, no qual se testarão as capacidades analíticas da plataforma: https://www.meetup.com/es-ES/IoT-BigData-Sofia2-Lab/events/238898432/

Já está disponível a nova versão Sofia2 IoT Platform 4.0

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