• Tidak ada hasil yang ditemukan

Re-engineering Service Registry for Fast Service Search and Composition

N/A
N/A
Protected

Academic year: 2023

Membagikan "Re-engineering Service Registry for Fast Service Search and Composition"

Copied!
191
0
0

Teks penuh

You were my guru, he taught me self-respect, perseverance, hard work and of course love. Thank you for being with me on this journey, which would have been more difficult without your support.

NOTATIONS

Introduction to web services

  • Web services technologies

Simple Object Access Protocol (SOAP): Simple Object Access Protocol (SOAP) enables communication between web services. The term web services is used for services described in WSDL, whereas semantic web services means those described using either OWL-S or WSMO.

Figure 1.1: Service Oriented Architecture
Figure 1.1: Service Oriented Architecture

Web service search and composition

  • UDDI
  • WSDL
  • Publishing and finding WSDL descriptions in UDDI
  • QoS based service selection

Reliability: Reliability is an aspect of online service quality that represents the degree of service maintainability and service quality. Availability : Availability is a quality aspect of whether a web service is present or ready for immediate use.

Figure 1.2: UDDI Core Data Structure
Figure 1.2: UDDI Core Data Structure

Thesis organization

  • Motivating Example
  • Problem Statement
  • Proposed Solutions
  • List of Publications

Build an extended service registry (ESR) capable of providing parameter-based search and composition for web services. Parameter-based search for web services: The extended service registry as such supports parameter-based search for services.

Table 1.1 depicts example web services considered for service composition. Let us assume that a user wants to find a web service that takes {Date, City} as input and outputs {HotelN ame, F lightInf o, CarT ype, T ourCost}
Table 1.1 depicts example web services considered for service composition. Let us assume that a user wants to find a web service that takes {Date, City} as input and outputs {HotelN ame, F lightInf o, CarT ype, T ourCost}

Introduction

Service composition: Service composition can be defined as the creation of a composite service, obtained by combining services available on the Internet. In the following Section 2.3, we survey various proposed approaches for clustering Web services to improve service lookup performance.

Web services search and composition techniques

  • Composition approaches
  • Graph based service composition techniques
  • RDBMS based service composition techniques

Arpinaret al. (2004); Gekas and Fasli (2005)) has been made in recent years on graph-based approaches for the composition of web services, which take into account the matching of input/output parameters of web services. Hashemian and others (Hashemian and Mavaddat (2006)) are working on a web services repository that contains information for a set of existing web services.

Table 2.1: Example web services
Table 2.1: Example web services

Clustering web services

The model uses query plans that plan the invocations of web services and the composition of their inputs and outputs. They use the Quality Threshold (QT) clustering algorithm to cluster web services based on the similarity of 5 features in WSDL documents which include - WSDL content, WSDL types, WSDL messages, WSDL port and web service name.

QoS Based service selection and ranking

Chia Lin et.al (Lin et al. 2011)) propose a QoS-based service selection algorithm (RQSS) to discover viable web services based on functionalities and QoS criteria of user requirements. Our service selection model enumerates the web services that best match the functional and non-functional requirements and constraints specified by the user.

Conclusion

Current service directories are mainly based on Universal Description, Discovery and Integration (UDDI), which is an industry standard for service registries developed to solve the problem of finding web services. We propose a new system called the Extensible Services Registry (ESR)1, which can offer powerful and efficient web service discovery and composition operations by extending UDDI with meta information2.

Introduction

Universal Description, Discovery and Integration (UDDI) (Carolgeyer (2013)) is an industry standard for service registries, developed to solve the problem of service discovery on the web. The above shortcomings of UDDI motivated us to build an extensible service registry (ESR) system capable of providing powerful and efficient web service search and composition operations by extending UDDI with metadata. Lee et al. (2011); Zenget al.(2010)) in tables to pre-calculate all possible web service compositions, which may be unnecessary.

Types of service matches based on input/ output pa- rametersrameters

Partial match services work together to match the input/output parameters of the given query. Exact match: A web service wsi will exactly match web service wsj if the input/output parameters of wsi exactly match all input/output parameters of wsj, i.e. Supermatch: A web service wsi will be a super match of web service wsj if the input/output parameters of wsi are a superset of the input/output parameters of wsj, i.e..

