Download Project Background - UMKC School of Computing and Engineering

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
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