Top Banner
The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton
26

The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Dec 29, 2015

Download

Documents

Emily Reed
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

The GRIMOIRES Service Registry

Weijian Fang and Luc MoreauSchool of Electronics and Computer Science

University of Southampton

Page 2: 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– 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)

Page 3: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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

Page 4: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

UDDI Data Model

Page 5: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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

Page 6: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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)

Page 7: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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

Page 8: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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

Page 9: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Metadataattachment

myGridService Profile

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix uddi: <http://www.mygrid.ecs.soton.ac.uk/uddi.rdf#> . @prefix mygrid: <http://www.mygrid.ecs.soton.ac.uk/mygrid.rdf#> . @prefix mygrid2: <http://www.mygrid.org.uk/ontolology#> . @prefix : <#> . mygrid:Pe577955b-d271-4a5b-8099-001abc1da633 mygrid:uses_resources mygrid2:nucleotide_sequence_database> ; mygrid:uses_method mygrid2:mygrid_bioinformatics_primitive_service_operation> ; mygrid:performs_task mygrid2:pairwise_local_aligning> ; mygrid:is_function_of mygrid2:blastn . _:b1 uddi:hasServiceKey "e577955b-d271-4a5b-8099-001abc1da633" ; a uddi:BusinessService ; uddi:hasName [ rdf:_1 "testService" ; a uddi:NameBag ] ; uddi:hasMetadata [ a mygrid:Profile ; uddi:hasDate "Wed Apr 23 15:06:23 BST 2003" ; rdf:value mygrid:Pe577955b-d271-4a5b-8099-001abc1da633 ; uddi:hasAuthor "Weijian Fang" ] .

Page 10: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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

Page 11: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Grimoires Architecture

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.

RDF Serializer RDF Deserializer RDF Querier

Lifetime Management Access Control Notification

UDDIv2 WS API Metadata WS API WSDL WS API

Page 12: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Lifetime Management

• Each published entity can have a lifetime.

• When lifetime expires, some termination actions can be taken.– Deletion– Deprecation

Page 13: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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.

Page 14: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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

Page 15: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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.

Page 16: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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.

Page 17: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Grimoires vs. jUDDI: Inquiry

jUDDI: 38 ms to discover one service

when there are 2000s in the registry.

Grimoires: 56.9 ms to discover one service

when there are 2000s in the registry.

Page 18: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Persistent Stores: Publication

File-backed in-memory: 62.4 ms to publish one service

when there are 2000s in the registry.

PostgreSQL: 37066 ms to publish one

service when there are 2000s in the registry.

Page 19: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Persistent Stores: Inquiry

File-backed in-memory: 42.7 ms to discover one service

when there are 2000s in the registry.

PostgreSQL: 2173 ms to discover one service when there are 2000s

in the registry.

Page 20: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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.

Page 21: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

WS-Security: InquirySigned: 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.

Page 22: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Metadata Publication

Semantically Publishing 100 Services Against Registry Data Size

0

10

20

30

40

50

60

0 5000 10000 15000 20000 25000

Number of services

Tim

e (s

econ

d)

Delete metadata

Update metadata

Attach metadata

Publish service

Publish WSDL

Attach metadata

Publish service

Page 23: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Discovery by metadataInquiry-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)

Page 24: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

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

Page 25: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.

Download Grimoires

• Grimoires homepage– www.grimoires.org

• Grimoires release– http://twiki.grimoires.org/bin/view/Grimoires/S

oftwareReleases– The latest version is 1.1.0

Page 26: The GRIMOIRES Service Registry Weijian Fang and Luc Moreau School of Electronics and Computer Science University of Southampton.