Presentation is loading. Please wait.

Presentation is loading. Please wait.

Grid Services I - Concepts

Similar presentations


Presentation on theme: "Grid Services I - Concepts"— Presentation transcript:

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


Download ppt "Grid Services I - Concepts"

Similar presentations


Ads by Google