Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Project #2: Data Bridge for Heterogeneous Data Bases CS590L Introduction In the world of choices, diversity and competition, we often find ourselves in the bowl missing information due to heterogeneity. Just as two foreign people find it tough to interact with each other in the absence of a common standard language, the world of databases find itself in the similar conjunction. The organization which interacts with its sub-ordinates if does not speak the same language in terms of databases systems, problems infests which includes the issue of heterogeneity and interoperability among others. Database systems are the heart of every organization technical or otherwise. The interoperability between the heterogeneous systems would be an important asset. We plan to propose an object-oriented middleware system that would access the heterogeneous database systems and produce the result as they occur. There would be many issues, which would need attention and research, and we might not be able to spend on all the problems as a whole. Project goal and objectives Overall goal: The goal is learn how a complex middleware can be developed which communicates with so many different architectures, operating systems, heterogeneous databases, fat clients, and thin clients. The aim is to acme the skills in CORBA, built a robust Object-Oriented middleware, have hands on experience in Visibroker, the popular ORB for CORBA. We also plan to learn the DB2, Oracle/Access database systems in the process. Specific objectives: The aim is to connect and query heterogeneous databases with single SQL statement and single interface. The idea is also to make it web enabled. If time permits, we may inject security layer (SSL layer) too. The user won’t be able to view the file, which they are not intent too. Significance: In the present world of choices, people tend to use different operating systems, packages, databases and anything that best suits their solution and their requirements. However the ever-growing network called “internet” is allowing connecting anyone to everyone on the web. But it is not always possible for similar applications to behave similarly because different vendors create them. This heterogeneity causes a problem when a user tries to communicate or tries to use resources of another resource that is not made by the same vendor as that of user number one. This problem is addressed by obtaining interoperability in all hardware and software platforms. The same applies for different databases, RDBMS and legacy systems. Every organization has their own means and liking of using databases. Some of them even become legacy systems in due course of time. The user always find the need to communicate between these systems and grab data which may he/she be want to use into different usage. The idea is to view all the data - IBM, Oracle, multi-vendor, relational, non-relational, local, remote data - as if it were a local data. With a single SQL statement and a single interface, we can access and join tables located across multiple data sources without needing to know the location of the source. Project Background Work Done by Others: Submitted by: Pravin Vajirkar & Rahul Vaghela 1 Project #2: Data Bridge for Heterogeneous Data Bases CS590L We came across with three major products. First and the most impressive one is IBM’s Data-Joiner. Second, is Sun’s iPROXY. Lastly, Easysoft’s Data-bridge. Let’s see each one of them in detail. Data-Joiner (Vendor: IBM): With IBM’s DB2 Data-Joiner one can view all the data -- IBM, multi-vendor, relational, non-relational, local, remote, and geographic data -- as if it were local data. With a single SQL statement, we can access and join tables located across multiple data sources without needing to know the source location. DB2 Data-Joiner supports industry standards for data access, including ODBC, JDBC, X/Open CLI and XA Transactions. We can program in any of following languages, such as C, FORTRAN and COBOL, to take advantage of the single-database API feature of DB2 Data-Joiner. We can use the DB2 DataJoiner interface to extend the power of familiar tools such as IBM VisualAge®, Lotus® Approach®, Microsoft Access, PowerSoft PowerBuilder and others to work with data across your enterprise. Features: Windows NT, AIX, and AS/400 (R) with IPCS feature platform support Spatial Data Support enabling Geographic-Business applications Native support for DB2 UDB Family, Microsoft (TM) SQL Server, Oracle 8, Oracle Rdb, Informix, Sybase and Sybase SQL Anywhere. Transparent Data Manipulation Language (DML) and Data Definition Language (DDL) support Integrated multi-vendor database replication including Microsoft Jet Databases Internet enablement -- transparent access to multi-vendor data sources via DB2 DataJoiner and Net.Data (TM) High Performance through Global Optimization Technology Powerful data type and SQL function mapping Global schema support for user-defined types and user-defined functions DRDA (R) Application Server (DRDA-AS) support for MVS (TM), VM, and OS/400 (R) Application Requestors (ARs) access to multi-vendor data via DataJoiner Continued support for IMS (TM) and VSAM via DataJoiner Classic Connect iPROXY (Vendor: IBM): IPROXY is a cross platform middleware designed for applications that access Web services, such as browsers, search engines, virtual machines, indexing tools, intelligent agents, and Intranet applications. iPROXY allows accessing, caching, and processing of Web data. It isn’t a specific product for joining the heterogeneous databases, but it follows on the same lines of locating, managing and integrating the data. Features: Accessing and Caching Web Data Processing Web Data Accepting Notifications iPROXY introduces three new URLs. HTML set Associative URL URL space name It contains two servers: access server and web server, each accepts calls via TCP ports. Submitted by: Pravin Vajirkar & Rahul Vaghela 2 Project #2: Data Bridge for Heterogeneous Data Bases CS590L JDBC-ODBC Bridge (Vendor: Easysoft): The bridge provided by easysoft claims to enable fast and local JDBC access to any remote ODBC data source. It is a fully functional Type 3 JDBC driver that allows you to access all existing ODBC data sources from Java applications/applets anywhere on the network. Using the Easysoft JDBC-ODBC Bridge Java applications/applets running on any JVM can access ODBC data sources on any supported platform: Windows, Linux and Unix. Features: Delivers consistent JDBC interface to data, irrespective of the target ODBC driver used. The JDBC-ODBC Bridge can be used with ODBC3, ODBC2 and even ODBC1 drivers, protecting any existing investment in ODBC middleware. Provides the widest choice of development environment with which to develop data aware Java component including Forte, JBuilder and JDesignerPro. Compatible with JDK 1.1.x, 1.2.x and 1.3.x and JDBC 2.1 The only JDBC-ODBC Bridge designed to allow a choice of multithreaded or multi-process operation for the server. Ultra compact class size, delivering high functionality with the smallest footprint and fast download. Allows multiple concurrent statements even if the ODBC driver does not. Integrated administration via an HTTP server, which provides statistics and control over the JOB server. Incorporates Unix-ODBC, the Open Source ODBC driver manager, to ensure out of the box operation. Supports multiple concurrent clients and multiple concurrent access to multiple data sources. 100% Java client software means you can add new platforms or additional clients without additional costs. Relationship of proposed project to current research in the field: In current scenario where the best is available only when there is a mix of heterogeneous systems. In today’s world of Internet, developers deal with a variety of hardware and software platforms. The same applies when it comes to DBMS/RDBMS. One more area that has become a requirement in the network like that of Internet is to remotely access databases. In order to obtain interoperability between these heterogeneous databases we need a software bridge and all the major software vendors are currently into this research field. Many vendors are already providing solutions. Our application will try to simulate one such solution and in the process we will try to learn pros and cons of the research field, which has appealed such big vendors like IBM and SUN. In the previous semester we had been working on Location Based Information Systems, and we specifically touched the area of providing services to the mobile unit users from different vendors. This called for immediate attention towards the heterogeneity in databases of different vendors. This can be one of the many examples wherein interoperability between different databases is an absolute must. The immediate solutions available are Data Bridges to achieve this. We will try to simulate it and along with that induce some enhancements (if time permits). General Plan of Work Proposed Solution: Submitted by: Pravin Vajirkar & Rahul Vaghela 3 Project #2: Data Bridge for Heterogeneous Data Bases CS590L Description of methods and procedures: We have not decided on the components yet, but in accordance to the flow of operations, the methods and procedures can be listed as below: Client: A Java applet for user interface. Action listeners for events Display result (Output) Interface: We plan to have one interface and in due process of development we will try and fragment the complete operational flow into smaller components. Two methods for accessing two different databases and accordingly querying them. Components: Method to get the query results. Server: Initializing ORB. Registry Naming lookup Proposed System: Domain Analysis: (Requirements, Workflow, and Stakeholders) We would be working mostly in Windows 2000 workstation environment for the first and the major phase of the project and would like to move some parts to LINUX, if time permits to check the performance and architectural stability. The stakeholders could be the DSS (Decision support systems) guys, DTS (Data Transformation Services) people and the end-users who wish to query data from heterogeneous databases. Workflow: Overall architecture of the proposed system. Submitted by: Pravin Vajirkar & Rahul Vaghela 4 Project #2: Data Bridge for Heterogeneous Data Bases CS590L DB2 Simulation: Submitted by: Pravin Vajirkar & Rahul Vaghela 5 Project #2: Data Bridge for Heterogeneous Data Bases CS590L Planned Interface: Design of Activities to be undertaken: In the proposed system we plan to design a stable architecture that would instantiate others and us for future research and development. Familiarizing ourselves with IBM WebSphere AppServer V3.02 HTTP Admin Server HTTP Server (Apache) WS Admin Server Admin Console Visibroker ORB using JBuilder 5.0 IBM’s DB2 (Warehouse) DB2 Connect personal Edition V7.1 DB2 Universal Database Work Group Edition V7.1 Hyperion Essbase OLAP Server V6.0 DB2 Application Development Clients V7.1 Administration Client Run-Time Client Application Development Client Db2 Extenders Net.Data Oracle/ACCESS and warehouse. Client Server Programming using Java and CORBA. Setting environment Communication Server (TCP/IP and Name Pipes) Submitted by: Pravin Vajirkar & Rahul Vaghela 6 Project #2: Data Bridge for Heterogeneous Data Bases CS590L Mapping the static IP address to the Gateway and mapping the IP address to the computer group name Technologies and Tools: CORBA and Java API: JBuilder 5 is one of the most comprehensive set of visual development tools for creating Pure Java business and database applications. The development is simplified with JDK Switching, CodeInsight, Beans Express, and BeanInsight, plus: Pure Java DataExpress components, complete JDBC connectivity, 200+ JBCL and JFC/Swing beans with source. The competitors are IBM’s Visual Age for Java, and Sun’s Forte for Java. Visibroker: Architecture of a typical Visibroker based application: Database Systems: There are a lot of database legacy systems out in the market. And we are concerned with the ones that have their JDBC drivers, which connect to our Java client API’s. Our main work would be connection to the IBM DB2 UDB servers. They come up with there own JDBC drivers. Competitors are (JDBC drivers) Merants DataDirect and Sybase Jconnect. The second database system would either be Oracle 8i or Microsoft Access (we haven’t made up our mind). Among the database vendors, the choices are PointBase Java Database, IBM’s DB2 UDB, Oracle RDBMS, and SYBASE RDBMS. Our final model would contain IBM DB2, which has its own JDBC driver to communicate with Java API (JDBC driver). The second database MS Access (which has ODBC driver), would be connected to the Java API by the JDBC-ODBC bridge. If the database is Oracle 8i, the connection to the Java API would be through JDBC drivers. Application Servers: If time permits, we would like to the dip the project with an application server, preferably IBM’s WebSphere Application Server. IBM® WebSphere™ Application Server Enterprise Submitted by: Pravin Vajirkar & Rahul Vaghela 7 Project #2: Data Bridge for Heterogeneous Data Bases CS590L Edition enables full e-business transactions over the Web. Using open standards-based technologies like interoperable CORBA and Enterprise JavaBeans™ (EJBs), Enterprise Edition provides comprehensive, high quality middleware runtime services for distributed component applications. It also contains the industry's most complete support for integrating existing IT applications and resources for reuse on the Web. The competitors are BEA Weblogic Server, Borland Application Server, Brokat’s Genstone/J, HP Bluestone Application Server, iPlanet Application Server, Jboss (open source) Application Server, Macromedia’s JRun Server, Lutris EAS Application Server, Oracle9i Application Server, Sybase EA Server. Working of CORBA ServEnt with Database systems Warehouse: Again, if time permits, we would like to develop a warehouse for DB2, which would be connected by an OLAP server. It will have a capability that the user may be able to pull up data from the warehouse. The second database, Oracle has its own warehouse, which the client API may try to communicate. There is no warehouse for MS Access. Time Table for project completion: Due to the enormous issues and work involved in the project, it may not be fully implemented by the end of the semester. I would presume that it would be research and developed in the semesters to follow. This semester we would be happy if we manage to give it a stable architecture and be able to (Select) query heterogeneous databases with a single SQL statement and a single interface. Bibliography [1] Introducing the Easysoft JDBC-ODBC Bridge http://www.easysoft.com/products/2003/man/introduction.html Submitted by: Pravin Vajirkar & Rahul Vaghela 8 Project #2: Data Bridge for Heterogeneous Data Bases CS590L [2] iPROXY System Overview http://www.research.att.com/~iproxy/intro.html [3] IBM Data - Joiner http://www-4.ibm.com/software/data/datajoiner/index.html [4] Borland’s Visibroker Reference Manual, Programmer guide, and Gatekeeper’s Guide [5] IBM’s DB2 Application Building Guide, Application server edition, and Data Warehouse center guide [6] Jbuider 5.0 http://www.borland.com [7] Client Server Programming with Java and CORBA, Second Edition Robert Orfali and Dan Harkey [8] JDBC Drivers http://industry.java.sun.com/products/jdbc/drivers [9] Static IP configuration – Network Architecture, by Andrew Tannenbaum and internet resources [10] Various online CORBA tutorials Submitted by: Pravin Vajirkar & Rahul Vaghela 9