Presentación Sofia2

Transcripción

Presentación Sofia2
PLATAFORMA IOT SOFIA2:
PRESENTACIÓN TÉCNICA
Septiembre 2014
INDICE
Presentación Plataforma SOFIA2
02 Plataforma SOFIA2 en detalle
03 Un vistazo a las capacidades de SOFIA2
04 Referencias
01
2
PRESENTACIÓN PLATAFORMA SOFIA2
QUÉ PRETENDE
SOFIA2 puede definirse como:
un middleware que permite la interoperabilidad de múltiples sistemas y
dispositivos
ofreciendo una plataforma semántica interoperable que permite poner
información del mundo real a disposición de aplicaciones inteligentes (Internet
of Things) para construir servicios compuestos
con un enfoque open source, multilenguaje y agnóstico de las
comunicaciones.
ENTORNOS
INTELIGENTES
INTERFACES
NATURALES
SERVICIOS
ADAPTABLES
INFORMACIÓN
SEMÁNTICA
4
PRESENTACIÓN PLATAFORMA SOFIA2
UNA PLATAFORMA QUE EVOLUCIONA MANTENIENDO EL
COMPROMISO I+D Y REALIDAD DE NUESTROS CLIENTES
PRESENTACIÓN PLATAFORMA SOFIA2
CARACTERÍSTICAS SOFIA2
ORIENTADA AL MUNDO EMPRESARIAL CON FOCO EN LA
INNOVACIÓN Y ALINEAMIENTO CON NUEVOS ESTÁNDARES
Indra adapta conceptos SOFIA a mundo empresarial creando SOFIA2 como
Plataforma de Interoperabilidad IoT con enfoque Big Data
Integrated
Platform
Integrated
Security
Central Mgmt
UI+API
Cutomizable and
extensible
Multiple device
support
Interoperable
Big Data
Approach
Semantic
Vision
Horizontal
scalabilty
Market Tech &
Standards
On Premise
& On Cloud
Open Source +
Enterprise Version
PRESENTACIÓN PLATAFORMA SOFIA2
FOMENTANDO LA INNOVACIÓN APLICADA A DIFERENTES SECTORES
Smart Cities
SOFIA2 como
cerebro del OS de la
Ciudad
•
•
•
•
•
Recolección de
datos de sensores
de la ciudad.
Integrado con resto
de sistemas.
Evaluación de
Reglas y CEP para
toma de decisiones.
Suscripción a
eventos, alarmas,...
Soporte
multidispositivo.
Smart Energy
SOFIA2 como
Plataforma para
dispositivos
domiciliarios.
•
•
•
Recoge información
de dispositivos
domóticos.
Almacena, procesa y
toma decisiones
sobre grandes
volúmenes de
información.
Gestión de los
dispositivos
domóticos.
Smart Home
SOFIA2 como
Plataforma Hogar
Digital.
•
•
•
•
Comunicación con
todos los dipositivos
domóticos.
Reglas de actuación
en función de
eventos producidos.
Gestión de los
dispositivos.
Aplicable a
edicificios
inteligentes.
Smart Health
SOFIA2 como
Plataforma de
Interoperabilidad
entre Sistemas
•
•
•
•
Desplegable en
dispositivos para
salud domiciliaria.
Funcionamiento
como Bus de
comunicación entre
Sistemas de Salud.
Gestión centralizada
de las reglas,
variables,...
Almacenamiento de
información
histórica.
PLATAFORMA SOFIA2 EN DETALLE
SOFIA2 FORMA PARTE DE LA SMART PLATFORM DE INDRA
ACTIVOS:
iCloudBroker como solución de Market Place para facilitar la comercialización en la nube de
aplicaciones, servicios, componentes y datos.
iDynamics como arquitectura corporativa, que aporta facilidades para el desarrollo de aplicaciones
(tradicionales y móviles) y servicios que pueden ser desplegados en la nube.
SOFIA2, diseñada originalmente en el proyecto I+D del mismo nombre, y que cubre ámbitos IoT,
M2M, Integración y Big Data en tiempo real.
GPaaS para extender la plataforma con capacidades para soportar negocio en Cloud
PRESENTACIÓN PLATAFORMA SOFIA2
ENTORNO DE EXPERIMENTACIÓN: SOFIA2 InCloud
PRESENTACIÓN PLATAFORMA SOFIA2
SOFIA2 COMO PLATAFORMA DE INTEGRACIÓN
Colaboración sin acoplamiento entre cualquier Thing (IoT)
Knowledge Processor (KP)


