2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

25
May 7, 2007 1 M etaQ uest M etaQ uest Confidenti al ODBC • 2.0.0 Features • What is ODBC? • Why Create an ODBC Driver for Rochade? • How do we Expose Rochade as Relational • Transformation of Oracle RIM to Relational Overview

description

Overview. 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade? How do we Expose Rochade as Relational Transformation of Oracle RIM to Relational. 2.0.0 Features. Client Server architecture. - PowerPoint PPT Presentation

Transcript of 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

Page 1: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 1

MetaQuestMetaQuest™

Confidential

ODBC

• 2.0.0 Features

• What is ODBC?

• Why Create an ODBC Driver for Rochade?

• How do we Expose Rochade as Relational

• Transformation of Oracle RIM to Relational

Overview

Page 2: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 2

MetaQuestMetaQuest™

Confidential

ODBC

Client Server architecture. Server runs on Linux, Unix or Windows – the same platforms as the

Rochade Server. Push the SQL query workload onto the server where it belongs.

Data sources are defined at the Server level so all ODBC or JDBC clients use the same configuration.

ODBC client runs on Linux, Unix or Windows. JDBC client runs Linux, Unix or Windows. Now you can easily code

Java programs and use JDBC to retrieve your Rochade metadata. Create your entire Rochade Application using SQL if you prefer.

2.0.0 Features

Page 3: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 3

MetaQuestMetaQuest™

Confidential

ODBC

Integration with WebAccess Discovery Create discovery topic with MQ ODBC topic template. Customize the result set for your needs.

Administration Console. Allows the administrator to manage the server remotely via a Windows

GUI. Allows the administrator to remotely configure the server.

2.0.0 Features

Page 4: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 4

MetaQuestMetaQuest™

Confidential

ODBCWhat is ODBC?

Definition:

(pronounced as separate letters) Short for Open DataBase Connectivity, a standard database access method developed by the SQL Access group in 1992. The goal of ODBC is to make it possible to access any data from any application, regardless of which database management system (DBMS) is handling the data. ODBC manages this by inserting a middle layer, called a database driver , between an application and the DBMS. The purpose of this layer is to translate the application's data queries into commands that the DBMS understands. For this to work, both the application and the DBMS must be ODBC-compliant -- that is, the application must be capable of issuing ODBC commands and the DBMS must be capable of responding to them. Since version 2.0, the standard supports SAG SQL.

http://www.webopedia.com/TERM/O/ODBC.html

Page 5: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 5

MetaQuestMetaQuest™

Confidential

ODBCWhat is ODBC?

ODBC Interface

MS Access MS Excel Other tools…

Oracle ODBCDriver

UDB ODBCDriver

MQ ODBCDriver

Oracle Server/Database

UDB Server/Database

Rochade Server/Database

User can use any ODBC compliant tool…

To access any ODBC data source…

Via an ODBC Driver

Page 6: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 6

MetaQuestMetaQuest™

Confidential

ODBC

Rochade Metadata is stored in a Rochade database: Based on proprietary indexed flat files Query language is proprietary and difficult to understand Query language must be invoked via programming interface. Query language doesn’t allow for join and predicate processing at the

same time. Query language doesn’t allow formatting of the result set.

Why Create an ODBC Driver for Rochade?

Page 7: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 7

MetaQuestMetaQuest™

Confidential

ODBC

Open Rochade Metadata to Many Reporting Tools. Various BI tools have MS Access MS Excel Crystal Reports Many more…

Why Create an ODBC Driver for Rochade?

Page 8: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 8

MetaQuestMetaQuest™

Confidential

ODBC

Open Rochade Metadata to SQL. Join linked or namespaced items together and display item attribute

information. Filter queries based on complex SQL predicates. Select attributes to display in the result set Sort based on any column in the result set All standard SQL is available.

Why Create an ODBC Driver for Rochade?

Page 9: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 9

MetaQuestMetaQuest™

Confidential

ODBCHow do we Expose Rochade as Relational

Item Types – Exposed as Tables. Text Attributes – Exposed as columns. Value Attributes – Exposed as columns. Binary Attributes – Don’t have solution yet. Namespace Attributes – This is a 1 to many connection in

Rochade, so it’s exposed as a column in the child table that points at the parent.

Link Attributes – This is a many to many connection in Rochade, so it’s exposed as an intersection table.

Item Name – Exposed as “<item-name>” column.

Page 10: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 10

MetaQuestMetaQuest™

Confidential

ODBCHow do we Expose Rochade as Relational

Qualified Name – Exposed as “<Item-QName>” column. Last Update Date and Time – Exposed as “<Item-Last-

Update-TS>”. Last Update User – Exposed as “<Item-Last-Update-

