Title: GFK 2004 Winter Workshop
1GFK 2004 Winter Workshop
Development of a Repository System Based on
UDDI for Grid Services
KAIST Kyu-Young Whang 2004.12.2
2Contents
- Objectives
- Activities
- Plan Results
- Research Scope
3Objectives
Plan Results
Activities
Objectives
Research Scope
- Goal Development of a repository system based
on UDDI for Grid services - Developing a repository system that provides
functions for storing - and searching metadata related to grid services
bases on OGSA - Result
- Providing core functions for improving
utilization of metadata related - to grid services
A core system for integrating grid services
4OGSA(Open Grid Services Architecture)
Plan Results
Activities
Objectives
Research Scope
- Integrating Web Service with the Grid framework
- Proposing an open and extensible grid
architecture based on XML which is a standard
model for data exchange, and the HTTP protocol
Emerging demand on a repository system for
storing access information and others in
distributed services
5Grid Application Based on OGSA
Plan Results
Activities
Objectives
Research Scope
- Example of grid application based on OGSA
- (Data mining grid service supporting
bioinformatics)
6Integrating Grid Infrastructure
Plan Results
Activities
Objectives
Research Scope
- UDDI (Universal Description, Discovery, and
Integration) - Definition
- A repository system that supports describing,
discovering and integrating distributed Web
Services - Usefulness
- Supporting the integrating of grid
infrastructure based on Web Services
Integrating Grid with Web service
4. response from service
XML/HTTP
Grid Services
XML/HTTP
3. request for service
XML/HTTP
XML/HTTP
Clients
UDDI
2. find service
Description of Grid Services
1. search for service
7Activities
Plan Results
Activities
Objectives
Research Scope
- Goal of research Development of a repository
system based on UDDI for Grid services - Period of research 2004.4.1 2004.11.30
- Content of research
UDDI 3.0 Specification (total 411 pages)
- UDDI Repository System
- Storage structure for storing the
- UDDI data and system maintenance
- Main functions(API groups)
- Publication API
- Inquiry API
- Subscription API
- Security Policy API
- Custody and Ownership API
- Value Set API
- Replication API
- Web Service Interface
Total 100,000 Lines
8Activities
Plan Results
Activities
Objectives
Research Scope
- Goal of research Development of a repository
system based on UDDI for Grid services - Details of research
9Goal (current year)
Plan Results
Activities
Objectives
Research Scope
- Goal
- Development of extended functions for storing and
searching data - Development of functions for subscription
- The scale of developed system 35,000 lines of
java code - Contents of development
- Extending functions for storing and searching
data based on Web Service (1,700 lines) - Developing extended functions for storing data
(12,500 lines) - Developing extended functions supporting various
kinds of methods for searching data (15,000
lines) - Developing functions for subscription (7,000
lines)
10Target Architecture
Plan Results
Activities
Objectives
Research Scope
Grid Application
Grid Service
3. Request for service and response
XML/HTTP
2. Find service
1. Register service
XML/HTTP
XML/HTTP
Publication API
Inquiry API
Subscription API
Custody and ownership API
Security Policy API
ValueSet API
Replication API
UDDI API
Database connectivity
Odysseus or Other DBMS
UDDI Repository
UDDI Data
11Plan Result
Plan Results
Activities
Objectives
Research Scope
Month
Contents
100
100
100
100
100
12Results (current year)
Plan Results
Activities
Objectives
Research Scope
- Extending functions for storing and searching
data based on Web Service (100) - Development of functions for storing and
searching UDDI data based on the Web Service
Standard - Developing extended functions for storing data
(100) - Development of functions for storing UDDI
data accompanied with query and sorting
conditions - Developing extended functions supporting various
kinds of conditions for searching data (100) - Development of functions for searching UDDI
data using keys, names, and categorical
information - Developing functions for subscription (100)
- Development of functions for notifying
modified UDDI data to users periodically
13Extending functions for storing and searching
data based onWeb Service
Plan Results
Activities
Objectives
Research Scope
- Designing functions for storing and searching
data based on Web Service - Designing input/output interface and logic
modules separately to allow easy modification and
extension of functions - Developing the module for converting the
structure of input data into the internal data
structure - Developing the module for converting the
structure of the result into the structure of the
output data - Extending functions for storing data based on Web
Service - Extending functions for searching data based on
Web Service
Providing functions to any grid applications
based on Web Service standard
14Developing extended functions for storing data
Plan Results
Activities
Objectives
Research Scope
- Studying extended storage and queries supporting
functions for storing and modifying the UDDI data - Storage structure for storing query and sort
conditions - Functions for storing query and sort conditions
- Extended storage for supporting validation check
among query conditions - Modifying queries for storing UDDI data to store
query conditions - Modifying the modules for storing the UDDI data
Supporting the extent functions for searching
data
15Developing extended functions for searching data
Plan Results
Activities
Objectives
Research Scope
- Studying query conditions supporting various
kinds of functions for searching the UDDI data - Various kinds of query conditions defined in the
UDDI Specification - (Approximate match, Exact match, and the
method for searching the UDDI data using
categorical information) - Methods for sorting data defined in the UDDI
Specification - Studying the internal data structure of query
conditions - Structure of queries using query and sort
conditions - Structure of queries using categorical
information - Modifying queries for searching the UDDI data to
use various kinds of query conditions - Modifying functions for searching the UDDI data
Making the development of grid applications easy
16Database schema for query conditions of extended
functions storing and searching data
Plan Results
Activities
Objectives
Research Scope
Schema for storing query and sort conditions
Schema of Categorical information
KEYEDREFERENCEGROUP (Storing categorical code)
IDENTIFIERBAG
FINDQUALIFER
identifierBagKey businessKey keyedReference
keyedReferenceGroupKey categoryBagKey tModelKey bu
sinessKey keyedReference
tModelKey
tMODEL (Storing the metadata of categorical
system)
tMODEL (Storing the condition for searching and
sorting data)
KEYEDREFERENCE (Storing categorical code)
tModelKey name description overviewDoc identifierB
ag categoryBag deleted signature
tModelKey keyName keyValue tModelKey identifierBag
Key categoryBagKey businessKey serviceKey publishe
rAssertionKey keyedReferenceGroupKey
tModelKey name description overviewDoc identifierB
ag categoryBag deleted signature
CATEGORYBAG
categoryBagKey businessKey keyedReference keyedRef
erenceGroup
17Structure for storing and searching data
Plan Results
Activities
Objectives
Research Scope
- Wrapper Class
- o Analyzes the data structures of
input/output parameters - o Converts the data structures of input
parameters into internal data structures - o Calls APIs
- o Converts the structures of the results
into the structures of the output parameters - Publication APIs
- o Processes the functions for storing,
modifying and deleting the UDDI data using the
functions of DBMS - Inquiry APIs
- o Processes the functions for searching
the UDDI data using the functions of DBMS
18Developing functions for subscription
Plan Results
Activities
Objectives
Research Scope
- Designing functions for notifying the modified
UDDI data to users - The phase of subscription
- The phase of storing the request for subscription
storing the request for subscription into DBMS
- The phase of processing the stored request for
subscription processing the stored request for
subscription, send results to client - Developing storage structure and functions for
subscription
Supporting the development of grid application
that can cope with change of metadata related to
grid services
A core module of Grid information system
19Database schema for subscription
Plan Results
Activities
Objectives
Research Scope
SUBSCRIPTION
SUBSCRIPTIONRESULT
subscriptionkeyid subscriptionkey subscriptionfilt
er bindingKeyId notificationinterval maxentities e
xpiresAfter brief
subscriptionkey prev_notify_time next_notify_time
notify_flag authorizedname
SUBSCRIPTIONPOLICY
SUBSCRIPTIONDATA
policy_expire_time policy_min_interval policy_maxe
ntity policy_retain_delete soapauthurl soapsubscri
ptionurl
f_name position authtoken saved_time data
SUBSCRIPTIONPOLICYINTERVAL
policy_notify_interval
20Structure for subscription
Plan Results
Activities
Objectives
Research Scope
- The phase of registering the request for
subscription
UDDI Repository
4. Request registering the request of
subscription
Wrapper Class
Subscription APIs
Client
1. Request for registering the request
of subscription
DBMS
2
3
Internet
(HTTP, XML)
6
Client
5. Process queries
7. Get a response
UDDI repository
2. Analyze the request and Call
subscription APIs 6. Convert the structure
of result and Send result to client
3. Create database queries for storing
the request of subscription and Send
queries to DBMS
Client
Wrapper Class o Analyzes the data
structures of input/output parameters o
Converts the data structures of input parameters
into internal data structures o Calls
APIs o Converts the structures of the
results into the structures of the output
parameters Subscription APIs o Converts
the request for subscription into text of XML
format o Stores the converted data into
DBMS using the functions of DBMS
21Structure for subscription
Plan Results
Activities
Objectives
Research Scope
- The phase of processing the stored request for
subscription
- Subscription Process
- o Searches the registered requests of
subscription periodically - o Converts the data of XML format into
internal data structure - o Calls subscription APIs through the
Wrapper class - o Sends the results to client
- Subscription APIs
- o Processes the functions for searching
the modified UDDI data using Inquiry API - Inquiry APIs
- o Processes the functions for searching
the modified UDDI data using the functions of
DBMS
22Accomplishment
Plan Results
Activities
Objectives
Research Scope
- Technical Excellency
- Functionality
- Providing functions for storing and searching
UDDI data based on the Web Service standard - Providing functions for searching UDDI data
supporting various kinds of conditions and
sorting methods - Providing functions for efficiently searching the
UDDI data by using the IR facilities - Providing functions for subscription
- Providing functions for the dynamic and
efficient integration of distributed web - services in Grid environments(OGSA)
- Compatibility
- Designing and developing a repository system
according to the UDDI specification 3.0 - Using de facto standards of internet
environments, such as HTTP, XML, etc. - Applying to any environments(e.g., OGSA)
satisfying to Web Service standards - Generality
- Being DBMS-independent since our repository
system uses JDBC to communicate with DBMSs - Being platform-independent since our repository
system has been developed in Java - Acquiring the better usability of the
repository system through DBMS/platform- - independent development
23Plan Results
Activities
Objectives
Research Scope
- Publications
- In-Hyuk Song, Jeong-Hoon Lee, Hyo-Sang Lim,
Kyu-Young Whang, and Hyung-Woo - Park, A Design and Development of functions for
storing and searching data in UDDI - Repository System for Grid Services, In Proc. of
the 2004 Korea Information Science Society - domestic Conf., April 2004.
24Future Plans
Plan Results
Activities
Objectives
Research Scope
- Improving and stabilizing functions for
increasing availability of the developed system - Performing stepwise development of other
functions - Developing the ValueSet APIs
- Developing the Security Policy APIs
- Developing the Custody and Ownership APIs
- Developing the Policy APIs