Search Result Management System (Serums) - an Approach for Efficient and Consistent Web Services Brokering
Total Page:16
File Type:pdf, Size:1020Kb
Institut fur¨ Informatik der Technischen Universit¨at Munchen¨ Search Result Management System (SerumS) - An Approach for Efficient and Consistent Web Services Brokering Quang Cua Cao Vollst¨andiger Abdruck der von der Fakult¨at der Technischen Universit¨at Munchen¨ zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften (Dr. rer. nat.) genehmigten Dissertation. Vorsitzender: Univ.-Prof. Dr. Johann Schlichter Prufer¨ der Dissertation: 1. Univ.-Prof. Dr. Eike Jessen, em. 2. Univ.-Prof. Dr. Martin Bichler Die Dissertation wurde am 14.12.2006 bei der Technischen Universit¨at Munchen¨ eingereicht und durch die Fakult¨at fur¨ Informatik am 02.02.2007 angenommen. Abstract The key concept of Web services is to make both inter- and intra-application integration pos- sible in a way that the integration does not depend on the platform or implementation of the service customer or provider. Since the information about Web services and their providers is usually managed in a central UDDI1 registry and the present UDDI standard does not offer a mechanism for the automatic actualization of the Web service information, it is often inac- curate or outdated[1]. This work presents a concept for solving these problems. Moreover, it allows to optimize the Web service application process by adopting a Pull/Push technique and Publish/Subscribe Model based search and management system for Web services. Furthermore, the system searches proactively for new Web services and selects the appropriate service for the service customer. This improves significantly the reaction time and the performance of the Web service application process. The following main contributions build up the core of the work: • The current UDDI standard is extended by a Publish/Subscribe mechanism • Service customers can use the Publish/Subscribe mechanism to register themselves for certain Web services • Reduction of response time for service customers by automatic searching for new Web services by the service broker (in our case SerumS) • Improved correctness and completeness of the search result • Notification about new Web services and changes to the service customers through the service provider • Avoidance of inconsistent data by automatic update of the Web service information The aim of this work is to use the “Publish-Subscribe Notification for Web services”[2] specifi- cation for realizing the Publish/Subscribe mechanism, so that the result can be considered as a replacement for a UDDI registry. The proof of concept (PoC), which results from this work, has in addtion to the traditional functionalities of a UDDI registry also the features mentioned above. 1Universal Description Discovery and Integration ii Zusammenfassung Das Schlusselkonzept¨ von Web Services liegt darin, sowohl Unternehmens-ubergreifende¨ als auch -interne Anwendungsintegration auf die Art und Weise zu erm¨oglichen, dass die Integration weder von der Plattform noch von der Implementierung des Service Customer oder Provider abh¨angt. Da die Informationen zu den Web Services und deren Provider in einer zentralen UDDI Registry verwaltet werden und der aktuelle UDDI Standard keinen Mechanismus zur automatischen Aktualisierung der Web Service Informationen besitzt, sind diese sehr oft un- genau und “out-of-date”[1]. In dieser Arbeit wird ein Konzept zur L¨osung dieser Probleme vorgestellt, welches daruber¨ hinaus den Web Service Anwendungsprozess durch den Einsatz eines auf Pull/Push-Technik und Publish/Subsribe-Modell basierten Such- und Managementsystems optimiert. Außerdem sucht das System proaktiv nach neuen Web Services und w¨ahlt fur¨ den Service Customer den passenden Service. Dies verbessert significant die Reaktionszeit und die Performanz des Web Service Anwendungsprozesses. Die folgenden Hauptbeitr¨age bilden den Kern der Arbeit: • Der aktuelle UDDI Standard wird um den Publish/Subscribe Mechanismus erweitert • Service Customer k¨onnen den Publish/Subscribe Mechanismus benutzen, um sich fur¨ bes- timmte Services zu registrieren. • Reduktion der Antwortzeit fur¨ Service Customer durch automatisches Suchen nach neuen Web Services durch den Service Broker (in unserem Fall SerumS) • Verbesserte Korrektheit und Vollst¨andigkeit des Suchergebnisses. • Die Service Customer werden von den Service Provider uber¨ neue Web Services und ihre Anderungen¨ benachrichtigt. • Vermeidung von inkonsistenten Daten durch automatisches Update der Web Service In- formationen. Das Ziel dieser Arbeit ist das Benutzen der “Publish-Subscribe Notification for Web services”[2] Spezifikation fur¨ die Realisierung des Publish/Subscribe Mechanismus, so dass das Ergebnis als Ersatz fur¨ die UDDI Registry betrachtet werden kann. Das “Proof of Concept (PoC)” besitzt zus¨atzlich zu den traditionellen Fuktionalit¨aten einer UDDI Registry auch die gerade erw¨ahnten Neuerungen. iv Acknowledgement First of all, I would like to thank Univ-Prof. Dr. Eike Jessen and Univ.-Prof. Dr. Martin Bichler for supervising this thesis and giving me the full freedom to work on it. I especially appreciate their many suggestions and help during my research. I like to thank the colleagues at “The chair of Internet-based Information Systems (IBIS)”, particularly Adrian Paschke, for many precious and fruitful discussions. I would also like to thank Dr. Manfred Jobmann for his discussions, and in particular for helpful questions and suggestions which have improved the quality of this work. Finally, I like to thank again my first supervisor Univ-Prof. Dr. Eike Jessen, Mcs. Mohammad Khaleghi of the “Chair for Theoretical Computer Science and Foundations of Artificial Intel- ligence”, Bilen Emek Abali and the colleagues of the chair “Network Architectures” for the proof-reading of this thesis. vi Contents 1 Introduction 1 1.1 Distributed system architecture and application resource management . 1 1.2 Push-Pulltechniquevs.Pulltechnique . .......... 3 1.2.1 Pulltechnique ................................. 3 1.2.2 Pull-Pushtechnique . 5 1.3 Motivation ...................................... 8 1.4 Methodology and structure of the thesis . ......... 10 2 Introduction to Web services 13 2.1 Definition ....................................... 13 2.2 How are Web services implemented? . ...... 14 2.3 R´esum´e ........................................ 21 3 State of the Art - General issues 23 3.1 Different implementations of UDDI Business Registry node (UBR node) . 24 3.1.1 Non-uniformusability . 24 3.1.2 Distribution of Web service definitions over many UBRs .......... 26 3.2 Inability to control the Web service data in the UDDI re-gistry .......... 26 3.3 Non-authorised use of Web service data (against the intention of service providers) 27 3.4 Limited ontology (vocabulary) for representing service information in the UDDI registry ......................................... 27 3.5 Timelinessandconsistencyissues . ......... 28 3.6 Performancerelatedissues. ....... 28 viii CONTENTS 3.7 R´esum´e ........................................ 29 4 Current Evolutions 31 4.1 Ontology Web Language for Web services (OWL-S) . ........ 31 4.1.1 Concept..................................... 31 4.1.2 Conclusion ................................... 32 4.2 Web services Inspection Language(WSIL) . ......... 33 4.2.1 Concept..................................... 33 4.2.2 Conclusion ................................... 36 4.3 Two-LevelUDDIs .................................. 37 4.3.1 Concept..................................... 37 4.3.2 Conclusion ................................... 37 4.4 Combination of Peer-to-Peer (P2P) and SOA . ........ 38 4.4.1 Basic....................................... 38 4.4.2 Concept..................................... 39 4.4.3 Implementation................................ 41 4.4.4 Problems .................................... 44 4.5 R´esum´e ........................................ 46 4.6 Requirementsforanewsolution . ...... 47 5 Our Solution - The Search Result Management System (SerumS) 49 5.1 Introduction.................................... 49 5.2 Architecture.................................... 49 5.2.1 Systeminterfaces.............................. 49 5.2.2 SerumSworkflow................................ 51 5.2.2.1 SerumS-SCandSerumS-SPworkflow . 52 5.2.2.2 Autonomous task workflow . 54 5.3 Comparison of SerumS with a traditional UDDI registry . ............ 55 5.4 Technologiesandtools . ..... 57 5.4.1 TheSearch-Engine“Google” . 57 CONTENTS ix 5.4.2 Web Service Framework “AXIS” . 58 5.4.3 The “Publish Subscribe Notification for Web services” specification . 59 5.4.3.1 SubscribeMessage. 59 5.4.3.2 Notification Message . 64 5.5 Software implementation - Proof of Concept (PoC) . ........... 66 5.5.1 Software modularization and coding . ...... 66 5.5.2 Codeexamples ................................. 68 5.5.3 Technical characterization of SerumS . ........ 72 5.6 R´esum´e ........................................ 73 6 Validation of SerumS 75 6.1 GeneralProcess.................................. 75 6.2 Elementary Operations Measurement (EOM) . ........ 76 6.2.0.1 Purpose of the validation . 76 6.2.0.2 Validation environment . 76 6.2.1 Validation procedure and result . ...... 81 6.2.1.1 Validationprocedure . 81 6.2.1.2 Response time for the “register()” operation . ...... 82 6.2.1.3 Conclusion .............................. 82 6.2.1.4 Response time for the “publish()” operation . ..... 82 6.2.1.5 Conclusion:.............................. 83 6.2.1.6 Response time for the “inquiry()” operation . ..... 83 6.2.1.7 Searchcorrectness . .. .. .. .. .. .. .. 84 6.2.1.8 Searchcompleteness