Download presentation
Presentation is loading. Please wait.
1
Grid Services I - Concepts
Grid Computing, B. Wilkinson, 2004
2
Grid service The Global Grid Forum (GGF) developed standard interfaces, behaviors, core semantics, etc. for grid applications based upon web services. GGF introduced the term Grid Service as an extended web service that conforms to the GGF OGSI standard. Grid Computing, B. Wilkinson, 2004
3
Grid Services Standard provides for interoperability of independently developed services Grid services based on extensions of Web Services Grid Computing, B. Wilkinson, 2004
4
The Globus Grid Forum (GGF) standard currently divided into:
Open Grid Services Architecture (OGSA) and Open Grid Services Infrastructure (OGSI) Grid Computing, B. Wilkinson, 2004
5
Open Grid Services Architecture (OGSA)
Grid Computing, B. Wilkinson, 2004
6
OGSA Defines standard mechanisms for creating, naming, and discovering Grid service instances. Addresses architectural issues relating to interoperable Grid services. Described in “The Physiology of the Grid” Grid Computing, B. Wilkinson, 2004
7
OGSI (Open Grid Services Infrastructure)
Based upon Grid Service specification and specifies way clients interact with a grid service (service invocation management data interface, security interface, ...). Details: Grid Computing, B. Wilkinson, 2004
8
Based on http://www.globus.org
Grid Computing, B. Wilkinson, 2004 Based on
9
The core elements of the Open Grid Services Architecture (shared)
This layer eliminated in most recent version of standard under development The core elements of the Open Grid Services Architecture (shared) The Grid 2: Blueprint for a new Computing Infrastructure, Ian Foster, Carl Kesselman and Steve Tuecker Editors, Morgan Kaufmann Chapter 17: “The Open Grid Service Architecture,” by Ian Foster, Carl Kesselman and Steve Tuecker. Grid Computing, B. Wilkinson, 2004
10
Globus Open source grid software toolkit. Version 3 includes:
A complete implementation of OGSI Additional Web service components, some built on top of OGSI. We will use Globus 3.2 in assignment 2. Grid Computing, B. Wilkinson, 2004
11
From http://www.globus.org
Grid Computing, B. Wilkinson, 2004 From
12
Grid Service Example Grid Computing, B. Wilkinson, 2004
The Grid 2: Blueprint for a new Computing Infrastructure, Ian Foster, Carl Kesselman and Steve Tuecker Editors, Morgan Kaufmann Chapter 17: “The Open Grid Service Architecture,” by Ian Foster, Carl Kesselman and Steve Tuecker. Grid Computing, B. Wilkinson, 2004
13
In this example, the client accesses a file transfer service to perform actions such as transfer a file from one storage service to another. Because based upon web services, uses web services technology, XML, WSDL, etc. Grid Computing, B. Wilkinson, 2004
14
WSDL Service Definition
<wsdl:definitions xmlns:tns=“…” targetNamespace=“…”> <message name=“getFileRequest”> <part name=“term” type=“xs:string”/> </message> <message name=“getFileResponse”> <part name=“value” type=“xs:string”/> <portType name=“StorageServicechange”> <operation name=“getFile”> <input message=“getFileRequest”/> <output message=“getFileResponse”/> </operation> </portType> </wsdl:definitions> Grid Computing, B. Wilkinson, 2004
15
<portType> element
Defines interface Includes operations, defined by <operation> <portType name=“StorageServicechange”> <operation name=“getFile”> <input message=“getFileRequest”/> <output message=“getFileResponse”/> </operation> </portType> Grid Computing, B. Wilkinson, 2004
16
In this example, one operation, getFile, which requires one message from client to make request and will generate one message from service as a response: <input message=“getFileRequest”/> <output message=“getFileResponse”/> Grid Computing, B. Wilkinson, 2004
17
<message> element
Defines the message used in operation: <message name=“getFileRequest”> <part name=“term” type=“xs:string”/> </message> <message name=“getFileResponse”> <part name=“value” type=“xs:string”/> Both of these message are composed of a string (xs:string defined in system library). Grid Computing, B. Wilkinson, 2004
18
Message Composition Messages could also contain data of specific data types. (Example in slides 3b) Grid Computing, B. Wilkinson, 2004
19
Binding In addition to definition, there will be a binding part, specifying the message protocols, data encoding, and transport used for sending messages Grid Computing, B. Wilkinson, 2004
20
Binding <binding type=“glossaryTerms” name=“b1”>
<soap:binding style=“document” transport= “ <operation> <soap:operation soapAction= “ <input> <soap:body use=“literal”/> </input> <output> <soap:body use=“literal”> </output> </operation> </binding> Grid Computing, B. Wilkinson, 2004
21
In fact, Java implementations will use RMI underneath.
Grid services concept similar to Remote Procedure Call (RPC), Remote Method Invocation (RMI), only applied over HTTP In fact, Java implementations will use RMI underneath. Grid Computing, B. Wilkinson, 2004
22
Instances of Grid services
Clients interact with instances of grid services. Apart from being the usual approach in an object oriented system, it enables clients to have access to different instances of a service and provides extended functionality to a web service. Allows for transient and private instances. Grid Computing, B. Wilkinson, 2004
23
Differences between a web service and a grid service
Grid services can be: Stateful or Stateless Transient or Non-Transient. A web services is usually thought of as non-transient and stateless. Grid Computing, B. Wilkinson, 2004
24
Stateless Service An instance of a service is stateless if it cannot remember prior events. Grid Computing, B. Wilkinson, 2004
25
Stateful Services An instance of service is stateful if it can remember about prior actions. Implies variables within service that can maintain values between accesses. Grid Computing, B. Wilkinson, 2004
26
Question How can grid services remember information between each access to the service in Java, i.e. how are the variables declared? Answer Grid Computing, B. Wilkinson, 2004
27
Transient Services A transient service instance is one that can be created and destroyed. Usually, they are created for specific clients and do not outlive its clients. Grid Computing, B. Wilkinson, 2004
28
Non-transient (persistent) services
An instance of a service is non-transient if it outlives its client. A Web service is non-transient. It does not have the concept of service creation and destruction. Grid Computing, B. Wilkinson, 2004
29
Question How can instances of grid services be created and destroyed in Java? Answer Grid Computing, B. Wilkinson, 2004
30
“Stateful Transient” Grid Service
One instance of service assigned to each client and only that client can access stored information. The information is retained between accesses and pertains to the client. Service usually destroyed when its purpose has been fulfilled. Grid Computing, B. Wilkinson, 2004
31
“Stateful Non-Transient” Service
Several clients share one instance of the service, and the stored information is available to all clients Grid Computing, B. Wilkinson, 2004
32
Question Suppose a grid service performs mathematical functions such as square, squareroot, etc. What type of grid service is it and what form of interaction would it have with its clients? Answer Grid Computing, B. Wilkinson, 2004
33
Question Suggest a grid service that would stateful and non-transient? Answer Grid Computing, B. Wilkinson, 2004
34
Question What is the sort of service-client interaction if the service is stateless and non-transient? Answer Grid Computing, B. Wilkinson, 2004
35
Factory Services. Grid Services uses a Factory Service to create and manage service instances. Grid Computing, B. Wilkinson, 2004
36
From http://www.globus.org
Grid Services Factory From Grid Computing, B. Wilkinson, 2004
37
Client - Service Interaction
One-to-One -- a client has its own instance of a service. Most likely, instance destroyed with interaction finished. One-to-many -- instance of a services available to multiple clients. Information from service available to multiple clients. Grid Computing, B. Wilkinson, 2004
38
Grid Service Implementation
Can be accessed remotely Potentially stateful Implements one of more WSDL portTypes Grid Service Factories can be used to create instances of services with many portTypes Introspection of a service to return information (list of portTypes it implements) Grid Computing, B. Wilkinson, 2004
39
Grid Computing, B. Wilkinson, 2004
40
Grid Service Addressing
As web services, addressed using URIs. Address called a Grid Service Handle (GSH) in OGSI -- described where service is -- must be unique. Each instance must be unique. Grid Computing, B. Wilkinson, 2004
41
Accessing Grid Service
Grid Service Reference (GSR) -- an OGSI data structure describes how to communicate with service, methods, etc. GSR will be, in general, a WSDL file GSR created by passing a GSH to a resolver service. Grid Computing, B. Wilkinson, 2004
42
Grid Web Service Description Language (GWSDL)
WSDL extended to support extra features in grid services not in web services. Grid Computing, B. Wilkinson, 2004
43
Service Discovery Web service use UDDI registry.
Globus 3 uses its own index service. Grid Computing, B. Wilkinson, 2004
44
Service Data 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. Introduced in OGSI -- exposes a service instance’s state data for query, update, and change. Index service used to locate service based upon user criteria. Grid Computing, B. Wilkinson, 2004
45
Service Data Elements (SDEs)
Named typed XML elements within service data document which define information. May have additional properties such as how they can be modified during lifetime of service instance. Grid Computing, B. Wilkinson, 2004
46
Example WSDL Document for Service Data
<wsdl:definitions xmlns=“…” targetNamespace=“…”> <gwsdl:portType name=“StorageService” extends=“ogsi:GridService”> <wsdl:operation name=getFile> … </wsdl:operation> <sdf:serviceData name=“capacity” type=“xsd:integer”/> <sdf:serviceData name=“location” type=“xsd:string”/> <sdf:serviceData name=“speed” type=“xsd:integer”/> <sdf:serviceData name=“freeSpace” type=“xsd:integer”/> <sdf:serviceData name=“accessControlPolicy” type=“tns:PolicyType”/> </gwsdl:portype> </wsdl:defintions> Grid Computing, B. Wilkinson, 2004 The Grid 2: Blueprint for a new Computing Infrastructure, Ian Foster, Carl Kesselman and Steve Tuecker Editors, Morgan Kaufmann Chapter 17: “The Open Grid Service Architecture,” by Ian Foster, Carl Kesselman and Steve Tuecker.
47
OGSI “Notifications” Client can be informed of changes to a service such as new methods added etc. Grid service configured to inform clients of changes -- notification source. A Client registers interest in changes -- notification sink. Grid Computing, B. Wilkinson, 2004
48
“Notifications” Service must implement a notificationSource interface.
Client must implement a notificationSink interface. Grid Computing, B. Wilkinson, 2004
49
Recent Changes to Grid Standards
Introduction of Web Services Resource Framework (WSRF), January, 2004 Web services vendors recognized importance of OGSI concept but would not adopt OGSI as it was defined (summer 2003) Globus Alliance teamed up with Web services architects and came up with WSRF (Jan., 2004) Beta versions of GT4 are anticipated Sept., 2004 Grid Computing, B. Wilkinson, 2004
50
Changes in WSRF OGSI eliminated as it is very complex -- replaced with web services. Reduced object orientation by using web services, which does not have state. Easier to use existing web service tools. Grid Computing, B. Wilkinson, 2004
51
Grid Computing, B. Wilkinson, 2004
52
http ://www.casa-sotomayor.net/gt3-tutorial/
More Information GGF: Grid services: http :// (Slides and assignment 2 based upon this tutorial) Grid Computing, B. Wilkinson, 2004
53
Material in Books The Grid 2: Blueprint for a new Computing Infrastructure, Ian Foster, Carl Kesselman and Steve Tuecker Editors, Morgan Kaufmann 2004 Chapter 17: “The Open Grid Service Architecture,” by Ian Foster, Carl Kesselman and Steve Tuecker. Grid Computing, B. Wilkinson, 2004
54
What next? Writing our own grid service. (Assignment 2)
Security issues. Grid Computing, B. Wilkinson, 2004
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.