Sensor Drivers
Persistence
Engine
Event
Bus
Service Interfaces
Processing
Engine
Stream Processing
Batch Processing
Event Flows
OGC
HTTP
TCP
P2P
...
Centralized/synchronized access via the ModuleRegistry
Install/Uninstall modules (can be done remotely)
Discover available modules
Load/unload and start/stop modules
Asynchronous lifecycle management since 1.1
Examples: PERST Embedded Database, JPA, Post GIS, Flat Files, Accumulo/Geowave
Examples: SOS/SPS (HTTP), MQTT, P2P, REST/JSON, WebView, RemoteAdmin
Examples: Config Based Security Realm, OAuth Authenticator, etc.
SOS
Web Admin
@DisplayInfo(label="HTTP", desc="HTTP configuration")
@Required
@ValueRange(min=0, max=65535)
@TextInfo(numLines=2, maxSize=200)
@FieldType(Type.PASSWORD)
@FieldType(Type.REMOTE_ADDRESS)
@AddressType(NetworkType.IP)
Sensor Drivers
Data Storage
Event
Bus
Stream Processing
Engine
Sensor Description Storage
Data + Sensor Events
Data Events
Data Events
Sensor Events
SOS Interface
Live + Historical
SPS Interface
Direct Tasking
Command Messages
Virtual Sensor
Data Storage
Event
Bus
Sensor Description Storage
Data Events
SOS-T Interface
Data Events
Modules can be dynamically created and configured
This happens when registering a new sensor with SOS-T
Data + Sensor Events
Stream Records, Update Sensor Description
Create New Virtual Sensor
Create New Storage
Could also be future SensorThings or MQTT service
Virtual Sensors
Local Storage
Event
Bus
SOS-T Service
SOS-T Client
Local Hub
Cloud Instance
Real Sensors
High Capacity Cloud Storage
Event
Bus