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 databases 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. |