Web Service Information Systems and Applications

30
1 Web Service Information Systems and Applications GGF16 Semantic Grid Workshop Athens Greece February 15 2006 Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 http://grids.ucs.indiana.edu/ptliupages/ presentations/ [email protected] http:// www.infomall.org

description

Web Service Information Systems and Applications. GGF16 Semantic Grid Workshop Athens Greece February 15 2006 Geoffrey Fox Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 - PowerPoint PPT Presentation

Transcript of Web Service Information Systems and Applications

Page 1: Web Service Information Systems and Applications

11

Web Service Information Systems and Applications

GGF16 Semantic Grid Workshop

Athens Greece

February 15 2006

Geoffrey FoxComputer Science, Informatics, Physics

Pervasive Technology Laboratories

Indiana University Bloomington IN 47401

http://grids.ucs.indiana.edu/ptliupages/presentations/[email protected] http://www.infomall.org

Page 2: Web Service Information Systems and Applications

22

Different Metadata Systems There are many WS-* specifications addressing meta-data

defined broadly• WS-MetadataExchange• WS-RF• UDDI• WS-ManagementCatalog

And many different implementations from (extended) UDDI through MCAT of the Storage Research Broker

And of course representations including RDF and OWL Further there is system metadata (such as UDDI for core

services) and metadata catalogs for each application domain such as WFS (Web Feature Service) for GIS (Geographical Information Systems)

They have different scope and different QoS trade-offs• e.g. Distributed Hash Tables (Chord) to achieve scalability in large scale networks

• WS-Context• ASAP• WBEM

• WS-GAF

Page 3: Web Service Information Systems and Applications

33

Different Trade-offs It has never been clear to me how a poor lonely service is meant

to know where to look up meta-data and if it is meant to be thought up as a database (UDDI, Ws-Context) or as the contents of a message (WS-RF, WS-MetadataExchange)

We identified two very distinct QoS tradeoffs 1) Large scale relatively static metadata as in UDDI catalog of all

the world’s services 2) Small scale highly dynamic metadata as in dynamic workflows

for sensor integration and collaboration • Fault-tolerance and ability to support dynamic changes with

few millisecond delay• But only a modest number of involved services (up to 1000’s

in a session)• Need Session NOT Service/Resource meta-data so don’t use

WS-RF

Page 4: Web Service Information Systems and Applications

44

XML Databases of Importance We choose a message based interface to a backend database We have two pieces of technology with different trade-offs but

each could store any meta-data but with different QoS• WS-Context designed for controlling a workflow• (Extended) UDDI exemplified by semantic service discovery

WFS or ASFS (see later) provides general application specific XML data/meta-data repository built on top of a hybrid system supported by UDDI and WS-Context

These have different performance, scalability and data unit size requirement

In our implementation, each is currently “just an Oracle/MySQL” database front ended by filters that convert between XML (GML for WFS) and object-relational Schema• Example of Semantics (XML) versus representation (SQL)

difference OGSA-DAI offers Grid interface to databases – we could use but

don’t as we only need to expose WFS and not MySQL to Grid

Page 5: Web Service Information Systems and Applications

55

We also designed and implemented an extended UDDI XML Metadata Service (alternative to OGC Web Registry Services). This service,

supports WFS GIS Metadata Catalog (functional metadata), user-defined metadata ((name, value) pairs), up-to-date service information (leasing), dynamically updated registry entries.

Our approach enables advanced query capabilities• geo-spatial and temporal queries , • metadata oriented queries,• domain independent queries such as XPATH,

XQuery on metadata catalog. http://www.opengrids.org/extendeduddi/index.html

Geographical Information System compatible XML Metadata Services

Page 6: Web Service Information Systems and Applications

66

WMS uses WFS that uses data sources

Railroads

RiversBridges

Interstate Highways

90

WFS Server

SQL Query

Railroads

[a-b]

SQ

L Q

uery

Riv

er [a

-d]

Bri

dge

[1-5

]

SQL QueryHigway [12-18]

