4c1 GT 4 Services Advanced features: A very brief overview Topics: Resource home Singleton resource Multiple resources Notifications Lifecycles Copyright.

Slides:



Advertisements
Similar presentations
Service Description: WSDL COMP6017 Topics on Web Services Dr Nicholas Gibbins –
Advertisements

Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
BiodiversityWorld GRID Workshop NeSC, Edinburgh – 30 June and 1 July 2005 Resource wrappers, web services, grid services Jaspreet Singh School of Computer.
This product includes material developed by the Globus Project ( Introduction to Grid Services and GT3.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
WS-Resource Framework Adam Belloum Computer Architecture & Parallel Systems group University of Amsterdam
7-2.1 Additional Features of WSRF/GT4 Services A brief outline © 2011 B. Wilkinson/Clayton Ferner. Fall 2011 Grid computing course. Modification date:
Assignment 2 Modifying, Compiling, and Deploying a Simple Service Presenter Information goes Here.
A2.1 ITCS 4010/5010 Grid Computing, 2005, UNC-Charlotte, B. Wilkinson Assignment 2 “Simple” Grid Services Assignment.
Reza Gorgan Mohammadi AmirKabir University of Technology, Department of Computer Engineering & Information Technology Advanced design.
A New Computing Paradigm. Overview of Web Services Over 66 percent of respondents to a 2001 InfoWorld magazine poll agreed that "Web services are likely.
Building Services in WSRF Ben Clifford GGF Summer School July 2004.
4d.1 Grid Computing, B. Wilkinson, 2005 Web Service Resource Framework Notes on “sticky note” assignment.
4a.1 Grid Computing Standards ITCS 4010 Grid Computing, 2005, UNC-Charlotte, B. Wilkinson, slides 4a.
Grid Computing, B. Wilkinson, 20043a.1 WEB SERVICES Introduction.
Building services in WSRF Ben Clifford Draft For GGF summer school, July 2004.
4c1 GT 4 grid services and their implementation Advanced features: An overview Topics: Resource home Singleton resource Multiple resources Notifications.
Copyright B. Wilkinson, This material is the property of Professor Barry Wilkinson (UNC-Charlotte) and is for the sole and exclusive use of the students.
Grid Computing, B. Wilkinson, 20046c.1 Globus III - Information Services.
GT4 Introductory and Advanced Practicals Rachana Ananthakrishnan, Charles Bacon, Lisa Childers Argonne National Laboratory University of Chicago.
1 Modeling Stateful Resources with Web Services ICE Ph.D lecture Byung-sang Kim.
Web Services (tying it all together) and Introduction to Grid Services Concepts These slides are adapted from course material developed by Barry Wilkinson,
GT3 Tutorial Chapter 5, 6, and 7 Lecture for Cluster and Grid Computing, CSCE 490/590 Fall 2004, University of Arkansas, Dr. Amy Apon
Grid Computing Grid computing is all about achieving greater performance and throughput by pooling resources on a local, national, or international level.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
WSDL Kanda Runapongsa Dept. of Computer Engineering Khon Kaen University.
1 Notes adapted from Barry Wilkinson Grid Computing Course UNCC Web Service Resource Framework Creating Globus 4 services.
Grid Computing, B. Wilkinson, 20043b.1 Web Services Part II.
Data Management Kelly Clynes Caitlin Minteer. Agenda Globus Toolkit Basic Data Management Systems Overview of Data Management Data Movement Grid FTP Reliable.
4c.1 Grid Computing, B. Wilkinson, 2005 Web Service Resource Framework Creating Globus 4 services.
1 Stateful Session Beans Stateless Session Beans Michael Brockway Sajjad Shami Northumbria University School of Computing, Engineering & Information Sciences.
WSRF & WSRF’s Application in VO-DAS Haijun Tian ChinaVO
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
Grid Services Grid Enablement of Scientific Applications Present by Mark Joselli Professor S. Masoud Sadjadi.
Web Services Description Language CS409 Application Services Even Semester 2007.
Web Services Management Framework by Umut Bultan & Gül Hünerkar.
Application code Registry 1 Alignment of R-GMA with developments in the Open Grid Services Architecture (OGSA) is advancing. The existing Servlets and.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
This product includes material developed by the Globus Project ( Exercise 6 Discovery: Find a File.
The Anatomy of the Grid Introduction The Nature of Grid Architecture Grid Architecture Description Grid Architecture in Practice Relationships with Other.
Shannon Hastings Multiscale Computing Laboratory Department of Biomedical Informatics.
OGSA Hauptseminar: Data Grid Thema 2: Open Grid Service Architecture
Grid Services I - Concepts
Barry Atkins Heather Kreger Steve Graham Micro Managing – Implementing WSDM in the Small Tiny WSDM Demo.
Metadata Mòrag Burgon-Lyon University of Glasgow.
Web Service Resource Framework WSMO Presentation Jos de Bruijn Digital Enterprise Research Institute http ://
This product includes material developed by the Globus Project ( Excercise 3 Inspection: Add Service Data.
Enabling Grids for E-sciencE PPARC Summer School, May 2005 Web Services Resource Framework– WSRF Richard Hopkins National e-Science Centre,
Transaction Processing CS409 Application Services Even Semester 2007.
On Using BPEL Extensibility to Implement OGSI and WSRF Grid Workflows Aleksander Slomiski Presented by Onyeka Ezenwoye CIS Advanced Topics in Software.
GT3 Tutorial Chapter 3 and Chapter 4 Lecture for Cluster and Grid Computing, CSCE 490/590 Fall 2004, University of Arkansas, Dr. Amy Apon
Data Manipulation with Globus Toolkit Ivan Ivanovski TU München,
Steve Graham WS-ResourceFramework Modeling Stateful Resources With Web services OASIS WSRF TC F2F Wednesday, April 28th, 2004.
Policy-Based Dynamic Negotiation for Grid Services Authorization Ionut Constandache, Daniel Olmedilla, Wolfgang Nejdl Semantic Web Policy Workshop, ISWC’05.
© 2004 IBM Corporation WS-ResourceFramework Service Groups Tom Maguire.
1 G52IWS: Web Services Description Language (WSDL) Chris Greenhalgh
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
GT3 Index Services Lecture for Cluster and Grid Computing, CSCE 490/590 Fall 2004, University of Arkansas, Dr. Amy Apon.
Copyright © 2004, Keith D Swenson, All Rights Reserved. OASIS Asynchronous Service Access Protocol (ASAP) Tutorial Overview, OASIS ASAP TC May 4, 2004.
PIX/PDQ – Today and Tomorrow Vassil Peytchev Epic.
This product includes material developed by the Globus Project ( Exercise 8 Transience: Create and Destroy FileShares.
DEVELOPING WEB SERVICES WITH JAVA DESIGN WEB SERVICE ENDPOINT.
SOAP, Web Service, WSDL Week 14 Web site:
© 2005 Global Grid Forum The information contained herein is subject to change without notice Leading the pervasive adoption of grid computing for research.
November, 2006 Developing Service using GT4 Writing Your First Stateful Web Service in 5 Simple Steps Adam Belloum.
Database (Microsoft Access). Database A database is an organized collection of related data about a specific topic or purpose. Examples of databases include:
Web Service Referencing And Resource Identification Anish Karmarkar Oracle Corp.
WS-Resource Framework University of Amsterdam
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Additional Features of WSRF/GT4 Services
Presentation transcript:

4c1 GT 4 Services Advanced features: A very brief overview Topics: Resource home Singleton resource Multiple resources Notifications Lifecycles Copyright B. Wilkinson, This material is the property of Professor Barry Wilkinson (UNC-Charlotte) and is for the sole and exclusive use of the students enrolled in the Fall 2008 Grid computing course broadcast on the North Carolina Research and Education Network (NCREN) to universities across North Carolina. Oct 15a, 2008

4c2 Stateful GT 4 Grid Services Review “Pure” Web services are stateless. Stateful web services required for Grid computing. WSRF provides stateful web services by having a Web service as a front-end to a stateful “resource.”

4c3 GT 4 services Key aspect is separation of (Web) service and a resource – conceptually if not actually. Provides ability to have “state” without altering the statelessness of Web service.

4c4 Web Service Resource Resource properties Client Web Service Resource Framework (WSRF)‏ Holds information retained between accesses.

Resource properties Name given to data items in the resource Can consist of: –Data values about current state of service (results of calculations etc.)‏ –Metadata: Information about data –Information about whole resource: Termination time, etc. 4c5

4c6 Combined Service Code Resource In Assignment 5, both service code and resource code were held in a single file. Ideally, we would like to have multiple resources for a Web service Having one file not the preferred way except for simple service examples.

4c7 Separate Resource More generally, resource is a (stateful) class. End Point Reference (EPR) is XML document that has URL of service and possibly a resource identification (key)‏ Classes provided for different arrangements: ReflectionResourceProperty class used in assign 5 (implementation of a simple Resource)‏

4c8 Resource Home Resources are managed by Resource Home's Provides resource management functions –for adding resources –for removing resources Although hidden in Assignment 5 where resource and service were in one file, a Resource Home did exist.

4c9 Resource Home Client Web Service Resource home Resource Manages Methods operate on resources properties create/ find resource Client only interacts with stateless web service

4c10 Service and resource code Client Web Service Resource home Resource Manages add() and subtract() methods operate on resource properties create/ find resource void add(int a)‏ void subtract (int a)‏ int value String lastOP

4c11 Resource Home Client Web Service Resource home Resource Previously, service and resource in one file and resource limited to one resource using a globus supplied resource home called ServiceResourceHome

4c12 Service and resource code Client Web Service Resource home “ServiceResourceHome” Resource add() and subtract() methods operate on resource properties create/ find resource void add(int a)‏ void subtract (int a)‏ int value String lastOP ServiceResourceHome returns service object

4c13 Separately service, resource and resource home files

4c14 Separate Service, Resource & Resource Home files Singleton Resources (Single resource)‏ Client Web Service Resource home Resource Three files: the service, the resource home, and the resource. void add(int a)‏ void subtract (int a)‏ int value String lastOP

4c15 Multiple Resources Suppose there are multiple resources that a service might interact with: Client Web Service Resources

4c16 Creating Resources WS-Resource Factory Pattern Traditional object-oriented approach to creating resources is to use a “factory” service: Factory service is responsible for creating instances of resources. Each resource assigned a unique “key”, which together with service URI identifies WS-resource pair. (Endpoint Reference)‏

4c17 Client “Instance” Service Resources WS-Resource Factory Pattern Factory service Request resource creation Request operation on resource Create Perform operation Return WS- Resource EPR

4c18 Relationship with Resource Home Client Service instance Resource Home Resource Manages Methods operate on resources properties Find resource Factory Service Request resource creation Use Resource Home to create resource Request operation

4c19 Factory service Create Resource operation endpointReference createResource()‏ Returns an EPR to the newly created WS- Resource. “Fully qualified” EPR to include URI of service and key of resource Client needs to know location of factory service.

4c20 WS-Addressing Terms Endpoint – the destination where the web service can be accessed. Endpoint reference, EPR –describes the destination: includes the destination location as URI, but can have other parameters like a key

4c21 Endpoint reference, EPR Like all WS-* specs, defined in terms of XML. Defined as complex type. Can contain: Address (a URI) (required)‏ Reference Properties Reference Parameters Port type Service name Policy elements Corresponds to portType and service of WSDL document

4c22 Minimum is simply service address, using tag:

4c23 Reference Properties Used to identify resource properties in EPR: 28

4c24 SOAP message WS-Addressing standard requires that contents of: and must appear in SOAP’s header:

4c25 Question Q: Why would one want to have multiple resources for a Web service?

4c26 Lifecycle Management Lifecycle mechanisms available in WSRF. GT4 provides mechanisms to specify when a resource is automatically destroyed. Immediately by invoking destroy operation through the web service Scheduled some time in the future Leased-based lifecycle management

4d.27 Immediate Destruction Destruction is requested through the web service by the client: math.destroy(new Destroy()); Notice that the factory is responsible for creating a Resource, but the service instance destroys it. Command line: globus-wsrf-destroy -e EPR1234.epr File containing EPR of resource

4d.28 Scheduled Termination Time Termination time exposed as a resource property. Can be set with GT4 command: wsrf-set-termination-time Example wsrf-set-termination-time -e EPR1234.epr 100 File containing EPR of resource Termination time in seconds

4d.29 Lease-based Lifetime In lease-based model, resources must be kept alive by interested parties, otherwise resource dies. A lifetime for a service is set after which the service is destroyed. Interested parties (clients) must renew the lease (reset the termination time) or it will be destroyed. Clean up without having to use a destroy operation explicitly.

4c30 Question Q: Why would one want to have a termination time set for a resource?

4c31 Resource Properties

Resource Properties are declared in the WSDL file This is a schema because it describes how the properties must be exchanged in XML (between clients, services, etc.)‏

Contents of Math.xml Schema...

Resource Properties MathService_rp has Resource Properties implemented the correct way Do globus-build-service.py rp deploy the gar restart the container

Client Code Examples MathPortType math = locator.getMathPortTypePort(endpoint); math.add(10); updateRP(endpoint, MathConstanst.RP_VALUE,“100”); printResourceProperties(math);

Client Code Examples valueRP = math.getResourceProperty( MathQNames.RP_VALUE); value = valueRP.get_any()[0].getValue(); System.out.println("Value RP: " + value);

Resource Properties from the Command Line C:\> wsrf-query -s http//localhost/wsrf/ services/examples/core/rp/MathService <ns1:MathResourceProperties xmlns:ns1=” examples/mathService_instance_rp”> 100 ADDITION

Resource Properties from the Command Line C:\>wsrf-get-property -s http//localhost/wsrf/services/examples/ core/rp/MathService { examples/mathService_instance_rp}Value <ns1:Value xmlns:ns1=”http...”>100

4c39 Notifications

4c40 Notifications Notifying clients when something interesting happens. Example might be when a resource property reaches a certain value Could use polling but this is very inefficient. WS-notification defines mechanisms.

4d.41 Resource property changes Examples: –Changes to resource property values. –Methods added –Methods removed –Resources destroyed

4d.42 Subscribe for notifications Need client to “subscribe” to receive notifications. Subscriptions are for a particular topic. Resource implemented with GT 4 classes that provide for automatic notifications whenever property changes.

4d.43 Automatic notifications Client Service Resource property Write value Notification that value changed value Subscribed for notification Resource Listening client

4c44 GT 4 Information Services Monitoring and Discovery Services (MDS) Principal components: Index service Trigger service WebMDS

4c45 Index service WebMDS Trigger service Information services

Globus core does not include information services such as index services. When installed, would see it in list of services, e.g.: 4c46 Index service Trigger service

4d.47 Container Index service (resources with resource properties)‏ Index Service GT 4 provided with an index service that can maintain a list of available resources.

4c48 ResourceHome add method Register resource in index service Remove destroy Resource Index service Resource properties XML Index Service “add” method of ResourceHome used to create resource. Override method to include registering resource with lindex service.

4d.49 Querying Index Service wsrf-query Browse index service with the GT4 command: wsrf-query Example wsrf-query –s DefaultIndexService '/*' which will list resource properties in an XML format.

4d.50 “Community” Index Service A remote index service that holds all the index services of the “virtual organization.” For example a community index service might be at: services/DefaultIndexService

4d.51 Local Index service Resources Community index service torvalds.cis.uncw.edu/wsrf/ services/DefaultIndexService Service Client

4d.52 Querying Community Index Service Have Community Index Service running. Use wsrf-query command: $GLOBUS_LOCATION/bin/wsrf-query -s ices/DefaultIndexService '/*' Should see contents of all local index services.

4d.53 Local Index service Resources Service Client Local Index service Resources ServiceClient Student 1 Index entry Student 2 Index entry Student 1 container Only container and GT 4 core needed at each site to handle services. Student 2 container Community index service

4d.54 Resource Discovery The local and community index services can be searched for a particular resource property. Since Resources properties are XML, can use “XPath” queries for searching and retrieval.

4d.55 XML Path Language (XPath)‏ W3C recommendation, 1999 A query language for search XML documents. Queries formed by identifying a route to the desired data. For details:

MDS4 Trigger Service Subscribe to a set of resource properties Evaluate that data against a set of pre- configured conditions (triggers) When a condition matches, action occurs – is sent to pre-defined address –Website updated 4c56 From: Monitoring and Discovery in a Web Services Framework: Functionality and Performance of Globus Toolkit MDS4 Jennifer M. Schopf, Sept 11, 2006

WebMDS Web-based interface to display resource property information. Front-end to index services. Sample: webmds?info=indexinfo&xsl=servicegroupxsl 4c57

4c58 More Information Book Globus Toolkit 4 Programming Java Services Borja Sotomayor and Lisa Childer Morgan Kaufmann, On-line GT4 services: tutorial/