Object Relational Database for service registry

  • WSDL and UDDI Relationship
  • Object relational database as service registry
  • Registry Meta Information

Exact Fullview lists web services with Exact outputmatch and Full inputMatch along with their respective QoS values. Exact partial view shows web services with Exact output match and Partial input match, along with their respective QoS values. Super Fullview lists web services with Super outputmatch and Full inputMatch along with their respective QoS values.

Table 3.1: Example web services There are several advantages of normalization as
Table 3.1: Example web services There are several advantages of normalization as

Performance and Scalability of ESR

  • Experimental setup
  • Comparison of basic keyword search on conventional reg- istries vs ESR approachistries vs ESR approach
  • Process of parameter based service search
  • Performance of output parameter based service search

To enhance our ESR with additional search capabilities, we define algorithms for searching services based on input/output parameters. To enhance ESR with additional search capabilities, we defined algorithms for searching services based on input/output parameters, as described in Section 3.4.3. To incorporate input/output parameter-based service discovery, we implemented Algorithm 1 and evaluated its performance using different output parameter samples as user queries.

Figure 3.2: jUDDI vs ESR for 500 services
Figure 3.2: jUDDI vs ESR for 500 services

Conclusion

To broaden the scope of search and to further improve the performance of parameter-based search on ESR, we propose a two-level preprocessing of service registry. To broaden the scope of input/output parameter matching, we initially group web service input/output parameters based on their similarity1. Furthermore, to speed up parameter-based search in our extensive service registry, we propose an approach to cluster web services based on their output parameter pattern similarity2, using the parameter clusters obtained in the previous step.

Introduction

In addition, to speed up parameter-based search in our extended service registry, we propose an approach to cluster web services based on the similarity of their output parameter pattern using the parameter groups obtained in the previous step. Our clustering approach uses co-occurrence of output parameters to cluster web services. In Section 4.3 that follows, we propose an approach to cluster web services based on frequent patterns of output parameters.

Figure 4.1: Pre-processing registry for service search
Figure 4.1: Pre-processing registry for service search

Semantics for service search

  • Similarity metrics
  • Term equivalence based parameter clustering
  • Parameter clustering algorithm

We therefore make use of semantic similarities of the terms in service registry to form groups of parameter names. A maximum weighted bipartite match is defined as a match where the sum of the values ​​of the edges in the match has a maximum value. The lin and jcn measures increase the information content of the LCS by the sum of the information content of concepts A and B themselves.

Table 4.1: Different placements of Hotel in parameters
Table 4.1: Different placements of Hotel in parameters

Output parameter pattern based service clustering

  • Definitions
  • Frequent output parameter pattern based clustering algorithm
  • Accelerating output parameter based service search

Our approach assumes that each web service in the registry supports at least one regular output parameter pattern. As defined earlier, coverage clustering, CC, is a subset of the set of all regular output parameter patterns, S, that minimally covers the entire service register W. Algorithm F OP C, frequent output parameter pattern-based clustering (F OP C), determines overarching cluster covering the entire service register W with minimum cluster overlap.

Experiments

  • Experimental Setup
  • Parameter clustering results
  • Web services clustering results

Its disadvantage is that the number of clusters must be manually predefined before clustering. In this section, we analyze the performance of Algorithm F OP C in terms of number of clusters in the final covering cluster,CC, and the average cluster overlap inCC. We compared the number of clusters obtained in the final CC with respect to the value of preference factor.

Figure 4.3: Cluster cohesion of generated clusters
Figure 4.3: Cluster cohesion of generated clusters

Conclusion

We use these parameter sets to group services with similar input/output parameters to enable efficient web service lookup based on parameters in service logs. Algorithm 4 for service lookup discussed in Section 4.3.3 lists a set of web services that match the required output parameters. Most existing algorithms for service composition consider services based on exact matches of input/output parameters for composition.

Introduction