Productor/Consumidor de Información:
un KP es cualquier usuario, dispositivo,
aplicación o sistema que produce o
consume información de cualquier tipo en
la plataforma SOFIA.
SSAP: Estandariza el modo de interoperar
con la plataforma y por ende con otros KPs
de una manera independiente del lenguaje
de programación y del protocolo de
transporte.
SOFIA2



Visión Semántica: la información se
estandariza y se hace común a todos los
dominios de la SmartCity a través de las
Ontologías
Colaboración: Un sistema produce
información y la disponibiliza a otros
sistemas en una plataforma común.
Big Data: La Plataforma está preparada
para trabajar con gran volumen de
información (Reglas de las 4 Vs)
Integración entre sistemas a nivel de información
Para lograr la integración entre sistemas, basta con convertirlos en KPs y conectarlos a
la plataforma:
• No hay acoplamiento: no es necesario que los sistemas se conozcan entre sí para
interoperar.
• Permite seguir un modelo implantación de aplicaciones/sistemas incremental.
Las nuevas aplicaciones/sistemas serán compatibles con los existentes porque utilizan
las mismas estructuras de información.
PRESENTACIÓN PLATAFORMA SOFIA2
SOFIA2 EN EJECUCIÓN
SMART SPACE
KP
KP
KP
KP
KP
JSON
JSON
JSON
Incidencia
Luminosidad
Medidas
Biométricas
KP
ON MP3
Suscrito
a cambios
Conectores
Seguridad
KP
SIB
BDC
Definición de Ontologías
BDTR
BDH
Definición de Clientes y Tokens
PRESENTACIÓN PLATAFORMA SOFIA2
CONCEPTOS CLAVE DE SOFIA2 I: Ontologías
 Ontología representa una Definición de Entidad dentro de mi Sistema .
 Existen predefiniciones para ámbito ciudad, y crearse adhoc en el proyecto.
 Definidas en JSON-Schema.
 Instancia de Ontología representa una Entidad concreta en el Sistema.
 Definidas en JSON.
PRESENTACIÓN PLATAFORMA SOFIA2
CONCEPTOS CLAVE DE SOFIA2 II
Smart Space:
Entorno colaborativo virtual donde
dispositivos
y
aplicaciones
interoperan para ofrecer una
funcionalidad compleja.
SIB
Knowledge Processor (KP):
Representa cada elemento que
comunica con un Smart Space
produciendo y/o consumiendo
información.
Semantic
(SIB):
Information Broker
Representa el core del Smart
Space, actuando como elemento
integrador de la información
semántica intercambiada y como
almacén de información.
PRESENTACIÓN PLATAFORMA SOFIA2
CONCEPTOS CLAVE DE SOFIA2 III
Smart Space Access Protocol (SSAP): Protocolo estándar de mensajería
entre los KPs y el SIB.
 JOIN, LEAVE
 INSERT, UPDATE, REMOVE
 QUERY, SUBSCRIBE, UNSUBSCRIBE
 GET_VERSION, GET_CONFIG
INDICE
Presentación Plataforma SOFIA2
02 Plataforma SOFIA2 en detalle
03 Un vistazo a las capacidades de SOFIA2
04 Referencias
01
17
PLATAFORMA SOFIA2 EN DETALLE
ARQUITECTURA
MODULAR
SIB Runtime: Es el core de la plataforma, el que publica interfaces (MQTT, WebSockets, REST,…) para
publicar y consultar información.
SIB API Manager: Es la pieza que cuando se publican APIs REST sobre las ontologías (o APIS externas)
permite acceder a ellas.
SIB Web Console: Consola Web + API Web para gestionar/administrar la plataforma.
SIB Tools: se encarga de lanzar las reglas y otros procesos como el proceso de paso BDTR a BDH
BDC: almacena la configuración de la Plataforma. Puede ser cualquier BD relacional. Sofia2 está certificada
sobre MySQL y Oracle.
BDTR: almacena datos del tiempo real. La implementación de referencia funciona sobre MongoDB y permite
consultar en SQL.
BDH: almacena información histórica, soportada sobre infraestructura Hadoop.
SDK: ofrece APIS y herramientas para trabajar con Sofia2..
PLATAFORMA SOFIA2 EN DETALLE
APPS/KPs (Consumer/Publisher)
Usando el SDK se encargan de:
 Publicar información al Bus de Interoperabilidad (la de un sensor,
smarphone,aplicación,…).
 Consumir información del Bus de Interoperabilidad bien a través de
