+ All Categories
Home > Documents > THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0...

THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0...

Date post: 28-Jun-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
34
http://essi-lab.eu THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric Pollution Research (CNR-IIA), Italy [email protected] Aaron Braeckel National Center for Atmospheric Research (NCAR), USA Geospatial Sensor Webs Conference 2016 Münster (DE), 29-31 August 2016
Transcript
Page 1: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD

Lorenzo BigagliNational Research Council of Italy – Institute of AtmosphericPollution Research (CNR-IIA), [email protected]

Aaron BraeckelNational Center for Atmospheric Research (NCAR), USA

Geospatial Sensor WebsConference 2016

Münster (DE), 29-31 August 2016

Page 2: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

http://www.opengeospatial.org/standards/pubsub

[email protected]

Page 3: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Outline

¨ Background and introduction¨ PubSub 1.0

¤ Rationale¤ Core profile¤ SOAP Binding

¨ Related work

[email protected]

Page 4: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Background

[email protected]

Page 5: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

OGC PubSub SWG

¨ The Open Geospatial Consortium Publish/Subscribe Standards Working Group investigates a generic mechanism to support publish/subscribe requirements across OGC service interfaces and data types (coverage, feature, etc.)¤ Chartered in November 2010¤ ~80 members/observers

¨ Requirement analysis ended in March 2011¨ 3 documents in scope

¤ PubSub Core (PSC) – approved and published¤ PubSub SOAP Binding (PSSB) – approved and published¤ PubSub RESTful Binding (PSRB) – drafting underway

n To accelerate the process, it was decided to release PSC and PSSB first, and postpone the course of PSRB

[email protected]

Page 6: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu 5

Request/Reply model

¨ May be inefficient when waiting for specific events, e.g. data arrival, server changes, data updates¤ cf. polling

[email protected]

OGC Service (WFS, WCS,

SOS, etc.)

OGC ServiceClient

GetCapabilities( )

Service Capabilities, Dataset Identifiers, etc.

DescribeDataset( identifier )

Dataset Descriptions

GetDataset( identifier, filter )

Filtered Dataset

Page 7: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Publish/Subscribe model

¨ Asynchronous delivery of messages¨ Ability to specify an ongoing (persistent)

expression of interest¤ Stateful behaviour

Notification ServiceOGC ServiceClient

Subscribe( identifier, filter )

notify( datasetDescriptor or data )

notify( datasetDescriptor or data )

notify( datasetDescriptor or data )

[email protected]

Page 8: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Publish/Subscribe & OGC Web Services

¨ OWS (e.g. WMS, WFS) have primarily addressed the Request/Reply model, considered sufficient for many use cases¤ Clients request data of interest when needed, and may

request periodic updates

¨ Publish/Subscribe is complementary¤ Initial state obtained via Request/Reply, then a subscription

may be created for updates¤ Can result in less (or more predictable) network traffic¤ Can be very well suited to urgent but unpredictable data,

e.g. events, hazard warnings, sensor failures

[email protected]

Page 9: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PubSub (SWG) use-cases

¨ Service Filtered Data Push¨ Service Filtered

Notification¨ Notification of Threshold

Crossings¨ Handling Multiple Event

Types and Data Models¨ GeoSynchronization (GSS)¨ Brokered

publish/subscribe¨ Data Distribution

¨ FAA SAA Dissemination Pilot

¨ Emergency/Safety Critical Application

¨ Communication Protocol -Open GeoSMS

¨ Distributed Data Synchronization

¨ Message Aggregation¨ Message Filtering /

Batching Messages

[email protected]

Page 10: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PubSub (SWG) rationale

¨ Provide notification capabilities as a module to existing services¤ No impact on existing service semantics¤ Reuse service-specific filtering semantics

¨ Support pushing actual data from OGC Web Services, i.e. WCS, WFS, SOS

¨ Support pushing notifications about new data¤ E.g. service and dataset updates, in order to optimize

