660 likes | 832 Views
Web Service Discovery and Selection: Pragmatic Approaches. Natallia Kokash PhD student, XX cycle. Tutor: Vincenzo D’Andrea Adviser: Marco Aiello. DSSOC people. Marco Aiello <aiellom@dit.unitn.it> Fabio Casati <casati@dit.unitn.it> Vincenzo D’Andrea <vincenzo.dandrea@unitn.it>
E N D
Web Service Discovery and Selection:Pragmatic Approaches Natallia Kokash PhD student, XX cycle Tutor: Vincenzo D’Andrea Adviser: Marco Aiello
DSSOC people • Marco Aiello <aiellom@dit.unitn.it> • Fabio Casati <casati@dit.unitn.it> • Vincenzo D’Andrea <vincenzo.dandrea@unitn.it> • Maurizio Marchese <maurizio.marchese@unitn.it> • Ganna Frankova <frankova@dit.unitn.it> – 3d year • Natallia Kokash kokash@dit.unitn.it – 3d year • GR <gr@dit.unitn.it> – 3d year • Alexander Ivanyukovich<a.ivanyukovich@dit.unitn.it> – 4th year • Alexander Lazovik <lazovik@dit.unitn.it> – 5th year University of Lecce
Scope • Web Service Composition • Distributed Systems • Web Service Discovery • Quality of Service (Security) • Intellectual Property and Licensing University of Lecce
Introduction • Discovery of web services • Structural interface matching • Hybrid methods • Behavioral interface matching • QoS Issues • Web service selection algorithms • Risk evaluation • Recommendation systems as a tool for web service selection University of Lecce
Web Services • A Web service is • a software system • identified by a URI, • whose public interfaces and bindings are defined and described using XML. • Its definition can be discovered by other software systems. • These systems may then interact with the Web service in a manner prescribed by its definition, using XML based messages conveyed by internet protocols. [Web Services Architecture, W3C Working Draft 14 November 2002, from http://www.w3.org/TR/ws-arch/ on 5th March 2002] University of Lecce
Service Registry (UDDI, ebXML) Bind Publish Find Service Provider Service Requestor SOA and Web Services Service Description Service Behavior Descriptions Service Interface Descriptions Service Quality Service Service-oriented application University of Lecce
Web Services Discovery • Matching – meeting the functionality required by a user with specifications of existing services • Generic (heuristics, domain-independent ontologies) • Personal (preferences, specific functions and patterns for comparing requests and existing services) • Community (domain-specific ontologies) • Selection – choosing a service with the best quality among those able to satisfy the user’s goal University of Lecce
Thesis objectives • It is difficult for a user to write a correct request. • Automated semantic matching is not feasible. • Users are in different conditions. • QoS characteristics are constantly changing. • Collective user experience can be used to improve service selection. • Domain specific quality factors should be involved in service selection. University of Lecce
Service Description • Web Service Description Language (WSDL) • Identity – unique identity of the interface • Input/Output– the meaning of input and output parameters • Faults – specify the abstract message format for any error messages that may be output as the result of the operation • Types – declare data types used in the interface (XML Schema) • Documentation – natural language service description and usage guide University of Lecce
Semantic Web Services (1) • Managing End-To-End OpeRations (METEOR-S) • Semantic Web Services Framework (SWSF) • Web Service Modelling Ontology (WSMO) • Ontology Web Language for Services (OWL-S) • Preconditions – a set of semantic statements that are required to be true before an operation can be successfully invoked • Effects – a set of semantic statements that must be true after an operation completes execution after being invoked. • Restrictions – a set of assumptions about the environment that must be true • Quality of Service – non-functional parameters such as response time, execution cost, capacity, etc. University of Lecce
OWL-S Resource Service provides • Does not provide context identification • Does not describe objects used by the service but not provided by the client • Does not describe what service does presents supports Service Profile describedBy Service Grounding Service Model What does the service do? How is it accessed? How does it work? University of Lecce
Semantic Web Services (2) • WSDL-S • The semantics of service’s operations are directly added to WSDL files • Easy to deploy and use • Does not support full features of OWL-S process ontology University of Lecce
Motivating example University of Lecce
WS Matching Algorithm • Requirements: • Matched advertisements are returned in sorted order, according to their degree of match • For each element a matching confidence is known (easy to see where problems may occur) • Tries to catch semantics University of Lecce
Similarity ? Name, Description, Operations …. Name, Description, Operations … A X B Y Z Web Service Web Service Similarity ? Name, Description, Input, Output … Name, Description, Input, Output …. a x b y c Operation Operation Web Service Interface Matching University of Lecce
Matching Evaluation Hybrid VSM Semantic Other WS Matching Algorithm • http://dit.unitn.it/~kokash/sources • Tokenization • sequences of more than one uppercase letters • sequences of an uppercase letter and following lowercase letters • sequences between two non-word symbols Example: ”tns:GetDNSInfoByWebAddressResponse” {tns, get, dns, info, by, web, address, response}. • Word stemming • Stopwords removing Registry Parsing Tagging Indexing Query Ontology Meta- data University of Lecce
Requested operation Provided operation Service Operation Message Part Type Element Name Operations Description Name Input message Output message Description Name Parts Description Name Type Description Name Elements Description Name Description wij Structural Matching • Maximum weight bipartite matching • Kuhn’s Hungarian method (polynomial time) • Define overall similarity score • Query type: similarity or inclusion University of Lecce
Lexical Matching Metric Vector-Space Model (VSM) tf-idf Semantic • semantic matching of word pairs • semantic matching of sentences VSM+WordNet • Seco, N., Veale, T., Hayes, J.: “An intrinsic information content metric • for semantic similarity in WordNet”, ECAI, 2004, pp. 1089-1090 University of Lecce
Experimental Results (Test 1) • 40 web services • 5 groups 10 % 40% 15% 45% VSM Semantic University of Lecce
Experimental Results (Test1) Average precision Processing time University of Lecce
Experimental Results (Test2) • 371 web services • 68 groups University of Lecce
Related Work • [Sajjanhar’04] Sajjanhar, A., Hou, J., Zhang, Y.: ”Algorithm for Web Services Matching”, APWeb, 2004, pp. 665–670. • [Bruno ’05] Bruno, M., Canfora, G. et al.: ”An Approach to support Web Service Classification and Annotation”, IEEE International Conference on e-Technology, e-Commerce and e-Service, 2005. • [Corella’06] Corella, M.A., Castells, P.: “Semi-automatic semantic-based web service classification”, International Conference on Knowledge-Based Intelligent Information and Engineering Systems, 2006. • [Dong’04] Dong, X.L. et al.: ”Similarity Search for Web Services”, VLDB, 2004. • [Platzer’05] Platzer, C.; Dustdar, S.: “A vector space search engine for Web services”, Proceedings of IEEE European Conference on Web services (ECOWS), 2005. • [Stroulia’05] Stroulia, E., Wang, Y.: ”Structural and Semantic Matching for Accessing Web Service Similarity”, International Journal of Cooperative Information Systems, Vol. 14, No. 4, 2005, pp. 407-437. • [Wu’05] Wu, J., Wu, Z.: ”Similarity-based Web Service Matchmaking”, IEEE International Conference on Services Computing, 2005, pp. 287-294. • [Zhuang’05] Zhuang, Z., Mitra, Pr., Jaiswal, A.: ”Corpus-based Web Services Matchmaking”, AAAI, 2005. • [Verma’05] Verma, K., Sivashanmugam, K., et al.: “Meteors wsdi: A scalable p2p infrastructure of registries for semantic publication and discovery of web services.” Journal of Information Technology and Management. Special Issue on Universal Global Integration, Vol. 6, No.1, 2005, pp. 17-39. University of Lecce
Hybrid algorithms Hybridization Algorithms Data Mixed Switching Augmentation Combination Cascade University of Lecce
Hybrid algorithms: Experimental results University of Lecce
Future work • Hybrid algorithms • Rocha, C. et al.: “A Hybrid Approach for Searching in the Semantic Web”, International World Wide Web Conference, 2004, pp. 374-383) • Castells, P., Fernandez, M., Vallet, D.: “An Adaptation of the Vector-Space Model for Ontology-Based Information Retrieval”, IEEE Transactions on Knowledge and Data Engineering, 2007, to appear. • Empirical evaluation of different algorithms using a similar collection of web services University of Lecce
Related work • Syeda-Mahmood, T., Shah, G., et al.: “Searching service repositories by combining semantic and ontological matching”, International Conference on Web Services, 2005, pp. 13-20. “(1) The domain-independent relationships are derived using an English thesaurus… (2) The domain-specific ontological similarity is derived by inferencing the semantic annotations associated with web service descriptions. …better relevancy results can be obtained for service matches from a large repository, than could be obtained using any one cue alone.” • Klusch, M. Fries, B., Sycara, K.: “Automated Semantic Web Service Discovery with OWLS-MX”, AAMAS, 2006. “…under certain constraints logic based only approaches to OWLS service I/O matching can be significantly outperformed by hybrid ones.” University of Lecce
Composition Patterns • Sequence • Loop • AND split followed by AND join. • AND split followed by a m-out-of-n join • XOR split followed by a XOR join • OR split followed by OR join • OR split followed by a m-out-of-n join University of Lecce
Notation | |n + +n s1 University of Lecce
Behavioral Interface matching • How to obtain a (composite) service, if there is no direct match for a request in current service registry? • Behavioral interface - interfaces that capture ordering constraints between interactions. • BPEL4WS – Business Process Execution Language for Web services University of Lecce
Source interface A Flow B Target interface A Gather C B B A Scatter C A Burst Bi Ai Collapse B A Hide Interface transformation University of Lecce
References • Robert J. Hall and Andrea Zisman, “Behavioral Models as Service Descriptions”, ICSOC, 2004. • Dumas, M., Spork, M., Wang, K. : “Algebra and Visual Notation for Service Interface Adaptation”, 4th International Conference on Business Process Management (BPM), 2006. • Benatallah, B., Hacid, M-S., Leger, A., Rey, K., Toumani, F.: ”On automating Web services discovery”, VLDB Journal, N 14, 2005, pp. 84–96. • Lang, Q.A., Su, St. Y.W : "AND/OR Graph and Search Algorithm for Discovering Composite Web Services", International Journal of Web Services Research, 2(4), 46-64, 2005. University of Lecce
Web Services Discovery • Matching – meeting the functionality required by a user with specifications of existing services • Generic (heuristics, domain-independent ontologies) • Personal (preferences, specific comparison functions) • Community (domain-specific ontologies) • Selection– choosing a service with the best quality among those able to satisfy the user’s goal University of Lecce
QoS Issues • How to define QoS? • complexity of run-time QoS information • dependencies among different QoS parameters • How to specify user preferences? • How to match user requirements with existing services in terms of QoS? • How to perform ranking of similar services w.r.t. to user preferences? • How to predict QoS factors under certain environmental conditions. • dependencies among different QoS parameters • relations with contextual factors • The same questions for composite web services University of Lecce
QoS characteristics • Multidimensionality: • Different QoS driven web service selection algorithms • Subjectivity: • dependence on context, consumer, etc. • QoS run-time monitoring and analysis on user side is required. University of Lecce
QoS parameters University of Lecce
Linear programming approach[Zeng et al. 2004] Scaling Linear combination of: • price • duration • reputation • success rate • availability Weighting where Wj are user preferences University of Lecce
Some questions • Scaling: • Availability - 100% • 0 – 0 • 100% – 1 • Response time: • 0 – 1 • timeout - 0 • Objective function: • Linear combination - ? • Can we rely on the preferences defined by a user? • Which service is better: • Cheap but not reliable, • Reliable but expensive? • A service failed but the task should be accomplished • Structure of a redundant composition graph University of Lecce
New WS selection algorithm • Notation: • c – composition • q(si) – quality parameter (response time, execution cost) • p(si) –probability of success • qmax – resource limit where • Time vs. cost: • The basic approach is to take the less important parameter as objective function provided that the most important criterion meets some requirements. University of Lecce
Experimental results University of Lecce
Example • Goal: Translate a document from Belarusian to Turkish • Available web services: • Belarusian – English (b-e) • Belarusian – German (b-g) • German – Turkish (g-t) • English – Turkish (e-t) • German – English (g-e) • WS compositions that can satisfy the user’s goal: • Belarussian – English – Turkish • Belarussian – German – Turkish • Belarussian – German – English – Turkish University of Lecce
Example g-t b-g + + g-e + e-t + b-e g-t b-g + + g-e + e-t + b-e University of Lecce
Risk management • Requires assessment of inherently uncertain events and circumstances • Two dimensions: • how likely the uncertainty is to occur (probability) • what the effect would be if it happened (impact) • Example: • Movie: title=Rainmaker, format=DVD, languages=Italian, English • Convert DVD to AVI: language=English • SimpleDivX converter: time=2 hours, language = Italian • Impact on time: 2 hours are lost University of Lecce
Failure risk Failure risk – considers the probability that some fault will occur and the resulting impact of this fault on the composite service where is the probability of the service failure. Loss function – defines the cost of service failure (money, time, resources) University of Lecce
Partners s3 s1 + + s4 + s5 + s2 Scenario • Service failures • Service changes • Violations of Service Level Agreements (SLAs) • Absence of alternative solutions (penalties) Provider Invoke s0 End-user University of Lecce
s1 s2 s1 s2 + + s3 s1 s2 + + s3 s4 s2 s1 + + s3 s1 s2 + + + + s3 s4 Failure risk: example University of Lecce
Related Work • [Zeng 2004] Zeng, L., Benatallah, B., et al.: ”QoS-aware Middleware for Web Services Composition”, IEEE Transactions on Software Engineering, Vol. 30, No. 5, 2004, pp. 311–327. • [Ardagna 2005] Ardagna, D., Pernici, B.: ”Global and Local QoS Constraints Guarantee in Web Service Selection,” IEEE International Conference on Web Services, 2005, pp. 805–806. • [Yu 2005] Yu, T., Lin, K.J.: ”Service Selection Algorithms for Composing Complex Services with Multiple QoS Constraints”, International Conference on Service-Oriented Computing, 2005, pp. 130–143. • [Claro 2005] Claro, D., Albers, P., Hao, J-K.: “Selecting Web Services for Optimal Composition”, Proceedings of the ICWS 2005 Second International Workshop on Semantic and Dynamic Web Processes, 2005, pp. 32-45. • [Canfora 2006] Canfora, G., di Penta, M., Esposito, R., Villani, M.-L.: “QoS-Aware Replanning of Composite Web Services”, Proceedings of the International Conference on Web Services, 2005. • [Martin-Diaz 2005] Martin-Diaz, O., Ruize-Cortes, A., Duran, A., Muller, C.: ”An Approach to Temporal-Aware Procurement of Web Services”, International Conference on Service-Oriented Computing, 2005, pp. 170–184. • [Bonatti 2005] Bonatti, P.A., Paola Festa, P.,: “On Optimal Service Selection”, Proceedings of the 14th international conference on World Wide Web, 2005,pp. 530-538. • [Lin 2005] Lin, M., Xie, J., Guo, H., Wang, H.: “Solving QoS-driven Web Service Dynamic Composition as Fuzzy Constraint Satisfaction, IEEE International Conference on e-Technology, e-Commerce and e-Service, 2005, pp. 9-14. • [Gao 2006] Gao, A., Yang, D., Tang, Sh., Zhang, M.: “QoS-driven Web Service Composition with Inter Service Conflicts”, APWeb: 8th Asia-Pacific Web Conference, 2006, pp. 121 – 132. University of Lecce
Quality of Service Issues • Multidimensionality: • QoS driven WS selection algorithms • Subjectivity: • dependence on context, consumer, etc. • QoS run-time monitoring and analysis on user side is required. University of Lecce
How to define QoS parameters? • Advertised by providers: • Simple (popular) • Providers may not advertise QoS information • Providers are not able to predict QoS in a neutral manner • Providers are interested in overstating the real QoS • Providers do not intend to revise constantly advertised QoS • Not effective and trust-aware. • Monitored on the client side: • active monitoring and/or explicit user feedback (ratings) • high computational overheads • Evaluated by a third party: • specialized unbiased agency • tests web services and publishes QoS data • expensive and static • Hybrid University of Lecce
QoS Sources University of Lecce
Recommendation Systems (RS) • Examples • Movies (MovieLens), • Music (JUKEBOX), • Books (Amazon), • Hotels, resorts and vacations (TripAdvisor) • Types: • Content-based Filtering • Collaborative Filtering • Hybrid University of Lecce