AN ARCHITECTURE FOR DATABASE SYSTEM

Click here for audio-text lecture and feed it to the speech agent

EXTERNAL LEVEL
How data is viewed by an individual user

CONCEPTUAL LEVEL
How data is viewed by a community of users

INTERNAL LEVEL
How data is physically stored


DATA MODELS AND SCHEMAS


  • DATA MODEL

    A data model is a set of concepts that can be used to describe the structure of the database: data types, relationships, and constraints that should hold on the data.

    Most data models also include a set of operations for specifying retrievals and updates on the database.

  • DATABASE SCHEMA

    A database schema is the description of a database.



    THE EXTERNAL LEVEL

  • Application programmer uses a HOST LANGUAGE: COBOL, PL/1, C
  • Embedded in the host language is a DATA SUBLANGUAGE DSL

    Example: SQL, dBASE

  • Data Sublanguage consists of:
    Data Definition Language DDL
    Data Manipulation Language DML

  • Data Definition Language declares database objects

  • Data Manipulation Language manipulates database objects
    e.g. retrievals and updates

    THE CONCEPTUAL LEVEL


    A representation of the entire information content of the database

  • The conceptual schema is a definition of the view of the total database content

  • Conceptual schema, in most cases, is the union of external schemas

  • One can add: security and integrity checks, semantic models and data dictionary (see later)

    THE INTERNAL LEVEL

  • The internal view is a low-level representation of the entire database

  • Internal record, or stored record, is built upon physical records, or pages and blocks





    MAPPINGS

  • External/Conceptual

  • Conceptual/Internal

    THE DATABASE ADMINISTRATOR

  • Defines conceptual schema

  • Defines internal schema

  • Communicates with users

  • Defines security and integrity checks

  • Defines backup and recovery procedures

  • Monitors performance and decide when to reorganize the database

    THE DATABASE MANAGEMENT SYSTEM

    1. A user issues an access request

    2. DBMS interpretes the request

    3. DBMS performs external/conceptual and conceptual/interal mappings

    4. DBMS executes the necessary operations on stored database


    THUS DBMS MUST SUPPORT

  • data definition

  • data manipulation

  • routine and unplanned requests

  • data security and integrity

  • data recovery and concurrency

  • data dictionary

  • performance tuning

    DISTRIBUTED DATABASE SYSTEMS

  • Databases and Data Communications (DB/DC) are coming together

  • Frontend vs. Backend


  • Frontend vs. Backend running on different machines


  • One backend with multiple frontends


  • Each machine is both backend and frontend



  • Client vs. Server

  • Distributed systems
    Homogeneous
    Heterogeneous

  • Distributed Database System has homogeneous DBMSs

  • Distributed Multiple Database System has heterogeneous DBMSs

  • Federated System is another name for distributed multiple database system

  • INTEROPERABILITY
    A user can issue access request and obtain consistent answer on any of the federated machines

    DATA DICTIONARY

  • Data dictionary is a software utility that catalogs an organization's data resources: what data exist, where they originate, who uses them, their format, etc.

  • Data dictionary not only tells where the data are located in the database, but also which application programs process the data, and closely coordinates with the DBMS in controlling access to the database.

  • Data dictionary contains:
    all descriptive information needed in the database environment, AND cross-references:
    program <-> item
    program <-> record
    program <-> file
    organization <-> system
    file <-> system
    system <-> schedule