consultas concretas o bien a través de suscripciones
En detalle:
 Este concepto se denomina KP (Knowledge Processor).
 Comunica con Bus (SIB) a través de lenguaje SSAP (Smart Space Access
Protocol) que le permite ejecutar:





JOIN: registrarse para usar SIB y LEAVE (finalizar sesión).
INSERT, UPDATE y REMOVE: para almacenar información en el SIB.
QUERY, SUBSCRIBE para consultar y suscribirse a cierta información.
Se aplica en comunicación mecanismos de seguridad configurados.
APIs para varios lenguajes/plataformas: Java, Javascript, iOS, Android,
Arduino,…
PLATAFORMA SOFIA2 EN DETALLE
SIB Runtime
Se encarga de:
 Ofrecer conectores para comunicación desde diversos clientes:
 REST y WebSockets : para clientes Javascript, smartphones,..
 MQTT para comunicaciones bidireccionales y dispositivos limitados.
 Web Services/JMS para aplicaciones empresariales.
 …
 Seguridad: autenticación y autorización para realizar la acción, permite
plugins (LDAP, BD, Oauth,…)
 Almacenar datos en Módulo de Persistencia (BDTR + BDH).
 Rutear petición a Motor adecuado en base a la petición realizada .
PLATAFORMA SOFIA2 EN DETALLE
SIB Tools
Se encargan de:
 Procesar las peticiones que llegan al SIB-Runtime
En detalle:
• Motor Reglas: permite definir de forma sencilla a través de la UI Reglas que
se ejecutarán cuando se cumplan ciertas condiciones (llegada de un datos de
cierto tipo o que cumpla cierta regla) y ejecutar un conjunto de acciones
preconfiguradas y ampliables
 Motor CEP: Permite definir Reglas CEP que aplican a los datos que llegan y
que desencadenan notificaciones (pj media de medidas de Temperatura
mayor de 50, o no se ha recibido cierto dato en 1 día)
PLATAFORMA SOFIA2 EN DETALLE
ORGANIZACIÓN LÓGICA:
Plugins
Se encarga de:
 Ofrecer mecanismos de extensión sobre la Plataforma
 Con los plugins se pueden crear nuevos conectores, cambiar autenticación,
auditar información, persistir en otros repositorios, generar KPIs,
monitorizar,…
En detalle:
 Permite pre y postprocesar cualquier acción realizada dentro del SIB.
 Plugin de Seguridad: permite ampliar o cambiar modelo de autenticación y
autorización
 Plugin de Ciclo de Vida del SIB realizar acciones al parar o arrancar
 Plugin de Procesado de Mensajes SSAP: permite preprocesar y
postprocesar cualquier mensaje incluyendo invocación a otros Backends
 Plugin de Motores: permite interceptar las acciones que realizan los diversos
motores
PLATAFORMA SOFIA2 EN DETALLE
BDC: Config Database
Se encarga de:
 La BDC (Base de Datos de Configuración) almacena todos los datos de
configuración de la Plataforma.
En detalle:
 Entre los datos configurables se encuentran Ontologías, Plantillas de
Ontologías, Reglas CEP, Reglas Script, Consultas Predefinidas, KPs, Inventario
de Dispositivos,...
 La BDC puede ser cualquier base de datos relacional con driver JDBC.
 Certificada sobre MySQL y Oracle.
PLATAFORMA SOFIA2 EN DETALLE
BDTR: Real Time Database
Se encarga de:
 La BDTR (Base de Datos de Tiempo Real) almacena todos los datos
recibidos por el Bus que se consideran de Tiempo Real.
En detalle:
 Para cada Ontología se puede configurar que representa el Tiempo Real y que
representa el Histórico (por ejemplo para un Sensor de Temperatura podría
sólo interesarme la última medida y para un Sensor georreferenciado las del
último día).
 La RI se soporta sobre base de datos MongoDB que ofrece características
