+ All Categories
Home > Documents > Data Bridge for Heterogeneous Data Sources Presented by Rahul Vaghela & Pravin Vajirkar.

Data Bridge for Heterogeneous Data Sources Presented by Rahul Vaghela & Pravin Vajirkar.

Date post: 28-Dec-2015
Category:
Upload: damian-wilkinson
View: 217 times
Download: 0 times
Share this document with a friend
Popular Tags:
37
Data Bridge for Data Bridge for Heterogeneous Data Heterogeneous Data Sources Sources Presented by Rahul Vaghela & Pravin Vajirkar
Transcript

Data Bridge for Heterogeneous Data Bridge for Heterogeneous Data SourcesData Sources

Presented by

Rahul Vaghela

&

Pravin Vajirkar

ObjectiveObjective

To view all your data -- multi-vendor, relational, nonrelational, local, remote, geographic data -- as if it were local.

A single SQL statement should access and join tables located across multiple data sources without needing to know the source location.

IntroductionIntroduction

Different databases need federated results

Difficult to interoperate due to heterogeneity and illegible global-schemas

One Interface – One User SQL Statement

Problem DomainProblem Domain

Three primary IssuesHeterogeneity

• System • Semantic

Interoperability• Hardware• Operating system• Known RDBMS and legacy systems• Languages

Problem Domain (Contd.)Problem Domain (Contd.)

• Physical locations• Relational and Non-relational• Local and remote objects/components

Global schemas• Schemas recognizable by all heterogeneous

databases (More later…)

Market Products Market Products (IBM Data – Joiner)(IBM Data – Joiner)

DB2 Family, Informix, Microsoft SQL Server, Oracle, Sybase SQL Server, Teradata, and others.

Support for non-relational data sources (through Classic Connect V2.1.1).

Client access (using DB2 clients) from a multitude of platforms, including Java™ (using JDBC).

Market Products Market Products (IBM Data – Joiner) (IBM Data – Joiner) contd.contd.

Integrated replication administration DDL statements to easily create, drop, and

alter data source mappings, users, user-defined and built-in functions and data types.

Excellent performance and intelligent use of pushdown and remote query caching.

Version 2.1.1 is available for Windows NT, Sun Solaris Operating Environment, and AIX.

AT&T’s iPROXYAT&T’s iPROXY

A cross-platform middleware 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.

iPROXY FeaturesiPROXY Features

Accessing and Caching Web Data Processing Web Data Accepting Notifications

Few More…Few More…

Easysoft’s Solution• Windows, Linux and Unix • JDBC-ODBC Bridge • Java applications/applets running on any JVM

Some other research works • HEROS• BLOOM• Research in some Universities

OO – Middleware…OO – Middleware…Why CORBA?Why CORBA?

RMI (D)COM ? .NET ? Beans CORBA

What is CORBAWhat is CORBA

It specifies a system which provides interoperability between objects in a heterogeneous, distributed environment and in a way transparent to the programmer.

Its design is based on OMG Object Model.

CORBA ArchitectureCORBA Architecture

The ORBThe ORB

central component of CORBA is the Object Request Broker (ORB).

Identify and locate objects, handle connection management and deliver data.

the ORB is not required to be a single component; it is simply defined by its interfaces.

Most crucial part of the Object Request Broker; responsible for communication of requests.

Other ComponentsOther Components

Client Object Implementation Dynamic Invocation Stubs ORB Interface Skeleton Object Adapter

Tools/Technology usedTools/Technology used

IDE• JBuilder 5.0• JDK 1.3

CORBA – OO Middleware• Visibroker (Inprise)

Tools/Technology used Tools/Technology used (Contd.)(Contd.)

Databases• DB2 Server• DB2 Connect personal Edition• DB2 Application Development Clients V7.1

• Administration Client• Run-Time Client• Application Development Client• Db2 Extenders• Net.Data

• SQL Server 2000• MS Access

Tools/Technology used Tools/Technology used (Contd.)(Contd.)

IBM WebSphere (Web Server)• IBM HTTP Administration V3.02• IBM HTTP Server (Apache) V3.02 • IBM WebSphere AdminServer V3.02• Administrative Console V3.02