harvesting by catalogs

[email protected]

Page 11: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PubSub Core (PSC)

¨ Abstract description of the mandatory PubSubfunctionality

¨ Independent of the underlying binding technology¤ Extensions defines

several optional capabilitiesn E.g. batching, heartbeat

[email protected]

Page 12: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PSC Conformance Classes

[email protected]

Page 13: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PSC Interfaces

[email protected]

Page 14: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Basic PubSub interaction

[email protected]

Page 15: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Main design elements

¨ Pluggable filter language¤ E.g. OGC Filter Encoding

¨ Publication metadata¨ Pluggable delivery method

¤ E.g. ATOM, WS-Notification, AMQP

[email protected]

Page 16: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PubSub SOAP Binding (PSSB)

¨ How the PubSubfunctionality is realized in SOAP¤ Based on OASIS WS-

Notification¤ Additional

conformance class: Reliable Publishern Based on WS-

ReliableMessaging

[email protected]

Page 17: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Related work

¨ OGC Testbed 12 Initiative¤ PubSub RESTful Binding (PSRB)

n Drafting underwayn SSE delivery methodn ATOM delivery methodn XML and JSON formats

n Partial prototypes availablen PubSub-CSW (CNR), PubSub-WCS (NCAR), etc.

¤ AMQP delivery method, JMS binding, etc.¤ “OWS Request/Reply Publisher” Conformance Class

n Accepts OWS requests as filtersn Delivers OWS replies as updates/data pushes

[email protected]

Page 18: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Example: PubSub-CSW MEP

1. CSW client subscribes with a specific getRecordsRequest2. Time-0 recordset obtained via standard Request/Reply3. Subsequent updates based on CSW Transaction semantics

CSWCSWClient