muy interesantes como:
 Almacenamiento documental (JSON).
 Alto rendimiento.
 Consultas complejas incluyendo consultas geoespaciales .
 Escalabilidad horizontal incluyendo Sharding.
PLATAFORMA SOFIA2 EN DETALLE
HDB: Historical Database
Se encarga de:
 La BDH (Base de Datos Histórica) almacena todos los datos que ya no
forman el tiempo real y han pasado a ser históricos.
En detalle:
 La BDH está implementada sobre Hadoop en el datawarehouse HIVE lo que
permite:
 Capacidades para almacenamiento prácticamente ilimitado.
 Capacidades de procesamiento de toda esta información cuando se
necesite.
 Lenguaje de consultas SQL.
 Posibilidad uso Impala para consultas online.
 Los datos del tiempo real se pasan automáticamente a datos históricos.
 Los datos históricos pueden consultarse a través el SIB con mensaje SSAP
Query.
PLATAFORMA SOFIA2 EN DETALLE
Web Console
Se encarga de:
 Ofrecer mecanismos para que la gestión de los conceptos de la Plataforma
sea sencilla.
En detalle:
 UI Web con tecnología HTML5 y Spring.
 API REST para poder interactuar con la configuración de la Plataforma o crear
nuevas UIs.
 Control a nivel de UI y API de acciones que puede realizar cada rol y cada
usuario
 UI Extensible en proyectos.
PLATAFORMA SOFIA2 EN DETALLE
SDK
Se encarga de:
 Ofrecer APIs en diversos lenguajes para el desarrollo de clientes .
 Ofrecer Herramientas de Productividad para el desarrollo rápido de clientes
de la Plataforma.
 Ofrecer APIs para el desarrollo de plugins que extiendan el Bus.
 Ofrecer Guías, Ejemplos y Documentación para agilizar el desarrollo sobre
la Plataforma.
En detalle:
 API multilenguaje KPs: Java, Javascript, Arduino, Android,…
 API para extender el Broker con plugins.
 Entorno de Simulación de la Plataforma (SIB+KPs) para pruebas locales.
 Entorno disponibilizado en Cloud para pruebas de integración .
 Plugin Eclipse para desarrollo de KPs.
 Guías de uso + ejemplos de todo el Kit de Desarrollo.
PLATAFORMA SOFIA2 EN DETALLE
Deployment
(On Premise & Cloud)
Se encarga de:
 Garantizar la compatibilidad de la Plataforma con las principales
Plataformas Cloud.
 Dotar a la Plataforma de capacidades de autodimensionamiento en función
de necesidades no fácilmente estimables.
En detalle:
 Despliegue en varios IassS/PaaS: Amazon, Azure, Jelastic ,…
 Despliegue en Plataforma PaaS de Indra: G@PASS .
 Despliegue en Cloud Privado y Público.
PLATAFORMA SOFIA2 EN DETALLE
VERSIONES DE SOFIA2
SOFIA2 se puede usar bajo 2 modelos o versiones
 Versión Community
 Licencia open-source.
 Sin coste por uso.
 Versión base de la Plataforma operativa.
 No ofrece Consolas Web ni Herramientas avanzadas (Reglas y
CEP).
 Fuentes descargables desde Forja SOFIA2: http://sofia2.org
 Incluye Guías de Uso y SDK http://sofia2.com
 Versión Enterprise
 Licencia open-source adaptable al cliente
 Soporte comercial según diferentes niveles y SLAs.
 Plataforma completa con todas las herramientas alrededor.
 Incluye Guías de Uso, de Instalación y de ampliación.
 SDK incluye soporte Hadoop y BI.
PLATAFORMA SOFIA2 EN DETALLE
Tecnologías que componen KPs RI (Reference Implementation)









Java como Plataforma de desarrollo de módulos de proceso
 Spring 3.X y su ecosistema como tecnología de soporte
 Despliegue estándar JEE independiente de AppServer
Datagrid (Hazelcast) para comunicación entre módulos y funcionamiento en HA
Motor CEP (Siddhi CEP) para reglas sobre grandes volúmenes de eventos en los que
interviene el tiempo
Motor Scripting (Groovy) que permite definir reglas ante llegada de mensajes ,
soportando creación de nuevas operaciones (alarmas, notificaciones,…) y
Hazelcast como DataGrid soporte HA SIBs.
MongoDB como RealTime DB por su almacenamiento JSON y capacidades avanzadas
Hadoop como Historical DB, los datos que ya no son del tiempo real se pasan
automáticamente según configuración a este repositorio:
 Hive como datawarehouse
 Impala como motor de consultas online distribuido
