The four (five) Sensors SWE based sensor integration in the German Indonesian Tsunami Early Warning and Mitigation System project (GITEWS) Rainer Häner, GeoForschungsZentrum Potsdam
Content GITEWS: A short introduction SWE: A short introduction SWE: Characterization of the GITEWS sensors SWE, sensor integration: Realization, technology GITEWS: Adoption of the GITEWS sensors GITEWS: Architecture SWE: Process flow
GITEWS: Overview
GITEWS: The Sensors A colorful presentation of the GITEWS Sensors
SWE: Sensor Integration, Categories Sensor, Sensor System (individuals) e.g.: Buoy (wave height) Sensor Systems Network (network of sensors and sensor systems) e.g.: Seismic System (earthquake location, -strength) Models, Databases (virtual sensors) e.g.: Tsunami Simulation (scalar field of wave height) Warning Systems (system of systems) e.g.: GITEWS (tsunami phenomenon and parameters) Actuators (active controlling units) e.g.: Sensor activation (increase sampling rate)
SWE: Sensor Integration, Sensors Seismic System QuakeML, proprietary data format, Messaging System (JMS) : complex event model Buoys Proprietary data format and protocol: time series Tide Gauges Proprietary data format and protocol: time series GPS Ground Tracking System Proprietary data format and protocol: time series Simulation SWE adoption planned
Sensor Web Enablement (SWE) SWE comprises all endeavours to make all types of sensors and instruments available on the Web, but also archives of sensor data via the WWW, traceable, accessible and if possible, controllable as well. (OGC)
SWE Encodings Sensor Model Language (SensorML) standardized description of sensors and sensor data Observations and Measurements (O&M) model and encoding of sensor measurements
SWE Services Sensor Observation Service (SOS): standardized access to sensor data Sensor Planning Service (SPS): monitoring and control of sensors and sensor networks Sensor Alert Service (SAS): active sending of data if defined events occur Web Notification Service (WNS): a service by which a service (client) may conduct asynchronous dialogues (message exchange) to one or more other services (clients). Messaging via various communication encodings (e.g. SMS, e-mail)
Sensor Integration (Technology) Approach: Tsunami Service Bus Establishment of a Service Oriented Architecture based on the concept Enterprise Service Bus
Tsunami Service Bus (Wikipedia) In computing, an enterprise service bus (ESB) refers to a software architecture construct, implemented by technologies found in a category of middleware infrastructure products usually based on standards, that provides foundational services for more complex architectures via an event-driven and standards-based messaging engine (the bus). An ESB generally provides an abstraction layer on top of an implementation of an enterprise messaging system which allows integration architects to exploit the value of messaging without writing code. Contrary to the more classical enterprise application integration (EAI) approach of a monolithic stack in a hub and spoke architecture, the foundation of an enterprise service bus is built of base functions broken up into their constituent parts, with distributed deployment where needed, working in harmony as necessary. ESB does not implement a service-oriented architecture (SOA) but provides the features with which one may be implemented. Although a common belief, ESB is not necessarily web-services based. ESB should be standards-based and flexible, supporting many transport mediums. Based on EAI rather than SOA patterns, it tries to remove the coupling between the service called and the transport medium. Most ESB providers now build ESBs to incorporate SOA principles and increase their sales, e.g. Business Process Execution Language (BPEL).
Adoption of Sensor Systems Sensor System EWMS Sensor Instrument Signal Processing proprietary encoding Sensor System Data Processing proprietary encoding Sensor Proxy Data & Event Processing Data Transforming unique encoding Tsunami Service Bus DSS
Adoption of the Seismic System EWMS Seismic System Seismometer Signal Processing SeisComP Data Processing SeisComP IAS, System Control Seismic Proxy Data Transforming Process Control Data Transfer Tsunami Service Bus Decision Support Control messages (non sensor events) SensorML, O&M proprietary encoding common protocol proprietary protocol
Sensor Integration: EWMS EWMS Earth Observation Proxy Data & Event Processing Simulation Proxy Data & Event Processing Classification Adapter Adapter unique encoding unique encoding GML Dissemination DSS Sensor System Management Tsunami Process Engine: Tsunami Service Bus unique encoding unique encoding unique encoding unique encoding Adapter Adapter Adapter Adapter Seismic Proxy Data & Event Processing GPS GTS Proxy Data & Event Processing Buoys Proxy Data & Event Processing Tide Gauge Proxy Data & Event Processing
Tsunami Service Bus: SOA Layers Access (GUI) Layer Process (Orchestration) Layer Service (Component) Layer Resource (Shared Repository) Layer
Tsunami Service Bus: Scenario Access Decision Process Controller Process Engine SPS WNS data/event processing Services SAS SOS Sensor Systems Early Warning System Simulation Data Resources
Tsunami Service Bus Service Access Sensor Proxies Visualization Service Access Decision Support Process Sensor System Management Tsunami Service Bus OGC Common Services SWE Common Services SOS SAS SPS WNS Registry WCS WFS WMS Basic Services LDAP Triple A Diagram Service Coarse grained Business Services Spatial Analysis Map Production
Tsunami Service Bus, what is Standards XML, SWE. OGC, ISO Protocols O&M, SOAP, WSDL, JMS Services SOS, SAS, WCS, Registry Processing Engines BPEL Loosely Coupling of Components Standardized Interfaces Middleware J2EE, JMS, SOAP
Software Architecture Logical View Physical View Component View Deployment View
Logical View: Decomposition Seismic System Buoy System DSS EWMS SSM Communication SAS SOS Seismic System Proxy Buoy System Proxy
Physical View: Composition Communication Process 1 Process 2 Process 3 DSS Seismic System Seismic System Proxy SOS SAS components Process 1 Process 3 Process 2 node 1 deployment node 2
SWE, Sensor Proxy: SAS Sensor System Management DSC subscribe alert DSS communicate system status information Registry SAS advertise set sensor events Sensor Proxy subscribe IAC publish Sensor System
SWE, Sensor Proxy: SOS Sensor System Management DSC DSS getobservation communicate system status information Registry SOS setobservation Sensor Proxy getobservation IAC Sensor System
SWE, Sensor Proxy: SOS Some XML Code with XML Spy: Seismic System Event Collection Some buoy data with a visualization tool: Sadly just simulated
Seismic System Proxy id Prototype V. 0.5 -Decomposition View SOS-Proxy call SWE DAO to Seismic System DB QuakeML Seismic System Database SWE DAO Postgres DB JMS Client QML Events «logical» SOS::SOS SWE call SWE Request Converter Reply Converter QuakeML to SQL Converter EventListener EventProvider Seismic System Messaging Call Call JDBC JDBC JDBC Service (Servlet)
Tsunami Service Bus: Process Flow (extract) EQ Detection (Seismic System) EQ Classification (DSS) NN (DSS) generate ETAs for Buoys (Simulation) generate Buoy setmode Schedule (DSS) OOD Execute Buoy Schedule (DSS) optional check Schedule (OOD)