1. Subscribe( filter = GetRecordsRequest#1 )

3. Notify( TransactionResponse )

4. Notify( TransactionResponse )

2.1. GetRecordsResponse

[email protected]

2. GetRecordsRequest#1

Page 19: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Conclusions

¨ The long-awaited OGC PubSub 1.0 standard bridges a gap between the existing SDI standard baseline and the many technologies supporting server-initiated, asynchronous communications

¨ We hope that a growing number of applications will benefit from an interoperable and uniform way of implementing event-based architectures

[email protected]

Page 20: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD

Lorenzo BigagliNational Research Council of Italy – Institute of AtmosphericPollution Research (CNR-IIA), [email protected]

Aaron BraeckelNational Center for Atmospheric Research (NCAR), USA

Geospatial Sensor WebsConference 2016

Münster (DE), 29-31 August 2016

Page 21: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

EXTRA SLIDES

[email protected]

Page 22: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Testbed-12 Asynchronous Messaging for Aviation

[email protected]

¨ The architecture documented in this ER is one of the first implementations of the OGC PubSub 1.0 Specification. Hence, it is of great importance to assess and validate the specification itself, in particular as regards the following aspects:

¨ Extensibility of the PubSub 1.0 specification

¨ Harmonization of PubSub 1.0 specification, namely the SOAP binding, with AMQP 1.0 as a delivery method

¨ Integration and backwards compatibility with Harris Data Exchange (DEX) clients supporting the retrieval of data (e.g. AIXM, FIXM) via JMS

¨ As noted, the ER focuses on the Aviation domain, however a definition of a profile for aviation could serve as an example on how to integrate PubSub into other fieldsthat require near-real time, push-based data dissemination

¨ Use the OGC Filter Encoding 2.0 language to express subscription filters

¨ Pluggability of filter languages, e.g. to reference the correct geometry in

¨ aviation-specific data formats, via XPath/XQuery, etc.

¨ This ER also contributes to some of the activities in the current scope for the PubSub SWG, such as:

¨ Feasibility of adding PubSub capabilities to WFS 2.0 and WMS 1.3.0

¨ Definition of a generic mechanism to reuse service-specific data requests to PubSub-enable the existing OWSs

¨ Definition of lexical constants (e.g. "all" to identify all the publications offered by a Publisher).

¨ AMQP is a broadly useful and popular delivery method, and should be considered for standardization in the PubSub SWG. The ER authors are encouraged to bringan AMQP delivery method document to the SWG for consideration and standardization.

¨ Finally, the ER provides useful indications on future lines of work for the PubSub specification, such as:

¨ OGC PubSub 1.0 profile for moving objects

¨ Specific mechanisms for standardizing delivery methods

¨ Analysis on the role of Message Brokers in enterprise production environments (cf. the PubSub Brokering Publisher)

Page 23: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

FilterCapabilities

Page 24: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

FilterCapabilities

Page 25: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PublicationsName Definition Data type and

values Multiplicity and

use

boundingBox The area of interest of the published data contents

BoundingBox [see

OGC 06-121r3]

Zero or more (Optional)

contentType The content type (i.e., mime type) of the published data contents.

Examples: “application/weather+xml”, “text/plain”

MimeType

[see

OGC 06-121r3]

One (Mandatory)

description A human-readable description

DescriptionType [see

OGC 06-121r3]

Zero or one (Optional)

identifier A unique identifier URI One (Mandatory)

metadata Additional metadata on this publication

Metadata [see

OGC 06-121r3]

Zero or one (Optional)

supportedDeliveryMethod

The supported delivery methods for this publication

URI One to many (Mandatory)

supportedFilterLanguage

The filter language identifiers that are offered for filtering

URI Zero to many (Optional)

formalContentDefinition Language

The identifier of the language (e.g., "http://www.w3.org/XML/Schema/1.0”) used to describe the formal publication content definition

URI Zero to many (Optional)

Page 26: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Publications

Page 27: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

DeliveryCapabilities

Page 28: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

DeliveryCapabilities

Page 29: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

SSE Delivery

¨ Pull¤ Not needed

¨ Push¤ Over HTTP

n ContentType: "text/event-stream;charset=UTF-8”n Cache-Control: "no-cache”n Connection: "keep-alive”

¨ Format¤ CSW TransactionResponse

Page 30: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

OAI-PMH Delivery

¨ Pull¤ Polling using “from” parameter

¨ Push¤ Not available

¨ Format¤ CSW TransactionResponse

Page 31: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

ATOM delivery

¨ Pull¤ Polling using “If-Modified-Since”, “start-index” parameters

¨ Push¤ PubSubHubbub?

¨ Format¤ Feed

n Entry (timestamp)n TransactionResponse

n PUT Record1000n DELETE Record2n UPDATE Record1

Page 32: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Proof of Concept – PubSub-CSW

¨ PubSub Core Conformance¤ Basic Publisher

n FilterCapabilities/FilterLanguagen “OWS Request/Reply” Filter Language

n GetRecords, with OpenSearch templatesn Publications/Publication

n All recordsn DeliveryCapabilities/DeliveryMethod

n SSE / WebSockets

¨ Binding¤ RESTful (PSRB)

n The current draft allows a partial implementation¨ Technology

¤ Based on GI-cat

Page 33: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

Proof of Concept – interface

¨ /¤ GET (GetCapabilities)

¨ /subscription¤ POST (Subscribe)

n Body: SubscribeRequest in XMLn Success: SubscribeResponse with SubscriptionIdentifier,

DeliveryLocation (e.g. SSE endpoint, OAI-PMH endpoint)n Failure: HTTP Error

¤ GET (GetSubscription*)¨ /subscription/{subscriptionId}

¤ DELETE (Unsubscribe)¤ GET (GetSubscription)

Page 34: THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD · 2016-09-05 · THE NEW OGC PUBLISH/SUBSCRIBE 1.0 STANDARD Lorenzo Bigagli National Research Council of Italy – Institute of Atmospheric

http://essi-lab.eu

PubSub Conformance Classes

[email protected]


Recommended