MQTT/WebSockets/REST/WS/…como protocolos de comunicación con la plataforma.
Spring MVC + Thymeleaf + jQuery como framework Web para el desarrollo de la
consola web
Con la modularidad de la solución se pueden llegar a sustituir o reemplazar algunas
piezas (por ejemplo la BDH) si existe la necesidad
PLATAFORMA SOFIA2 EN DETALLE
Propuesta Despliegue SOFIA2
Balanceador HW o SW:
• F5, gINX, Apache,
HAProxy,…
BALANCEADOR
SIB
SIB
SIB
CLUSTER
SIB
3 x Nodo SIB+Grid:
MONGO DB
Cluster
3 x Nodo MongoDB:
DATA GRID
config
server
mongos
config
server
mongos
config
server
mongos
• 16 GB de RAM
• 1 CPU Intel Xeon E5
(2-2.5GHz 6/8 cores)
• 100-200 Gb RAID
• Linux OS 64 bits (CentOS 6.x)
• 32 GB de RAM
• 1 CPU Intel Xeon E5
(2-2.5GHz 6/8 cores)
• 2 TB Raid-10 Ext4 o XFS
• Linux OS 64 bits (CentOS 6.x)
1 x NameNode Hadoop:
HADOOP
Namenode
+JobTracker
(Master)
Datanode +
TaskTracker
(Slave)
DN
DN
•
•
•
•
32 GB RAM
2 quad core CPUs
1 TB RAID
Linux OS 64 bits
3 x Datanode Hadoop:
•
•
•
•
16 Gb RAM
4 discos x 1 TB (conf JBOD)
2 quad core CPUs (2-2.5GHz)
Linux OS 64 bits
PLATAFORMA SOFIA2 EN DETALLE
BALANCER
CLUSTER SIB
SIB
SIB
SIB
RUNTIME
RUNTIME
RUNTIME
DATA GRID
CLUSTER
SIB-Tools
SIB
SIB
TOOLS
TOOLS
CLUSTER
SIBRuntime
CLUSTER
SIBConsole
config
server
mongos
config
server
mongos
Namenode
+JobTracker
(Master)
Datanode +
TaskTracker
(Slave)
CLUSTER
RTDB
config
server
mongos
Datanode +
TaskTracker
(Slave)
HADOOP
CLUSTER
HDB
SIB
SIB
WEB
CONSOLE
WEB
CONSOLE
BDC
BDC
CLUSTER
ConfigDB
···
4
RIEGO
Sistemas NO
integrados
en SOFIA
MOBILIARIO URBANO
EJEMPLO AVISO CIUDADANO
PATRIMONIO VERDE
PLATAFORMA SOFIA2 EN DETALLE
4
BUS EMPRESARIAL (ESB)
1. El ciudadano pone un aviso sobre un árbol seco.
NOTIFICACIÓ
N AVISOS
SERVICI
O
AVISOS
2. El aviso se registra en el sistema de avisos.
···
3
3. El sistema de avisos notifica al Sistema de Orquestación.
SISTEMA
AVISOS
4. El sistema de orquestación notifica el aviso a todos los
sistemas que lo requieran.
KP
4
2
5. La empresa de servicios realiza el servicio.
SIB SIB
6. El Ayuntamiento realiza la inspección.
Sistemas
integrados
en SOFIA
SmartSpace
Captación
1
5
MÓDULO
INT.
BACKEND
5
KP
KP
KP
SMART
PHONE
Empresa
Servicios
…
Empresa
Servicios
…
PLATAFORMA SOFIA2 EN DETALLE
DESPLIEGUE EN SMART CITY CON BUS EMPRESARIAL
BUSINESS
INTELLIGENC
E
UI ADMINISTRACION
SISTEMAS
DESARROLLADOS
COMO KPS SOFIA
KP
SISTEMAS
NO SOFIA
PERO CON
ONTOLOGIAS
SISTEMAS
NO INTEGRADOS
KP
INFRAESTRUCTURA
DATOS BIGDATA
OPEN
DATA
BUS EMPRESARIAL (ESB)
Ontologí
ax
Dispatcher
SERVICIO
XXX
SERVICIO
AVISOS
KP
ADAPTADOR
AREA SIB
Ontología
y
KP
GATEWAY PROTOCOLOS
MOTOR
RAZONAMIENTO
SERVICI
O
YYY
KP
SIB
CÁMARA
TRAFICO
···
KP
KP
KP
ALUMBRADO
SMART
PHONE
TABLET
<<tabla>
<<tabla>
>
usuarios
>
ontologías
KP
ARDUINO/
RASPBERR
Y
Smart Space
HIVE
BD NoSQL
HDFS
Map Reduce
BDTR
···
H.A. SIB
···
KP
GATEWAY
RIEGO
Red
Aspersores
···
Red
Gote
o
BDH
HISTÓRICOS SENSORES
MÓDULO INT.
BACKEND
GATEWAY PROTOCOLOS
KP
BDCONF
INDICADORE
S
KP
Cuadro de Mando
Mobiliario
Urbano
INDICE
Presentación Plataforma SOFIA2
02 Plataforma SOFIA2 en detalle
03 Un vistazo a las capacidades de SOFIA2
04 Referencias
01
37
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
FLUJO DE TRABAJO
http://sofia2.com
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
ABIERTO
Sitio Web público con acceso a:

