1 / 54

Grid Services I - Concepts

Grid Services I - Concepts. 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.

Download Presentation

Grid Services I - Concepts

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Grid ServicesI - 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” http://www.globus.org/research/papers/ogsa.pdf 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: http://www-unix.globus.org/toolkit/draft-ggf-ogsi-gridservice-33_2003-06-27.pdf Grid Computing, B. Wilkinson, 2004

  8. Grid Computing, B. Wilkinson, 2004 Based on http://www.globus.org

  9. 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 2004 -- 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. Grid Computing, B. Wilkinson, 2004 From http://www.globus.org

  12. Grid Service Example 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

  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”/> </message> <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”/> </message> 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= “http://scheme.xmlsoap.org/soap/http”/> <operation> <soap:operation soapAction= “http://example.com/getFile”/> <input> <soap:body use=“literal”/> </input> <output> <soap:body use=“literal”> </output> </operation> </binding> Grid Computing, B. Wilkinson, 2004

  21. 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. Grid Services Factory From http://www.globus.org 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> 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

  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

More Related