Grid services vs. Web services

advertisement
Grid services vs.
Web services
Dana Petcu, Georgiana Macariu,
Marc Francu, Alexandru Carstea
IeAT, Romania
Content

Grid ws. Web services



Similarities
What is different?
Overview of the SCIEnce activities at
Timisoara
Similarities



Special forms of distributed computing
Both typically deal with wide-area distributed
computing
A Grid service is basically a Web service with
some additions

E.g. to make it able to store state information
persistently rather than transiently at the server
beyond the lifetime of a single request
Differences

Grid services have different goals from pure
Web services:



WS: conceived to share information, (eg:
http://www.webservicesx.net/globalweather.asmx
GS: conceived to share computing power and
resources like disk storage databases and
software applications (eg: EGEE)
“Grid service = Grid computing + Web services”
Every Grid service “is a” Web services, but
not every Web service “is a” Grid service
Web service






A software system built to support communication between two
processing elements that are interconnected through a network
The most important requirement: interoperability
Interaction client-service provider is carried out using XML based
messages
Messages are exchanged using an underlying protocol such as
HTTP or SMTP.
A web service offers an interface described by a document that
can be processed by a machine in automatic fashion
Use SOAP standard or REST standard
 REST standard imposes that a request must specify all the
information needed by the server to service the request (no
stateful information should be kept at server level)
 For SOAP standard the interface is defined using WSDL
WS stack (W3C Web Services Architecture Document)
Grid services extends Web services by:





stateful services,
service instantiation,
named service instances and a two-level
naming scheme,
a base set of service capabilities, including
discovery facilities,
lifetime management
Statefulness





An instance of a service is stateless if it
cannot remember prior events.
An instance of service is stateful if it can
remember about prior actions (-> vars. within
service to maintain vals between accesses)
A WS is usually stateless, A GS is stateful
A WS can be stateful using ad hoc methods
Grid services are bringing uniformity and
consistency in this topic
Statefulness





State in the Web service is generally regarded as a
bad thing!
Stateless Web services storing state information?
By separating the Web service from the state
information!
State keep it in a separate entity called resource
Each resource has a unique key
Statefull interaction with a Web service: instruct the
Web service to use a particular resource.
Web Service + Resource = WS-Resource
Web services - stateless vs. stateful : bank service analogy
(from www.neresc.ac.uk/events/presentations-talks/WebGridServices.pdf)
Instantiation


WS: no different discrete units of state
(instances) named in a consistent manner
GS:


namable state
GS specification defines:



Factories and
Lifetime management services
A factory implements an operation that creates a
new service instance and returns its handle and
its initial termination time.
Instantiation
Named service instances


WS: named by URIs
GS:


named at a first level by a Grid Service Handle
(GSH) - an URI, an abstract name that refers only
an instance (no information like the location,
implementation, or status of the service)
A GSH is resolved at a second level into a Grid
Service Reference (GSR)
From: www.cs.indiana.edu/~ysimmhan/l/talks/simmhan-b534-2004.pdf
GSH = http://extreme/services/foo/my-service
GSR (URL) = http://ooty:8080/foo-service
My Grid Service
4
Invoke method
on service
GSH = http://extreme/services/handle-resolver
GSR (URL) = http://rainier:10101/handle-resolver
Service Group
Registry
Handle Resolver
Get GSR for registry GSH
http://extreme/services/serviceregistry.
Returns http://rainier:20202/handleresolver
GSH = http://extreme/services/service-registry
GSR (URL) = http://rainier:20202/service-registry
1
SDE:
<entry>
<locator>
<handle>http://extreme/servic
es/foo/my-service</handle>
</locator>
<content>
<foo>myContent</foo>
</content>
</entry>
2 Get all Entries about services.
3
Select your service and get GSR for
GSH
http://extreme/services/foo/myservice. Returns
http://ooty:8080/foo-service.
Client
Returns Metadata Content and the
GSH
(http://extreme/services/foo/myservice)
Handle Resolver URL = http://rainier:10101/handle-resolver
Your Service Handle = http://extreme/services/foo/my-service
OR locate from Registry GSH = http://extreme/services/service-registry
Service discovery



WS: UDDI registry, allow introspection and
discovery of static information such as service
interfaces and associated policy
GS: need support for transient service instances
that are created or destroyed dynamically!
GT4


uses an own index service which locate service based
upon user criteria
service discovery is based on Service Data Elements
(SDEs) = a structured collection of information associated
with a Grid service that allows a user to choose a service
that satisfies its needs, e.g. functionality speed, cost.
Lifecycle

related to the issues of resource reclamation
associated with services in the event of



WS: cycle controlled by the Web Server



failures (eg. loss of network connectivity)
or lack of interest by any relevant clients (eg. service no
longer ref. by any active process)
dynamically allocated when a request arrives
deallocated when that request/session ends
GS:


set a time (in SDE) when a service will self-destruct unless
kept alive by subsequent increases in its termination time
service instance need not to be explicitly destroyed
Transient vs. non-transient service




A transient service instance is one that can be created and
destroyed (eg. for specific clients)
An non-transient (persistent) instance of a service outlives its
client
WS: usually non-transient
GS: can be
 stateful transient:




an instance assigned to each client and only that client can access
stored information;
information retained between accesses and pertains to the client;
instance usually destroyed when its purpose has been fulfilled
stateful non-transient:


several clients share one instance of the service,
Stored information is available to all clients.
Current standards


GT4 and WSRF.NET currently implements
Web Services Resource Framework (WSRF)
that specifies stateful WS that extends WSs
WSRF: a collection of specifications






WS-ResourceProperties
WS-ResourceLifetime
WS-ServiceGroup
WS-BaseFaults
[WS-Notification]
[WS-Addressing]
References








M.C. Brown, Build grid applications based on SOA. Concepts behind SOA and how
to move grid applications to SOA model, DeveloperWorks -- IBM's resource for
developers, 2005, www-128.ibm.com/developerworks/grid/library/gr-soa/
A. Grimshaw, Grid services extend Web services, SOAWebServices Journal 506,
2003, webservices.sys-con.com/read/39829.htm.
D.Petcu, Between Web and Grid-based Mathematical Service, Procs. ICCGI, IEEE
Computer Society Press, 2006, science.ieat.ro/science/research/publications/
K. Champion, Stateless and stateful WS in the Grid community, 2004,
searchwebservices.techtarget.com/expert/KnowledgebaseAnswer/
P. Shread, Web Services a Good Start For Grid, But Not Enough, Grid Computing
Planet, 2003, www.gridcomputingplanet.com/news/article.php/3281_1571191
B. Sotomayor, Globus Toolkit 4 Programmer's Tutorial, gdp.globus.org/gt4-tutorial
H. Stockinger, Grid Computing: A Critical Discussion on Business Applicability, IEEE
Distributed Systs Online,vol.7,no.6,2006, dsonline.computer.org/portal/site/dsonline
WSRF, http://docs.oasis-open.org/wsrf/
SCIEnce activities at
Timisoara
http://science.ieat.ro
JRA1




Access to Grid and Web services
Service discovery
Facilitate the creation on Grid symbolic
services
…
Activities

A tool for accessing services from a CAS
Novelty:



Overviews papers:


Automatic creation of Grid/Web clients
Generic for any CAS
Identify state of the art
Research: propose some improvements for
CAS related to Grids
API
In the next talk…
 Now only some test interface
API Exercise: http://194.102.62.36/portal

Exercise portal: Web services
Select Web service
Select method
Get arguments
Get results
Accessing a Grid service
Exercise portal-selecting a Grid service
Exercise portal-selecting a method
Exercise portal-specify the arguments
Exercise portal: getting the result
Papers (http://science.ieat.ro/science/research/publications/)





D. Petcu, D. Tepeneu, M.Paprzycki, T.Ida, Symbolic Computations on
Grids, chapter 6 in "Engineering the Grid: status and perspective", eds.
Beniamino di Martino, Jack Dongarra, Adolfy Hoisie, Laurence Yang,
and Hans Zima, American Scientific Publishers, 2006, pp. 91-107
D. Petcu, Improving Computer Algebra Systems by Using Grid
Services, in 1st Austrian Grid Symposium, J. Volkert, T. Fahringer, D.
Kranzlmuller, W. Schreiner (eds.), Austrian Computer Society, Band
210, 2006, 102-110
D.Petcu, C.Bonchis, C.Izbasa, Symbolic Computations based on Grid
Services, Int. Journal of Computers, Communications and Control (RO),
Vol. 1, no. 1, 2006, 44-50
D.Petcu, Between Web and Grid-based Mathematical Services, ICCGI,
1-3 August 2006, IEEE Computer Society Press, eds. P. Dini, C.
Popoviciu, C. Dini, Gunter Van de Velde, E. Borcoci
D.Petcu, Mathematics on the net: state of the art and challenges, 8th
French-Romanian Colloquim on Applied Mathematics, Chambery,
France, August 28-31, 2006, invited talk
Download