Presentaciones.

Guías de Uso.

Videotutoriales.

SDK.

Forja.

…
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
SOFIA2 InCloud
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
CONSOLA CENTRALIZADA
Permite gestionar todos los
conceptos de la Plataforma
vía Web:

Gestión Ontologías

Gestión KPS

Gestión Assets

Consola BD

Gestión Reglas

…
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
API RESTFUL DE GESTIÓN
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
CONECTORES
Conectores

REST

Web Services

MQTT

WebSockets

JMS

…
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
SDK
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
PLANTILLAS DE ONTOLOGÍAS
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
MOTOR DE REGLAS SCRIPTING
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
MONITORIZACIÓN DEL SIB
SOFIA monitoriza todos sus
componentes por JMX.
Ofrece además Servicio REST.
También ofrece un adaptador
HTTP sobre JMX.
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
PERSISTENCIA > BDTR
La BDTR (Base de Datos Tiempo Real) almacena los datos que forman parte del tiempo real
(configurable que franja lo compone).
Implementación de referencia de BDTR sobre MongoDB:

MongoDB una base de datos NoSQL,
orientada a documentos, pensada para ser
rápida, escalable y fácil de usar.

Las bases de datos NoSQL están pensadas
para soportar las crecientes necesidades en
cuanto a rendimiento, escalabilidad, velocidad,
rendimiento.

Las bases de datos NoSQL vencen a las BD
relacionales tradicionales al no requerir un
modelo estáticos y estructura de datos para
almacenar la información.

Es apropiada para aplicaciones que almacenan
grandes cantidades de datos o datos
complejos.

SOFIA2 ofrece un motor de consultas SQL
sobre Mongo.

Soporte consultas geográficas.
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
PERSISTENCIA > BDTR
db.pt_bus.find({"MobileElement.geometry" : {$near : {$geometry : {type : "Point", coordinates : [8.396402999999964, 43.37016999999999]}}, $maxDistance: 2000}} )
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
PERSISTENCIA > BDH SOBRE HADOOP
El elevado volumen de información que la plataforma tiene que manejar hace necesario el
uso de aproximaciones Big Data, en nuestro caso Hadoop:

Hadoop se utiliza para el almacenamiento y posterior procesamiento
(datawarehouse) de todos los datos generados por la plataforma permitiendo el
crecimiento indefinido.

Las características que han hecho a Hadoop sinónimo de Big Data son:


Económico: se ejecuta en equipos de bajo coste formando clústeres.

Escalable: Si se necesita más poder de procesamiento o capacidad de
almacenamiento solo hay que añadir más nodos al clúster.

Eficiente: Hadoop distribuye los datos y los procesa en paralelo en los nodos
donde los datos se encuentran localizados.

Confiable: Es capaz de mantener múltiples copias de los datos (HDFS). En lugar
de mover los datos hacia donde se hace el procesamiento, Hadoop mueve el
procesamiento (Tasks) a donde están los datos.
SOFIA 2 se integra con infraestructura Hadoop en varios sentidos:

