Open Database Connectivity Development of the Context Interchange System

Open Database Connectivity Development of the Context Interchange System

Open Database Connectivity Development of the Context Interchange System Andy C.Y. Shum CISL WP# 96-07 December 1996 The Sloan School of Management Massachusetts Institute of Technology Cambridge, MA 02142 Open Database Connectivity Development of the Context Interchange System by Andy C. Y Shum Submitted to the Department of Electrical Engineering and Computer Science December 15, 1996 In Partial Fulfillment of the Requirements for the Degrees of Bachelor of Science in Computer Science and Engineering and Master of Engineering in Electrical Engineering and Computer Science Abstract The Open Database Connectivity (ODBC) development is an extension to the Context Interchange System, a system that aims to provide semantic interoperability between heterogeneous system environments. The development of ODBC is a front end extension which provides users in the Windows working environment the capability to access the Context Interchange System using Windows applications. The primarily goal of the thesis is to present the design and implementation of the ODBC driver which serves as the bridge between the Context Interchange System and ODBC compliant applications. In the mean time, the development of the ODBC driver will serve as a guideline for future integration between common applications and the Context Interchange System. Thesis Supervisor: Michael D. Siegel Thesis Supervisor: Principal Research Scientist, Sloan School of Management Acknowledgments I would like to thank my thesis advisor, Michael Siegel, and Professor Stuart Madnick for giving me the opportunity work in the Context Interchange project. I would like to express my gratefulness to them for their advice and support, especially during my hard time in the project. Thank you so much for having confidence in me and bearing with me! Also, I would like to thank the entire Context Interchange research group for providing such a great working environment. In particular, for Allen Moulton's help and insight in the driver development, Tom Lee's knowledge of the Context Interchange System, Jesse Jacobson's expertise in Excel, and Cheng Goh, Stephane Bressan, Tito Pena, Kofi Fynn and other group members' help and support. Also, I would like to take this opportunity to thank my parents for their support throughout my years at MIT. Thank you so very much for giving me the freedom and opportunity to pursue my career and destiny. Finally, I would like to thank all of my friends at MIT. I could not have make it through without you all! In particular, the "FOPA" member Felix Lo, Oliver Yip and Patrick Chan. Also the Class of 96 members Anita Chan, Jenny Lee and Vinci Leung. In addition, this year's senior Calvin Yuen, Juliap Lee, Preston Li, Zhou Yu, Danny Yim, Chris Leung and Brian Lee. And last but not least, all the juniors, sophomores, and freshmen who know me. Thank you so much for your support. It could have been the worst and dull years of my life without you!. But now, it is definitely one of the most celebrated time of my life. Thank you very much! Contents 1 Introduction 9 2 Background 11 2.1 Context Interchange System Architecture .......................................................... 11 2.1.1 First Tier (Front End)................................................................................ 12 2.1.2 Second Tier (Middleware)...................................................................... 13 2.1.1 Third Tier (Back End).............................................................................. 15 2.2 Open Database Connectivity (ODBC)............................................................... 15 2.2.1 O DBC Defined........................................................................................ 15 2.2.2 Components of ODBC..............................................................................16 2.3 Hypertext Transfer Protocol (HTTP).................................................................17 3 Design of the ODBC Driver 19 3.1 Role of the D river .............................................................................................. 19 3.2 Structure of the Driver ....................................................................................... 20 3.2.1 General Architecture................................................................................ 20 3.2.2 Internal Data Structure.......................................23 3.3 Interactions with the Context Mediator ................................. 26 3.3.1 Comparisons between ODBC API & the Context Mediator Interface.........27 3.3.2 Operations between the ODBC Driver & the Context Mediator.............27 4 Implementation/Scenario 31 4.1 Implemented ODBC Function Calls ................................................................. 31 4.2 Migrating to the Second Prototype .................................... 36 4.3 Algorithms and Tradeoffs .................................... 37 4.3.1 Algorithms Analysis ................................... 37 4.3.2 Tradeoffs ..................................................... o . ......................................... 38 4.4 Scenario of Retrieving Financial Data...............................................................39 4.4.1 Single-datasource query scenario (First & Second Prototypes).............39 4.4.2 Multi-datasource query scenario (Second Prototype)...................45 5 Conclusions 47 5.1 Further ODBC Driver Development..................................................................47 5.2 Re-Design of the Context Mediator Interface................................................... 48 5.3 Full ODBC and Context Interchange System Integration.....................49 5.4 Future Context Interchange System Extensions ................................................ 50 5.4.1 ActiveX .................................................................................................... 50 5.4.2 OLE D B .................................................................................................... 50 5.5 C onclusions....................................................................................................... 51 A Sample HTML formatted result file 52 B ODBC function calls sequence 53 B.1 MS Query Example........................................................................................... 53 B.2 MS Excel Example (query using SQL.REQUEST functions)..................55 C User's Manual 59 C. 1 Guide to create a new Excel spreadsheet using the Context Mediator-ODBC D river ...................................................................................................................... 59 C.2 Complete List of Implemented ODBC API Function Calls...................60 C.3 Specification of the ODBC Driver.....................................................................61 C.4 Miscellaneous Instructions of the Driver ........................................................... 67 List of Figures Figure 2.1-1: The Context Interchange System .......................................................... 11 Figure 2.2-1: ODBC architecture.........................................16 Figure 2.3-1: Examples of HTTP/1.0 protocol.......................................................... 18 Figure 3.1-1: Overview of the ODBC Framework..............................19 Figure 3.2-1: General Structure of the Context Mediator-ODBC Driver...................21 Figure 3.2-2: Internal data structure of the Context Mediator-ODBC driver.............26 Figure 4.1-1: Essential components of the ODBC driver......................................32 Figure 4.3-1: The "pospair" array structure for retrieving data.....................38 Figure 4.4-1: ODBC calls and Context Mediator interface used in MS Query..........41 Figure 4.4-2: Table names are shown after SQLTables is called ............................... 41 Figure 4.4-3: Column names of the chosen table is shown after SQLColumns...........42 Figure 4.4-4: Inputting SQL query in the SQL box..............................42 Figure 4.4-5: Result of the SQL query from the Context Mediator is returned .......... 43 Figure 4.4-6: ODBC function calls and Context Mediator interface for MS Excel........44 Figure 4.4-7: The M S Excel demo......................................................................... 45 Figure 4.4-8: Multi-datasource query example by MS Excel using the second Context Mediator prototype........ ............................ 46 List of Tables Table 2.1-1: Context Mediator interface and its corresponding function[6]...............12 Table 2.1-2 Results of the same query with different specified contexts...................14 Table 3.3-1: ODBC Function Calls and their corresponding Context Mediator Interface ................................................................................................. 28 Table 4.4-1: Summary of the three scenarios given in this section............................ 39 Table C.2-1: Complete list of implemented and non-implemented ODBC function calls ...................................................................................................... 60 Chapter 1 Introduction Over the last few years, the World Wide Web has experienced an exponential growth in its usage. Information of every conceivable kind is being made available on the Web with more being added every day[5]. People can not only view text formatted information from the Internet, but they can also enjoy the power of multimedia through pictures, video and audio clips from the Web. The Internet has indeed become one of the most essential resources for all kinds of information

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    70 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us