1 / 26

The GRIMOIRES Service Registry

The GRIMOIRES Service Registry. Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton. The Grimoires Registry. Grid RegIstry with Metadata Oriented Interface: Robustness, Efficiency, Security

page
Download Presentation

The GRIMOIRES Service Registry

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. The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton

  2. The Grimoires Registry • Grid RegIstry with Metadata Oriented Interface: Robustness, Efficiency, Security • A Grimoire is a magician's manual for invoking demons (Oxford English Dictionary) • Pronunciation: [grimwar / grimwars] • The Grimoires registry hosts descriptions of services and workflows, which a scientist can use for forming complex experiments, for discovering and for invoking them. • Originally developed for the myGrid Project (www.mygrid.org.uk) • Currently, a managed programme project of Open Middleware Infrastructure Institute (www.omii.ac.uk)

  3. UDDI • Service-Oriented Architecture • Universal Description, Discovery and Integration • The service publication and discovery specification adopted by WS community • The latest version is v3 (v2 is still widely used) • The UDDI standard defines • The data model to describe services • The API to publish/discover services

  4. UDDI Data Model

  5. What UDDI lacks • Rigid data model with limited extensibility • Prevents customised service description • WS technical interface is expressed as an outgoing link (through tModel). • Prevents discovery based on technical interface detail • Burden is on clients to parse multiple external documents and reason over them • No metadata support published by third parties • No Lifetime management

  6. Metadata Annotation • Metadata annotation helps service discovery • Customized service description • Service consumers can share experience in service discovery and invocation • Metadata examples • (Service, UseResource, aDatabase) • (InputMessage, SemanticType, NucleotideSequence)

  7. Grimoires Functionality • UDDI interface • UDDIv2 compliant • WSDL interface • Publish and inquire for the WSDL descriptions, for instance, • Publish a WSDL by its URL • Find the input message of an operation. • Given an operation, find out which WSDL description it belongs to

  8. Grimoires Functionality (contd.) • Metadata interface • Attach a piece of metadata to UDDI entities (business and service), WSDL entities (operation and message part), metadata • The metadata can be a String, a URI (representing an ontology concept), or RDF triples (arbitrary graphs). • Publication by provider, consumer or third parties • Retrieve metadata attached to an entity • Discover entity by metadata • All information is uniformly represented in RDF

  9. myGrid Service Profile Metadata attachment

  10. Grimoires Implementation • Deployment environments • OMII 2.0 distribution, GT4, and standard Tomcat/Axis • Use RDF triple store as back end • Supported triple stores: Jena and Sesame • The Sesame support is through a Jena-Sesame-Model • Lifetime management • Security (WS-Security) and access control • WSRF

  11. Grimoires Architecture UDDIv2 WS API Metadata WS API WSDL WS API Lifetime Management Access Control Notification RDF Serializer RDF Deserializer RDF Querier Jena RDF API Jena-Sesame-Model Jena DB Store Jena File-backed In-memory Store Sesame DB Repo. Sesame File-backed In-memory Repo. Sesame Native Repo.

  12. Lifetime Management • Each published entity can have a lifetime. • When lifetime expires, some termination actions can be taken. • Deletion • Deprecation

  13. Authentication and access control • Uses signature creation and verification facility of OMII 2.1.0 • Client-side SOAP message signed; server side verifies and extracts X509DN • X509DN used as input to an access control engine implemented using XACML • X509DN and UDDI request formatted into XACML request • Request is evaluated against existing XACML policy in registry • Can be mapped into role-based context • Ongoing work on allowing XACML statements to be provided by registry clients as metadata attachments.

  14. WSRF • Expose the registry as a WS-Resource • Registry contents exposed as XML Document • Each registry entry can also be seen as a WS-Resource • Metadata = WS-Resource properties • Universal WSRF setters and getters • Work in progress, making use of GT4 container

  15. Benchmarking Methodology • Two fundamental operations in a service registry: service publication and discovery. • We want to investigate to what extent the publication and discovery overheads are affected by the registry data size.

  16. Grimoires vs. jUDDI: Publication jUDDI: 226.3 ms to publish one service when there are 2000s in the registry. Grimoires: 37.8 ms to publish one service when there are 2000s in the registry.

  17. Grimoires vs. jUDDI: Inquiry Grimoires: 56.9 ms to discover one service when there are 2000s in the registry. jUDDI: 38 ms to discover one service when there are 2000s in the registry.

  18. Persistent Stores: Publication PostgreSQL: 37066 ms to publish one service when there are 2000s in the registry. File-backed in-memory: 62.4 ms to publish one service when there are 2000s in the registry.

  19. Persistent Stores: Inquiry PostgreSQL: 2173 ms to discover one service when there are 2000s in the registry. File-backed in-memory: 42.7 ms to discover one service when there are 2000s in the registry.

  20. WS-Security: Publication Signed: 1532 ms to publish one service when there are 2000s in the registry. Not signed: 88 ms to publish one service when there are 2000s in the registry.

  21. WS-Security: Inquiry Signed: 987 ms to discover one service when there are 2000s in the registry. Not signed: 98.9 ms to discover one service when there are 2000s in the registry.

  22. Metadata Publication Attach metadata Publish service

  23. Discovery by metadata Inquiry-by-name: 56.9 ms to discover one service when there are 2000s in the registry. Inquiry-by-metadata: 80.5 ms to discover one service when there are 2000s in the registry. SELECT ?key WHERE (?service, <rdf:type>, <uddi:BusinessService>) (?service0, <uddi:hasName>, ?nameBag) (?nameBag, ?v, “a good service") (?service0, <uddi:hasServiceKey>, ?key) SELECT ?key WHERE (?service, <rdf:type>, <uddi:BusinessService>) (?service0, <meta:hasMetadata>, ?metadataBag) (?metadataBag, ?v, ?metadata) (?metadata, <meta:hasMetadataType>, <meta:useResource>) (?metadata, <meta:hasMetadataValue>, “blastn database”) (?service0, <uddi:hasServiceKey>, ?key)

  24. Summary • Grimoires is a UDDIv2 compliant service registry • Grimoires provides metadata annotation/discovery and WSDL registration/discovery functions that are not supported by UDDI • Grimoires offers lifetime management • Grimoires is efficient • In Progress and future work: • WSRF view of registry • Notifications

  25. Download Grimoires • Grimoires homepage • www.grimoires.org • Grimoires release • http://twiki.grimoires.org/bin/view/Grimoires/SoftwareReleases • The latest version is 1.1.0

More Related