Wrapping Relational Data Model to Object

Download Report

Transcript Wrapping Relational Data Model to Object

SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
COMPUTER ENGINEERING DEPARTMENT
TECHNICAL UNIVERSITY OF LODZ, POLAND
Wrapping Relational Data Structures to ObjectOriented Databases in the Data Grid Architecture
Radoslaw Adamus, Kamil Kuliberda, Jacek Wislicki, Kazimierz Subieta
SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
R. Adamus, K. Kuliberda, J. Wislicki, K. Subieta
Wrapping Relational Data Structures to Object-Oriented Databases in the Data Grid Architecture
1
SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
Wrappers Introduction
• problem started in late 80-ties – first approaches concerning object-oriented
wrappers built on top of the relational database;
motivation for the wrapper – business data virtual integration;
•
• transparency – grid needs this;
• data optimization – utilization of optimization mechanisms in both data models;
• used techologies – Stack-Based Approach (SBA), M0 model, SBQL, Updateable Views
”Data Grid” conception
•integrates business information;
•data-intensive grid – simply data grid;
•simplification of data access;
•common grid data model for virtualization of local schemata – canonical
data model;
•implementation is based on ODRA database engine
2
R. Adamus, K. Kuliberda, J. Wislicki, K. Subieta
Wrapping Relational Data Structures to Object-Oriented Databases in the Data Grid Architecture
SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
Data Grid architecture
Global
client 1
Global
client 2
Global
client 3
Global schema
Global infrastructures (trust, transactions,
indexing, workflow, enhanced web services)
Grid
designer
Global virtual object and service store
(implemented through global views)
Integration
schema
Wrapper +
Contributory
views
Contributory
schema
Wrapper +
Contributory
views
Contributory
schema
Local server 1
Local
schema
Local server 2
Local
schema
3
R. Adamus, K. Kuliberda, J. Wislicki, K. Subieta
Wrapping Relational Data Structures to Object-Oriented Databases in the Data Grid Architecture
SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
Object-to-relational wrapper
• it combines exploiting SBQL query engine and SQL query engine;
• externally data structure is designed according to the object-oriented model
and business intention of global schema – front-end;
• internally relational structures are presented as M0 model – back-end;
• updateable object views define mapping between front-end and
back-end, B into F for querying, F onto B for updating;
• the wrapper utilizes three major optimization methods for back-end side:
- rewriting (for instance pushing selections before joins),
- indices (i.e. internal auxiliary structures for fast access),
- fast joins (e.g. hash joins);
• during optimization, SBQL syntactic query tree is first modified from business to M0 model;
• wrapper obtain much larger tree, but addressing a primitive object database that is 1:1 mapped
to corresponding relational database;
• in resulting tree wrapper is looking for some patterns that can be mapped
to SQL and which enforce SQL optimization methods;
• example; if we know that RDBMS has an index for Name of Person we are looking for pattern
Person where Name = “Doe”;
• then we substitute above pattern for dynamic SQL statement:
exec_immediately(select * from Person where Name = “Doe”) ;
4
R. Adamus, K. Kuliberda, J. Wislicki, K. Subieta
Wrapping Relational Data Structures to Object-Oriented Databases in the Data Grid Architecture
SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
Wrapper architecture
SBQL front-end query
Business model
(object oriented)
Parser
front-end SBQL query tree
External wrapper (updatable
views + query modification)
Rewriting query optimizer
back-end SBQL query tree
Internal wrapper (convertion of
parts of the tree to SQL
exec_immediately)
M0 representation
of relational model
SBQL interpreter
Dynamic SQL
(ODBC, JDBC, ADO,...)
Info on indices and fast joins
RDBMS
Relational model
5
R. Adamus, K. Kuliberda, J. Wislicki, K. Subieta
Wrapping Relational Data Structures to Object-Oriented Databases in the Data Grid Architecture
SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
Conclusions, future work
• presented wrapper architecture enables building generic solutions allowing presentation
of data stored in various relational resources as object-oriented models
• these models are visible at the top level of the grid and accessing the data with object
query language;
• presented optimization process assumes correct relational-to-object model transformation
(with no loss of database logic)
• allow on accessibility of the relational model optimization information such as indices
and/or primary-foreign key relations;
• the method is currently being implemented as a part of our new project ODRA devoted to
Web and grid applications;
• currently, based on presented conception, our research concerns object-to-semistructured
wrapper exploiting native optimization mechanisms for querying semistructured data (e.g.
Lore DBMS XML-based);
6
R. Adamus, K. Kuliberda, J. Wislicki, K. Subieta
Wrapping Relational Data Structures to Object-Oriented Databases in the Data Grid Architecture
SOFSEM-SRF 2006, January 21-26, Merin, Czech Republic
Thank you for your attention!
7
R. Adamus, K. Kuliberda, J. Wislicki, K. Subieta
Wrapping Relational Data Structures to Object-Oriented Databases in the Data Grid Architecture