Database Management System - Overview

Ways of Managing Data

  • Manual Information System: Records, files, index cards.

  • Sequential Information Systems: Tapes, files; slow, non-interactive, redundant.

  • File Based Information Systems: Disk (direct access); application program has its own file; data dependence; data redundancy.

  • DBMS based Information Systems: Generalized data management software; transaction processing.

Drawbacks of a File System

  • Data Inconsistency

  • Inflexibility

  • Limited Data Sharing

  • Poor enforcement of standards

  • Excessive program maintenance

Overview of Database

  • Organized way of storing interrelated data.

  • Why a Database?

    • Minimize Data Redundancy & Program Maintenance

    • Avoid Inconsistency of Data

    • Provide Sharing & Better Integration of Data

    • Ease of Application Development

    • Uniform Security, Privacy, and Integrity Controls

    • Data Accessibility and Responsiveness

    • Data Independence

Database Environment Components

  • CASE Tools

  • User Interface

  • DBMS

  • Repository

  • Application Programs

  • Database

Terms and Concepts

  • DBMS: Software system to define, create, maintain, and provide controlled access to the database and repository.

  • Repository: Data Dictionary; place where all metadata is stored; may include information on relationships between files or tables.

  • Metadata: Data about data; characteristics describing attributes of an entity (e.g., name, data type, size, format).

  • Data Independence: Physical representation and location of data are separated from its use. Applications don’t need to know how/where data is stored.

Data Dependence vs. Independence

  • Dependent: Storage structure change requires program change (e.g., linked list, tree, array).

  • Independent: Storage structure change does not require program change.

Components of Database

  • Database Engine

  • Data Dictionary

  • Application Generator

  • Communication and Integration

  • Security and Other Utilities

Types of Databases

  • PC Databases

  • Centralized Databases

  • Client/Server Databases

  • Distributed Databases (Homogeneous & Heterogeneous/Federated)

Database Models

  • Levels of Abstraction: Conceptual, logical, physical.

  • DBMS Models: Relational, Hierarchic, Network, Object-Oriented, Object-Relational.

Levels of Abstraction

  • Instance and schemas (Physical, Logical, View/Conceptual level schema/subschema).

  • Application programs adapt physical data independence.

Database Models Overview

  • Hierarchical Model: Similar to data structures in programming languages.

  • Network Model: Provides single entries of data and navigational “links”.

  • Relational Model: Data as relations (tables) with all data visible.

  • Object-Oriented Data Model: Encapsulates data and operations as “Objects”.

  • Object-Relational Model: Combines Relational Model properties with OO features (user-defined datatypes/functions, inheritance).

Database System Life Cycle (DSLC)

  1. Design

  2. Physical Creation

  3. Conversion

  4. Integration

  5. Operations

  6. Growth, Change, & Maintenance

DSLC - Design

  • Determination of needs, Conceptual Model development (using Entity-Relationship diagrams), Data Dictionary construction, Logical Model development.

DSLC - Physical Creation

  • Physical Model development (data formats, indexes), prototype database loading & testing, security/privacy/access controls implementation, integrity constraints implementation.

DSLC - Conversion

  • Converting existing data/applications to use the new database (may need conversion utilities).

DSLC - Integration

  • Integration of converted and new applications.

DSLC - Operations

  • Full-scale application runs, privacy/security/access control in place, recovery/backup procedures established and used.

DSLC - Growth, Change, & Maintenance

  • Modifications to database and applications to meet new needs and requirements.

Functions of a Database

  • Data Definition Language (DDL)

  • Data Manipulation Language (DML)

  • Data Security and Integrity

  • Data Recovery and Concurrency

  • Data Dictionary

  • Performance

Database Users

  • (Refer to text for types of users, their tasks, and differentiation.)

Trends in Database Technology

  • Evolution from Hierarchical to Relational, Object-Oriented, and merging data models.