HDFS: para almacenamiento de datos sin procesar.

HBASE: como base de datos NoSQL para almacenamiento históricOs

Sqoop: para hacer importaciones/exportaciones de BD relacionales

Hive+Impala: que permite hacer consultas estilo SQL sobre HDFS y HBASE
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
PERSISTENCIA > BDH SOBRE HADOOP
HDFS: Es el sistema de ficheros de Hadoop.

HDFS es un sistema de ficheros distribuido que abstrae del almacenamiento físico y ofrece
una visión única de todos los recursos de almacenamiento del cluster.

Al almacenar un fichero, lo parte en bloques y almacena cada bloque en nodos distintos del
cluster. Ademas, replica cada bloque en al menos tres nodos.

Es posible almacenar ficheros de tamaño superior al tamaño máximo de disco de cualquiera
de las máquinas del cluster.

Si un nodo del cluster se avería, el sistema continua funcionando mientras es reparado
utilizando la información replicada en otros nodos.
Hadoop HDFS
Parte
1
Parte 2
Nodo 1
Nodo 2
·····
·····
Particionamiento
Hadoop HDFS
Parte n
Nodo n
Parte
Nodo X
Nodo Y
Replicación
Nodo Z
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
PERSISTENCIA > BDH SOBRE HADOOP
MapReduce es una solución distribuida para procesar grandes cantidades de datos:

Basada en trabajo de Google.

Funcionamiento sobre commodity hardware.

HDFS y MapReduce son el core de Hadoop.
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
EJEMPLOS SOFIA2
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Ejemplo Aplicación: Integración de datos Rivas
KP Visualizador
API JAVA SOFIA2
KP Fuente de Datos
HTTP
AJAX
JSON
JSON
SOFIA2 InCloud
Connectors
TelantenaFeedKP
Security
SIB
CDB
API Javascript
Sofia2
TelantenaFeed
RTDB
HDB
Integración completa
(KP publicación y KP
visualización)
realizada en 2 días
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Ejemplo Aplicación: Integración de datos Rivas
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Ejemplo Gateway gestionando sensores Zigbee (T, H, Wh)
CONSOLA WEB CONTROL KP
SOFIA ofrece herramientas
que automatizan la creación
de KPs generando una UI
Web de Control
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Ejemplo Gadget Javascript visualización Tiempo Real (T, H, Wh)
UI HTML + Javascript
SOFIA
ofrece
un
API
Javascript
que
permite
interactuar
con
el
KP
soportando Ajax Push
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Dinamizando la Comunidad de Desarrollo
KP Arduino publicando luminosidad
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Dinamizando la Comunidad de Desarrollo
Widget HTML (generado por las herramientas) de visualización
Tiempo Real
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Dinamizando la Comunidad de Desarrollo
Open Hardware y Open Software
UN VISTAZO A LAS CAPACIDADES DE SOFIA2
Dinamizando la Comunidad de Desarrollo
Open Hardware y Open Software
KP
Commands
JSON
KP
Suscrito
a cambios
Commands
KP
HTTP
Conectores
MQTT
Seguridad
Semantic Information
Broker
BDC
BDTR
BDH
http://scfront.cloudapp.net
Definición de Ontologías
• DroneCameraCommand
• DroneMovementCommand
• DroneCameraScriptStream
Definición de Clientes y Tokens
• KP_Drone_Joystick
• KP_Drone_Controller
INDICE
Presentación Plataforma SOFIA2
02 Plataforma SOFIA2 en detalle
03 Un vistazo a las capacidades de SOFIA2
04 Referencias
01
66
REFERENCIAS
Principales Referencias
Indra Smart Platform
Ahorro
potencial de
46MM€ en 5
años con
170.00
pacientes
gestionados
25 proyectos
piloto
Teleasistencia
Smart TV,
dispositivos
móviles, etc..
8.000
Grandes
Cliente
175.000
Residenciales
Mejora de la
eficiencia
energética de
nuestros
hogares y
edificios
Gestión
Inteligente del
Turismo
Market Place
de servicios
logísticos
27.000
empresas
turismo y ocio
locales
involucrada
Más de 5.000
clientes
5ª ciudad de
España con
>2.000.000
visitantes /
año
> 5.000 recursos
turísticos
El puerto
gestiona >30%
del comercio
exterior de Chile
10 millones de
toneladas de
carga anual
REFERENCIAS
SMART CORUÑA
PLATAFORMA DE
INTEROPERABILIDAD DE LA
CIUDAD DE LA CORUÑA
Plataforma IoT Sofia2
Smart Cities
Alcance del proyecto
Smart City A Coruña
• INTERNET OF THINGS
 Aplicación de innovación tecnológica a la ciudad.
 Desarrollo e implantación de la plataforma base