`

ClientWMS

GetFeature

FeatureCollection

Get

Feat

ure

Feat

ureC

olle

ctio

n

<gml:featureMember> <fault> <name> Northridge2 </name> <segment> Northridge2

</segment> <author> Wald D. J.</author> <gml:lineStringProperty> <gml:LineString

srsName="null"> <gml:coordinates>

-118.72,34.243 -118.591,34.176 </gml:coordinates>

</gml:LineString> </gml:lineStringProperty> </fault> </gml:featureMember>

Page 7: Web Service Information Systems and Applications

77

A Screen Shot From the WMS Client

Page 8: Web Service Information Systems and Applications

Electric Power and Natural Gas data from LANL Interdependent Critical Infrastructure Simulations

Zoom-in

Zoom-out

FeatureInfo mode

Measure distance mode

Clear Distance

Drag and Drop mode

Refresh to initial map

Page 9: Web Service Information Systems and Applications

9

Google maps can be integrated with Web Feature Service Archives to filter and browse seismic records.

Integrating Archived Web

Feature Services and Google Maps

Page 10: Web Service Information Systems and Applications

1010

Context as Service Metadata We define all metadata (static, semi-static, dynamic)

relevant to a service as “Context”. Context can be associated to a single service, a

session (service activity) or both. Context can be independent of any interaction

slowly varying, quasi-static context Ex: type or endpoint of a service, less likely to

change Context can be generated as result of service

interactions dynamic, highly updated context information associated to an activity or session Ex: session-id, URI of the coordinator of a

workflow session

Page 11: Web Service Information Systems and Applications

1111

Hybrid XML Metadata Services –> WS-Context + extendedUDDI

We combine functionalities of these two services: WS-Context AND extendedUDDI in one hybrid service to manage Context (service metadata).• WS-Context controlling a workflow• (Extended) UDDI supporting semantic service discovery

This approach enables uniform query capabilities on service metadata catalog.

This service supports collection of services that• are set of actively collaborating managed services for a

particular common goal• generate events as result of interactions• are very small part of the whole GRID

http://www.opengrids.org/wscontext/index.html

Page 12: Web Service Information Systems and Applications

1212

Information Service

WSDL

IS Client

WSDL WSDL

HTTP(S)

WSDL

IS Client

DB

JDBC

ExtendedWS-Context

Service

dynamic metadata

IS Client

WSDL

DB

JDBC

Extended UDDI Registry

Service

UDDI Version 3.0 WSDL Service Interface Descriptions uddi_api_v3_portType.wsdl

WSDL WSDL WSDL

WS-Context Ver1.0ws-context.wsdl

WSDL

interaction-independent relatively static metadata

WSDL

Optimized forScalability

Optimized forPerformance

Page 13: Web Service Information Systems and Applications

1313

CGL GIS Research focuses on open source software for Grids to support scientific/visualization applications. • some focus areas are earthquake prediction and simulating

energy interdependencies with GIS Grids. • http://www.crisisgrid.org

We use WS-Context complaint Information Services for storing transitory metadata for distributed state information.

We use extended UDDI Information Services for providing search/store/access to geo-spatial domain-specific metadata catalogs

All data filters output data as though they were a WFS so data filters and sensors interchangeable

Applications I – Workflow based Geographical Information System (GIS) Grids

Page 14: Web Service Information Systems and Applications

14

Database

SS

SS

SS

SS

SS

SS

SS

SS

SS

SS

FS

FS

FS

FS

FS

FS

FS

FS FS

FS

FS

FS

FS

FS

FS

FS

FS FS

FS

FS

PortalFS

OS

OS

OS

OS

OS

OS

OS

OS

OS

OS

OS

OS

MD

MD

MD

MD

MD

MD

MD

MD

MD

MetaDataFilter Service

Sensor Service

OtherService

AnotherGrid

Raw Data Data Information Knowledge Wisdom

Decisions

SS

SS

AnotherService

AnotherService

SSAnother

Grid SS

AnotherGrid

SS

SS

SS

SS

SS

SS

SS

SS

FS

SOAP Messages

Page 15: Web Service Information Systems and Applications

15

Typical use of Grid Messaging in NASA

Datamining Grid

Sensor Grid

Grid Eventing GIS Grid

Page 16: Web Service Information Systems and Applications

16

Real Time GPS and Google Maps

Subscribe to live GPS station. Position data from SOPAC is combined with Google map clients.

Select and zoom to GPS station location, click icons for more information.

Page 17: Web Service Information Systems and Applications

1717

Applications II – Managing and Scripting Web Services: HPSearch

HPSearch is simply a scripting environment designed for managing distributed workflows.• HPSearch runs scripts which in turn invokes various services

to start the flow.• The HPSearch works in tandem with WS-Context Service for

communicating with services.• More info available at http://www.hpsearch.org

The WS-Context is used by HPSearch as transitory metadata store for storing shared, session related data.

HPSearch updates the session state as the services completes their execution-cycle.

Fault Tolerance addressed in Monday’s talk

Page 18: Web Service Information Systems and Applications

1818

Extended UDDI and WS-Context compliant Information Services handle with both quasi-static, slowly varying and dynamic highly updated metadata.

Page 19: Web Service Information Systems and Applications

1919

<?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://www.w3..."> <soap:Header encodingStyle=“URL" mustUnderstand="true"> <context xmlns=“ctxt schema“ timeout="100"> <context-id>http..</context-id> <context-service> http.. </context-service> <context-manager> http.. </context-service> <activity-list mustUnderstand="true" mustPropagate="true"> <p-service>http://../WMS</p-service> <p-service>http://../HPSearch</p-service> </activity-list> </context> </soap:Header>

SOAP header

for Context

The Pattern Informatics GIS-SOA based workflow application

5,6: WMS starts a session, invokes HPSearch to run workflow script for PI Code with a session id

7,8,9: HPSearch runs the workflow script and generates output file in GML format (& PDF Format) as result

10: HPSearch writes the URI of the of the output file into Context

11: WMS polls the information from Context Service

12: WMS retrieves the generated output file by workflow script and generates a map

<context xsd:type="ContextType"timeout=“100"><context-service>http://.../HPSearch</ context-service>

<content> HPSearch associated additional data generated during execution of workflow. </content>

</context>

service associated

<context xsd:type="ContextType"timeout=“100"><context-service>http://.../WMS</ context-service>

<activity-list mustUnderstand="true" mustPropagate="true">

<service>http://.../WMS</service>

<service>http://.../HPSearch</service>

</activity-list>

</context>

session

<context xsd:type="ContextType"timeout=“100"><context-service>http://.../HPSearch</ context-service><parent-context>http://../abcdef:012345<parent-context/><content> profile information related WMS </content>

</context>

user profile

<context xsd:type="ContextType"timeout=“100"> <context-id>http://../abcdef:012345<context-id/>

<context-service>http://.../HPSearch</ context-service>

<content>http://danube.ucs.indiana.edu:8080\x.xml</content>

</context>shared state

<context xsd:type="ContextType"timeout=“100"><context-service>http://.../HPSearch</ context-service><parent-context>http://../abcdef:012345<parent-context/><content> shared data for HPSearch activity </content>

<activity-list mustUnderstand="true" mustPropagate="true">

<service>http://.../DataFilter1</service>

<service>http://.../PICode</service>

<service>http://.../DataFilter2</service>

</activity-list>

</context>

activity

3WMS

WFS

http://..../..../..txt

HP Search

Data Filter

PI Code

Data Filterhttp://..../..../x.gml

Context Information Service

4

7,8,9

10

6

5,11

WMS Client

Extended UDDI

0

1

2

Examples of dynamic metadata in a GIS Workflow

Page 20: Web Service Information Systems and Applications

2020

Handheld Flexible Representation (HHFR) is an open source software for fast communication in mobile Web Services. HHFR supports:• streaming messages, separation of message contents and

usage of context store.• http://www.opengrids.org/hhfr/index.html

We use WS-Context service as context-store for redundant message parts of the SOAP messages.• redundant data is static XML fragments encoded in every

SOAP message • Redundant metadata is stored as context associated to service

conversion in place The empirical results show that we gain 83% in

message size and on avg. 41% on transit time by using WS-Context service.

Applications III – Context Store usage in communication of mobile Web Services

Page 21: Web Service Information Systems and Applications

2121

Optimizing Grid/Web Service Messaging Performance

· HHFR Scheme· Representation · Headers· Stream Info.

Context-Store

Save Context (setContents)

Retrieve Context (getContents)

Stream of Messagein Preferred Representation

Negotiation Over SOAP

HHFR Endpoint(Mobile)

HHFR Endpoint(Conventional)

The performance and efficiency of Web Services can be greatly increased in conversational and streaming message exchanges by removing the redundant parts of the SOAP message.

Page 22: Web Service Information Systems and Applications

2222

GlobalMMCS is audio/video conferencing system. http://www.globalmmcs.org

WS-Context service is used as session metadata catalog for describing audio/video streams in a session.• stream metadata might have various descriptive information such as

starting and ending RTP packet numbers, what topic is the stream is published, etc..

• metadata is stored associated with sessions WS-Context service provides search/store/access interface for

stream metadata as archival store.• Queries support archived (find all relevant data in past) metadata• Queries support session – metadata relations (find all metadata for a

given session) • Session discovery (find a session with given properties)

Clients query context store for information to be able to replay/playback an audio/video stream during or after conference session.

Applications IV – Context Store usage in multimedia collaboration environment such as GlobalMMCS

Page 23: Web Service Information Systems and Applications

23

Collaboration Grid

UDDI NaradaBroker

HPSearch

WS-Context

Gateway

WS-Security

NaradaBroker

NaradaBroker

Gateway

Gateway

Gateway

XGSP MediaService

Video Mixer

Transcoder

Audio Mixer

Replay

Record

Annotate

Thumbnail

WhiteBoard

SharedDisplay

SharedWS

Page 24: Web Service Information Systems and Applications

24GlobalMMCS SWT Client

Chat

TV

WebcamVideo Mixer

GIS

Page 25: Web Service Information Systems and Applications

2525

e - Annotation Player

Archived stream player Annotation / WB

player

Archieved stream list

Real time stream list

e - Annotation Whiteboard

Real time stream player Archived Real Time Real Time

Stream List Stream List Player

e-Annotation Archived Stream Annotated e-Annotation Player Player Stream Player Whiteboard

Page 26: Web Service Information Systems and Applications

2626

Information Architecture and Semantic Grid

WS-* provides key low level capability but deliberately does not define an information (data) architecture and leaves this to domain specific specification activities such as CellML/SBML for biology, WFS/GML for GIS and XGSP for Collaboration

WS-* does define a primitive service discovery (UDDI) and meta-data capabilities including WS-Context, WS-RF, RDF and WS-MetadataExchange already discussed.

GGF defines Grid data capabilities including info-D (publish/subscribe) and OGSA-DAI for data repositories

Semantic Grid uses WS-* and GS-* extending meta-data and service discovery with data-mining and reasoning

Page 27: Web Service Information Systems and Applications

2727

Information Management/Processing SOAP messages transport information expressed in a

semantically rich fashion between sources and services that enhance and transform information so that complete system provides

• Semantic Web technologies like RDF and OWL help us have rich expressivity

Data Information Knowledge transformation We build application specific information

management/transformation systems ASIS for each application domain

One special domain is the system itself where the metadata associated with services, sessions, Grids, messages, streams and workflow is itself managed and supported by an SIIS

Page 28: Web Service Information Systems and Applications

2828

Generalizing a GIS Geographical Information Systems GIS have been

hugely successful in all fields that study the earth and related worlds • They define Geography Syntax (GML) and ways to store,

access, query, manipulate and display geographical features• In SOA, GIS corresponds to a domain specific XML language

and a suite of services for different functions above However such a universal information model has not

been developed in other areas even though there are many fields in which it appears possible• BIS Biological Information System• MIS Military Information System• IRIS Information Retrieval Information System• PAIS Physics Analysis Information System• SIIS Service Infrastructure Information System

Page 29: Web Service Information Systems and Applications

2929

ASIS Application Specific Information System I a) Discovery capabilities that are best done using WS-*

standards b) Domain specific metadata and data including

search/store/access  interface. (cf WFS). Lets call generalization ASFS (Application Specific Feature Service)• Language to express domain specific features (cf GML). Lets call

this ASL (Application Specific language)• Tools to manipulate information expressed in language and key

data of application (cf coordinate transformations). Lets call this ASTT (Application specific Tools and Transformations)

• ASL must support Data sources such as sensors (cf OGC metadata and data sensor standards) and repositories. Sensors need (common across applications) support of streams of data

• Queries need to support archived (find all relevant data in past)   and streaming (find all data in future with given properties)

• Note all AS Services behave like Sensors and all sensors are wrapped as services

• Any domain will have “raw data” (binary) and that which has been filtered to ASL. Lets call ASBD (Application Specific Binary Data)

Page 30: Web Service Information Systems and Applications

3030

ASIS Application Specific Information System II Lets call this ASVS (Application Specific Visualization Services)

generalizing WMS for GIS The ASVS should both visualize information and provide a way of

navigating (cf GetFeatureInfo) database (the ASFS) The ASVS can itself be federated and presents an ASFS output interface d) There should be application service interface for ASIS from which all

ASIS service inherit e) There will be other user services interfacing to ASIS All user and system services will input and output data in ASL using

filters to cope with ASBD

AS Tool(generic)

AS“Sensor”

ASRepository

AS Service(user defined)

ASVSDisplay

AS Tool(generic)

Messages using ASL

Filter, Transformation, Reasoning, Data-mining, Analysis