Database Reference
In-Depth Information
2.2 Inter-level Mappings
Continuing from the previous section, the literature also describes two levels of mappings
that connect the three schemas (again, see [Date, 2004]). Figure 2-1 illustrates the
different schemas and their interrelationships with respect to the DBMS. From the figure,
observe that there are two levels of mapping — the external-conceptual mapping and the
conceptual-internal mapping:
The conceptual-internal mapping specifies how conceptual
records are represented at the internal level. If changes are made
at the internal level, this mapping must be updated. Traditionally,
the database administrator (DBA) maintains this mapping in
order to preserve data independence (the DBA is discussed in the
next section). In contemporary systems, the DBMS automatically
updates and maintains this mapping, transparent to the user.
The external-conceptual mapping specifies how external views
are linked to the conceptual level. In effect, this is achieved by
application programs and logical views via the host language and
the DSL.
It must be borne in mind that these levels are abstractions that facilitate
understanding of the DBS environment. As an end user, you will most likely not visibly
observe these levels of architecture. However, if as a software engineer, you find yourself
on a software engineering team that is constructing or maintaining a DBMS (a huge
undertaking), knowledge of these abstractions becomes critical.
2.3 The Database Administrator
The database administrator (DBA) has overall responsibility for the control of the system
at the technical level. Some of the functions of the DBA include:
Defining the conceptual schema (i.e. logical database design)
Defining the internal schema (i.e. physical database design)
Liaising with users and identifying / defining views to facilitate
the external schema
Defining security and integrity checks
Defining backup and recovery procedures
Monitoring performance and responding to changing requirements
In many organizations, the tendency is to include these functions in the job
description of the software engineer. This is quite rational and prudent, since good
software engineering includes good database design. However, large corporations that
rely on company database(s) on an on-going basis, usually employ the services of one or
more DBAs. Because of the importance of having reliable databases, DBAs are among the
highest paid information technology (IT) professionals.
 
Search WWH ::




Custom Search