However, for the composition of the service, the construction of such a chain of services fails when the output parameters of a preceding service (wsOP) do not exactly match the input parameters of a subsequent service (wsIS). Using these types of agreements, in this chapter we broaden the scope of composition by possibly defining three types of service composition: exact, collaborative, and super composition. In section 5.3 that follows, we explain the service composition process and propose an algorithm for constructing a composition search tree.

I/O parameter and QoS based service selection

  • Functional Match
  • QoS based service selection

The set of output parameters of the matching web service, W SMO , is compared with the desired set, W SDO , and the type of match is determined using Equation 5.2. Then, a measure of deviation of the output parameter, DMPO, is calculated for the matched web service, depending on the type of match, as follows. The set of input parameters of the matching web service, W SMI, is compared with the set of input parameters of the query, QI, and using Equation 5.5, the type of match is determined.

Figure 5.1: Bi-level service selection approach
Figure 5.1: Bi-level service selection approach

Query processing: construction of composition search tree (CST)tree (CST)

  • Service composition types
  • Process of CST Construction
  • CST Construction Algorithm
  • Finding a composition

RIEC is the new set of desired output parameters to be met, ie. DO = RIEC. QO Set of output parameters desired in the requested web service as specified in the user request. QI Set of input parameters that the user is able to provide as specified in the user query.

Table 5.3: Notations used in CST Algorithm
Table 5.3: Notations used in CST Algorithm

Finding best composition

  • Observations

Leanest composition - A service composition that requires a minimum number of web services to satisfy a given query is called the leanest composition. The leanest composition is an optimal composition in that it uses the least possible number of services for service composition. The following observations can be made from the slimmest composition and shortest depth composition algorithms.

Experimental results

In this section, we analyze the quality of services selected in our algorithm versus those selected in Chen's approach (Mobedpour and Ding (2013)). From the obtained results, as depicted in Figure 5.4, we can conclude that our constraint-based approach recovers the matching services better than Chen's method, in terms of the number of matching services retrieved versus the number of matching services available at the registry. . From the obtained results, we can conclude that our approach outperforms Chen's method both in terms of execution time and quality of matched services. a) Number of exact/super matches (b) Number of partial matches.

Conclusion

In the tool we have implemented all the proposed approaches: the extension of service registry (described in chapter 3), parameter grouping and web service grouping (described in chapter 4), service selection (described in this chapter). Upon receiving a user query for a service, the tool uses all of the above approaches and lists matching services if readily available in the extended registry, failing which it lists various service compositions leading to the desired web service. The various assemblies thus obtained are listed as sets of web services participating in the service assembly, along with their service assembly type.

Introduction

In this chapter, we first describe the system architecture together with a brief discussion of the various modules of our tool in section 6.2.

System Architecture

  • Pre-processing Module
  • Service Search Module
  • Service Composition Module
  • User Interface

Exact match: These web services have an exact output match and full input match to the user query. Super match: These web services have a super output match and a full input match with the user demand. Partial match: These web services have a partial output match and a partial input match to the user query.

Figure 6.1: ESR System Architecture
Figure 6.1: ESR System Architecture

Tool Usage

  • Screen-shots of Example 1
  • Screen-shots of Example 2

If you click the Submit button, the User IO and QoS Values ​​page displays all the requirements of the user as entered on the Main page, as shown in fig.6.16. These compositions are displayed in the Compositions Pages as shown in fig.6.18 where the list of web services required for each composition is tabulated separately. These compositions are displayed in the compositions page as shown in fig.6.23 where the list of web services required for each composition is tabulated separately.

Figure 6.17: Web Services Matching User Query
Figure 6.17: Web Services Matching User Query

Conclusion

  • Future Work

The functional requirements are provided by a user as a set of input parameters provided for and output parameters required from the web service. These compositions are returned to the user as a set of services participating in the compositions, regardless of the type of compositions (exact, super and cooperative) involved. Upon failure of a service at any point, a list of services equivalent to the failed service can be obtained from this set of corresponding services.

Gambar

Figure 1.2: UDDI Core Data Structure
Figure 1.5: WSDL to UDDI Mapping
Figure 1.6: Compositions Satisfying User Query
Figure 1.7: Thesis Objective
+7

Referensi

Dokumen terkait