User>”. Create Date and Time – Exposed as “<Item-Create-TS>”. Create User – Exposed as “<Item-Create-User>”. Link Qualifier – Exposed as “<Link-Qualifier>” in the

intersection table.

Page 11: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 11

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

Start with one portion of the Oracle RIM.

Pick item types that have link and namespace attributes.

Pick some of the attributes.

Page 12: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 12

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE DEFINITION (text) DESCRIPTION (text) ORA_HAS-SCHEMA (namespace)

Page 13: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 13

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_USER DEFINITION (text) DESCRIPTION (text) ORA_HAS-TABLE (namespace) ORA_HAS-INDEX (namespace)

Page 14: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 14

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_TABLE DEFINITION (text) COMMENT (text) ORA_INDEX (link) ORA_HAS-COLUMN (namespace)

Page 15: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 15

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_INDEX DEFINITION (text) COMMENT (text) ORA_UNIQUE (text) ORA_USES-COLUMN (link)

Page 16: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 16

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_COLUMN DEFINITION (text) DESCRIPTION (text) ORA_DATATYPE (text) ORA_NULLS-ALLOWED (text)

Page 17: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 17

MetaQuestMetaQuest™

Confidential

ODBCTransformation of Oracle RIM to Relational

ORA_COLUMN DEFINITION (text) DESCRIPTION (text) ORA_DATATYPE (text) ORA_NULLS-ALLOWED (text)

Table Name: ORA_COLUMN

<ITEM-NAME> <ITEM-ID> <PARENT~ORA_TABLE> DEFINITION DESCRIPTION ORA_NULLS-ALLOWEDORA_DATATYPE

Standard derived column names

derived column name to support namespace

Page 18: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 18

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE

1 to Many

1 to 1

Legend

Create table with same name.

Page 19: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 19

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE

1 to Many

1 to 1

Legend

ORA_USER Create table with same name and also add <PARENT~ORA_DATABASE> column.

Page 20: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 20

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE

1 to Many

1 to 1

Legend

ORA_USER

ORA_TABLE <JOIN~ORA_TABLE~ORA_INDEX

~ORA_INDEX>

Create table with same name and also add <PARENT~ORA_USER> column.

Page 21: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 21

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE

1 to Many

1 to 1

Legend

ORA_USER

ORA_TABLE <JOIN~ORA_TABLE~ORA_INDEX

~ORA_INDEX>

Since there’s a link attribute, create

intersection table.

Page 22: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 22

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE

1 to Many

1 to 1

Legend

ORA_USER

ORA_TABLE <JOIN~ORA_TABLE~ORA_INDEX

~ORA_INDEX>

Create table with same name and also add

<PARENT~ORA_USER> column.

ORA_INDEX

<JOIN~ORA_INDEX~ORA_USES-COLUMN

~ORA_COLUMN>

Page 23: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 23

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE

1 to Many

1 to 1

Legend

ORA_USER

ORA_TABLE <JOIN~ORA_TABLE~ORA_INDEX

~ORA_INDEX>

ORA_INDEX

<JOIN~ORA_INDEX~ORA_USES-COLUMN

~ORA_COLUMN>

Since there’s a link attribute, create intersection table.

Page 24: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 24

MetaQuestMetaQuest™

Confidential

ODBC

Link

Namespace

Legend

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

Transformation of Oracle RIM to Relational

ORA_DATABASE

ORA_COLUMN

ORA_TABLE ORA_INDEX

ORA_USER

1 to Many

1 to 1

Legend

<JOIN~ORA_TABLE~ORA_INDEX

~ORA_INDEX>

<JOIN~ORA_INDEX~ORA_USES-COLUMN

~ORA_COLUMN>

Create table with same name and also add <PARENT~ORA_TABLE> column.

Page 25: 2.0.0 Features What is ODBC? Why Create an ODBC Driver for Rochade?

May 7, 2007 25

MetaQuestMetaQuest™

Confidential

ODBCTransformation of Oracle RIM to Relational

<JOIN~ORA_TABLE~ORA_INDEX~ORA_INDEX> <PEER~ORA_TABLE~ORA_INDEX> - Contains the item ID of the ORA_TABLE table

row. <PEER~ORA_INDEX~ORA_INDEX> - Contains the item ID of the ORA_INDEX table

row. <LINK-QUALIFIER> - Contains the link qualifier text for the link.

<JOIN~ORA_INDEX~ORA_USES-COLUMN~ORA_COLUMN> <PEER~ORA_INDEX~ORA_USES-COLUMN> - Contains the item ID of the

ORA_INDEX table row. <PEER~ORA_COLUMN~ORA_USES-COLUMN> - Contains the item ID of the

ORA_COLUMN table row. <LINK-QUALIFIER> - Contains the link qualifier text for the link.

What’s the structure of the intersection tables from the previous slide?