Google Answers Logo
View Question
 
Q: Data independence. ( Answered 4 out of 5 stars,   0 Comments )
Question  
Subject: Data independence.
Category: Computers > Software
Asked by: 888-ga
List Price: $8.00
Posted: 23 Jun 2003 23:41 PDT
Expires: 23 Jul 2003 23:41 PDT
Question ID: 221045
How is the three-schema architecture related to data independence?
Answer  
Subject: Re: Data independence.
Answered By: wlk115-ga on 24 Jun 2003 23:14 PDT
Rated:4 out of 5 stars
 
Basically a Three-schema Architecture has an Internal level, a
Conceptual and an External level. The advantages of the three tiered
architecture are that
this division into levels allows both developers and users to work on
their own levels. They do not need to know the details of the other
levels AND they do not have to know anything about changes in the
other levels.

This is a detailed description based on a lecture outline on Database
Concepts and Architecture from
http://www.cs.montana.edu/defrance/classes/spring-2003/cs435/lectures/DatabaseArchitecture.html

“Database Schemas and Instance

Understanding database systems requires making a clear distinction
between the database’s structure (the schema) and its contents (the
state or instances.)

Schema is the description of the structure database
–the meta data (specified during database design)
–does not change often

Instance - the actual data
–changes all the time
–the database at an instant in time

The DBMS [Database Management System] architecture
The architecture helps achieve the important characteristics of a DBMS

Three of these important characteristics are:
-Data independence
–Multiple user views
–A catalog to store the metadata that is available to both the user
and the DBMS

The goal of the architecture used is to separate the user applications
and the physical database

Three-schema Architecture
A schema is a description of the structure of the database
-Internal level has an internal schema
-Conceptual level has a conceptual schema
-External level usually has several external schemas
Note that each of these schemas are only descriptions of data; the
data really only exists at the physical level
 
External Level 
–The end user is presented with special views that are tailored to
their specific needs
–Some of these views may be forms to fill out, others for interactive
retrieval of information, etc.
–Many different views may be available that are completely different
that the way the base tables are arranged

Conceptual or logical level 
–Description of the structure of the entire DB
–Hides the details of physical storage
–Concentrates on describing entities, data types, relationships, user
operations, and constraints.
–In the relational model, this is the base tables
–Changes at this level can be made without having any effect on the
external level
 
Internal Level 
-This is a description of the physical storage structure of the
database
-Operations performed here are translated into modifications of the
contents and structure of the files
 
Advantages of the three tiered architecture
This division into levels allows both developers and users to work on
their own levels
–They do not need to know the details of the other levels
–and they do not have to know anything about changes in the other
levels

Most DBMS do not separate the three levels completely.
 
Mappings
Note that The only data that is saved in the database is at the
internal level

Both the data and metadata are saved by the DBMS at the physical level
–Each user group refers only to its own external schema
–so the DBMS must transform a request on an external schema 
-into a request against the conceptual schema, 
-then into a request on the internal schema for processing.

If the request is for retrieval there is a lot of overhead.
The process of transforming requests and results between levels are
called mappings.
These mappings may be time consuming, so some DBMS do not separate the
three levels completely.
 
Data independence                                   
One reason for the three level architecture is to give data
independence.
One way to define data independence: the capacity to change the schema
at one level of a DB system without having to change the schema at the
next higher level
If the schema at one level is changed, 
–and the mapping to the next higher level are changed,
–the schema at the next level can remain unchanged.


Two types of data independence
Logical data independence 
–Possible to change the conceptual schema without changing external
schema or application programs
–Columns could be added to tables without changing the existing
external schema or application programs
–Changes here necessitate changes to the physical level

Physical data independence 
–Possible to change internal schema without changing the conceptual
schema

Example of physical data independence:
–DBA decides it is more efficient to store the data in a B+ tree
instead of a heap, so changes the internal schema
–then he changes the mapping to the conceptual schema
–conceptual schema remains unchanged."
 

Another from The Department of Computer and Information Science and
Engineering - University of Florida
http://www.cise.ufl.edu/~jhammer/classes/4720-5725/SP03/assignment1_solutions_part2.pdf

Database Management Systems

“Explain the significance of data independence in a modern database
management system.
How is data independence related to the three-schema architecture? 
Answer: Data independence provides the ability to modify a schema at
one level without affecting the schema definition at the next higher
level. It is very important to have at least one layer of abstraction
above the physical schema...
... The three-schema architecture introduces two levels of data
abstraction above the physical schema."

~wlk115

search terms used:
three-schema architecture and data independence
three-schema architecture
data independence 

If you need more information please request a clarification.
888-ga rated this answer:4 out of 5 stars

Comments  
There are no comments at this time.

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at answers-support@google.com with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  


Google Home - Answers FAQ - Terms of Service - Privacy Policy