Information Services for
Dynamically Assembled
Semantic Grids
Mehmet S. Aktas, Geoffrey C. Fox, Marlon Pierce
Community Grids Laboratory, INDIANA UNIVERSITY
Context as Service Metadata
n
Context
is metadata associated to both services and
their activities
n
Context can be
• independent of any interaction
n slowly varying, quasi-static context
• generated as result of interaction
n dynamic context
• Example: information associated to an activity or session
n
Gaggles
: Collection of Services that
• are set of actively collaborating managed services for a
particular common goal
• generate events as result of interactions
Motivating Scenario: Pattern
Informatics (PI) in a Grid Environment
n
PI in a Grid environment:
• Hotspot forecasts are made using publicly available
seismic records.
n Southern California Earthquake Data Center
n Advanced National Seismic System (ANSS) catalogs
• Code location is unimportant, can be a service through
remote execution
• Results need to be visualized, stored, shared, modified
n Support for slowly varying, quasi-static metadata
• How do we support both prescriptive and descriptive metadata? • How do we enforce up-to-date information in registries?
n Support for dynamic session related metadata • How do we manage dynamic workflows?
• How do we enable correlation of service activities?
Information Requirements in PI GIS Grid
http://..../..../..txt
2
WMS
WFS
HP Search
Data Filter
PI Code
Data Filter
http://..../..../tmp.xml
3
5,6,7 4
WMS Client
1
Context Information Services
Motivations
n Need to provide information describing services independent
of their interactions.
• generic and domain specific characteristics of services
n Need to manage all information associated with services for;
• correlating activities of widely distributed services
• enabling uniform query capabilities to both
conversation-based or monolog context information
n “Give me list of services satisfying C:{a,b,c..} QoS requirements
and participating S:{x,y,z..} sessions”
• management of events especially in multimedia
collaboration
• providing information to enable
Problem Statement
What is a novel process of building
Information Services for both dynamic,
session related and slowly varying, static
context of widely distributed services
What is WS-Context?
n
Repository of Context Information
nAllows for
• Sharing Context info: metadata related to a particular transaction in
multiple Web Service interactions
• Sharing data: data in multiple Web service interactions
n
Nicely put, its a
Distributed Variation
of Shared
Memory
n
Context Information dependent on the type of activity
n Identify a transaction coordinator
n Recovery information in event of a failure
n Sharing info between participants (Security tokens, certificates,
Architectural Design Requirements
n
Uniformity
• need consistent interface to both static and dynamic context
n
Interoperability
• need to leverage existing WS standards (UDDI,
WS-Context) for service discovery and communication
n
Persistence
• need to provide high availability of information
n
Dynamism
• need to handle metadata based on changing user demands
n
Performance
WSDL Extended UDDI Registry
Service
HTTP
Client WSDL
HTTP(S)
Storage Access
Database
WSDL
JDBC
Expeditor
WSDL
NB Node
Querying
Publishing
and Sequencer
The Architecture of Context Information Service
Client WSDL
F
ault
T
olerant
H
igh
P
erformance
I
nformation
S
ervices (
FTHPIS
)
nPerformance, compatibility, uniform interface
• caching
n Expeditor Module using Tuple Spaces paradigm
• web service based programming interface, UDDI &
WS-Context
n Querying and Publishing Modules
n
From single point of failure to distributed system:
fault tolerance
• dynamic replication
n Access Module
n Storage Module
• multi-publisher multicasting messaging
Distributed Dynamic Context Management
Computer Boundaries
WSDL Extended UDDI Registry
Service
HTTP(S)
Client WSDL
HTTP(S)
Gaggle Boundaries
Storage Access
Database
WSDL
JDBC
Expeditor
WSDL
NB Nod
e
Querying
Publishing
<?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<pa rent-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</c ontent>
</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>
System Status - I
n Extended UDDI Metadata Service
• OGC (Open Geographic Information Systems (GIS) Consortium)
specific service registry, up-to-date registry entries, metadata oriented query capabilities and XPATH query capabilities..
• Status: 100 % completed. www.opengrids.org/extendeduddi
• Application domains: PI GIS Grid (UC at Davis), IEISS GIS Grid
(LANL)
n WS-Context Complaint Metadata Services
• WS-Context compatibility, support for shared dynamic context • Status: 100 % completed. www.opengrids.org/wscontext
System Status - II
n
Unified UDDI & WS-Context Metadata Services
• Both WS-Context and UDDI compatibility, uniform
programming interface to dynamic & static metadata, caching (high performance), support for session-failure recovery capabilities
• www.opengrids.org/wscontext
• Application domains: PI GIS Grid (UC at Davis), IEISS
Conclusions & Future Work
n There may be following gaps in Semantic/Traditional Grid
Information Services.
• need for management of widely distributed, shared
session-related dynamic metadata
• need for enabling session failure recovery
• need for uniform search interface to both interaction
independent and conversation-based context
n We introduce a novel architecture addressing these gaps by
taking into account;
• efficient metadata access and storage, decentralized fault tolerant
storage capability, uniform interface to context, minimum response latency
n We plan on investigating research issues related with fault
Location of information and software for
dependent Grid Projects
n
htpp://www.naradabrokering.org p
rovides Web service
(and JMS) compliant
distributed publish-subscribe
messaging
(software overlay network)
n
ht
tp://www.crisisgrid.org is
an OGC (open geospatial
consortium) Geographical Information System (GIS)
compliant
GIS and Sensor Grid.
n