Data warehouse • OLAP Server• Hyperion Essbase OLAP Server V6.0

JbuilderJbuilderhttp://www.borland.com/http://www.borland.com/

jbuilder/jbuilder/ Jbuilder

• Edition: Personal and Enterprise• Borland Enterprise Server

• AppServer Edition - J2EE application

• J2EE 1.3, EJB 2.0, JMS 1.02, Servlet 2.3, JSP 1.2, XML, and SOAP.

• Built on top of Visibroker (CORBA)• Develop on Windows,® Linux® and

Solaris™

Visibroker for CORBA ObjectsVisibroker for CORBA Objects

Borland VisiBroker • CORBA- and IIOP-enabled communication based

on the latest Object Management Group ™ (OMG™) standards.

open, flexible, and interoperable Development C++ and/or Java Compliant to CORBA 2.4 Smart agent architecture, IIOP and advanced

security features

Various ComponentsVarious Components

Client.java Frame1.java AccountImpl.java AccountManagerImpl.java Server.java Federated.idl

User InterfaceUser Interface

SchemasSchemas

User - Local Schemas Federated Schemas Remote Schemas Export Schemas

[ROSC97] Architecture

Class DiagramClass Diagram

Psuedo Code (Client)Psuedo Code (Client)

public class QueryAppletClient {

public void Applet_init() {

}

public void View_DB2_table_rec() {

}

public void View_SQL_table_rec() {

}

Psuedo Code (Client)Psuedo Code (Client) contd. contd.

public void ORB_activate() { } private String view_SQL_table; private String view_DB2_table; private String view_SQL_fields; private String view_DB2_fields; private String display_query; private String display_fed_result; private QueryServer lnkQueryServer; private Query lnkQuery;

Psuedo Code (Client)Psuedo Code (Client) Contd. Contd.

private QuerySQLImpl lnkQuerySQLImpl; private QueryDB2Impl

lnkQueryDB2Impl; private ViewTableSQL

lnkViewTableSQL; private ViewTableDB2

lnkViewTableDB2;}

Psuedo Code (Interface)Psuedo Code (Interface)

public interface Query {

void SQL_Query(); 

void Db2_Query(); 

void View_SQL(); 

void View_DB2(); 

String Query = Null;

/*#QueryServer lnkQueryServer;*/

}

Psuedo Code (Server)Psuedo Code (Server)

public class QueryServer { public void ORB_init() { } public void POA_init() { }  public void Create_instance_SQL() { }  public void Create_instance_DB2() { } 

Psuedo Code (Server)Psuedo Code (Server) Contd. Contd.

private String POAname;

private String ORBname;

private QuerySQLImpl lnkQuerySQLImpl;

private QueryDB2Impl lnkQueryDB2Impl;

private ViewTableSQL lnkViewTableSQL;

private ViewTableDB2 lnkViewTableDB2;

}

Psuedo Code (Server Impl.)Psuedo Code (Server Impl.)

public class QuerySQLImpl {

public void ExecuteSQLQuery() {

private String Query;

private Resultset Results;

}

Psuedo Code (Server Impl.) Psuedo Code (Server Impl.) Contd.Contd.

public class QueryDB2Impl {

public void ExecuteDB2Query() {

private String Query;

private Resultset Results;

Psuedo Code (View SQL Psuedo Code (View SQL class)class)

public class ViewTableSQL {

public void ViewSQl() {

private String Rights;

private Resultset View;

Psuedo Code (View DB2 Psuedo Code (View DB2 class)class)

public class ViewTableDB2 {

public void ViewDB2() {

private String Rights;

private Resultset View;

}

ConclusionConclusion

Many issues, Many Problems Lot of work ahead Data-Bridge Solution would Convert &

integrate “data” TO “Information” in real sense

All legacy systems would still be worshiped

.NET ??A Flyweight??

ReferencesReferences

IBM Data-Joiner http://www-4.ibm.com/software/data/datajoiner/inde

x.html

AT&T iPROXY http://www.research.att.com/~iproxy/intro.html

Client Server Programming (CORBA & Java) Book by Robert Orfali

http://java.sun.com


Recommended