• BIG DATA
• API MANAGER
• SAAS

• DEVICES






de interoperabilidad (Sofia2) habilitando la
incorporación de nuevos servicios a futuro de
manera incremental.
> 25 pilotos en diferentes áreas, convergiendo en
un enfoque IoT, destinados a la mejora de los
servicios públicos en el ámbito de la
sostenibilidad, la eficiencia y el bienestar urbano,
Recolección y almacenamiento de información en
tiempo real de sensores, dispositivos móviles,
estáticos, propios o de terceros.
Consulta, suscripción y reacción a eventos sobre
la información recibida en tiempo real.
Servicios OpenData: datos y aplicaciones
públicas basadas en servicios de la Plataforma.
Consolidación histórica de datos.
Visualización 3D.
Despliegue Cloud.
TECNOLOGÍA l KEYWORDS
• Sofia2
• API Manager
• IoT
• Reglas y CEP
• Big Data
• Open Data
• Cloud
• Tiempo Real
REFERENCIAS
Plataforma IoT Sofia2
Smart Energy
Alcance del proyecto
 Disponibilización en la Plataforma Sofia2 de un
• INTERNET OF THINGS
• BIG DATA
• DEVICES
• REACCIÓN A EVENTOS
• INTEGRACIÓN CON
SISTEMAS CORPORATIVOS








conjunto de servicios orientados a mejorar la
eficiencia energética y a la concienciación del uso
de la energía.
Adquisición de datos y control de los dispositivos
ubicados en el domicilio del cliente.
Servicio de información del consumo energético
personalizado.
Visualización y control del consumo por parte del
cliente de forma online.
Programación de horarios de uso de energía
aprovechando tarifas valle.
Capacidad de tratamiento de elevados volúmenes
de datos (terabytes) provenientes de elevados
números de dispositivos (≅ 100.000).
Funcionalidades específicas para particulares,
PYMEs y Grandes Empresas.
Configuración de alarmas mediante reglas y CEP.
Despliegue on-premise.
TECNOLOGÍA l KEYWORDS
• Sofia2
• API Manager
• IoT
• Reglas y CEP
• Big Data
• Movilidad
• Integración
• Tiempo Real
REFERENCIAS
SERVIZO GALEGO DE SAÚDE
HOGAR DIGITAL ASISTENCIAL
Plataforma IoT Sofia2
Smart Health
Alcance del proyecto
Hogar Digital Asistencial SERGAS
 Proyecto incluido dentro del Plan de Innovación
• INTERNET OF THINGS
• BIG DATA

• DEVICES
• REACCIÓN A EVENTOS
• INTEGRACIÓN CON
SISTEMAS CORPORATIVOS




Sanitaria del SERGAS InnovaSaúde.
Monitorización de constantes vitales en remoto,
evitando desplazamientos innecesarios de médicos
y pacientes con enfermedades crónicas o en
régimen de hospitalización domiciliaria.
Desarrollo
de
un
canal
bidireccional
de
comunicación
con
el
paciente,
enviando
recordatorios de autocuidados, buenas prácticas y
autocontrol de parámetros biomédicos a través de
dispositivos móviles y Smart TVs.
Plataforma única de recepción de señales
biométricas (Sofia2) desde distintos dispositivos,
con capacidades de monitorización y detección de
valores anómalos informando a médicos y/o
pacientes de situaciones de riesgo.
Capacidades de procesado de información masiva,
habilitando el análisis Big Data de la información
biométrica de los pacientes del Sergas en futuros
estudios.
Despliegue on-premise
TECNOLOGÍA l KEYWORDS
• Sofia2
• API Manager
• IoT
• Reglas y CEP
• Big Data
• Movilidad
• Integración
• Tiempo Real