DBMS Chapter 2 Flashcards
Data abstraction
The suppression of details and highlighting of the essential features
Data Model
A set of concepts to describe the structure of a database, and certain constraints that the database should obey.
Client Module
Designed so that it will run on a user workstation or PC
Server Module
Handles data storage, access, search functions
Categories of data models
Conceptual (high-level, semantic) data models:
Physical (low-level, internal) data models:
Implementation (representational) data models:
Conceptual (high-level, semantic) data models
Provide concepts that are close to the way many users perceive data.
Physical (low-level, internal) data models
Provide concepts that describe details of how data is stored in the computer
Implementation (representational) data models
Provide concepts that fall between the above two, balancing user views with some computer storage details.
Advantage of Hierarchical Model
- Hierarchical Model is simple to construct and operate on
- Corresponds to a number of natural hierarchically organized domains
- Language is simple
Disadvantage of Hierarchical Model
- Navigational and procedural nature of processing
- Database is visualized as a linear arrangement of records
- Little scope for “query optimization”
Advantages of Network Model
- Network Model is able to model complex relationships.
- Can handle most situations for modeling using record types and relationship types.
Disadvantage of Network Model
Navigational and procedural nature of processing
Database contains a complex array of pointers that thread through a set of records.
Little scope for automated “query optimization”
Database Schema
The description of a database. Includes descriptions of the database structure and the constraints that should hold on the database.
Schema Diagram
A diagrammatic display of (some aspects of) a database schema.
Schema Construct
A component of the schema or an object within the schema
Database Instance
The actual data stored in a database at a particular moment in time
Database State
Refers to the content of a database at a moment in time.
Valid State
A state that satisfies the structure and constraints of the database.
Database schema vs. Database state
- The database schema changes very infrequently. The database state changes every time it’s updated
- Schema is also called intension, whereas state is called extension.
3-schema Architecture
Internal schema, Conceptual schema, External schema
Internal schema
Describes physical storage structures and access paths. Typically uses a physical data model.
Conceptual schema
Describes the structure and constraints for the whole database for a community of users. Uses a conceptual or an implementation data model.
External schema
Describes the various user views. Usually uses the same data model as the conceptual level.
Mappings
Processes of transforming requests and results between levels
Data independence
defined as the capacity to change the schema at one level of a database system without having to change the schema at the next higher level
Logical Data Independence
Can change the conceptual schema without changing the external schemas
Physical Data Independence
Can change the internal schema without changing the conceptual schema
Data Definition Language (DDL)
Used by the DBA and database designers to specify the conceptual schema of a database.
Storage definition language (SDL)
Used to specify the internal schema
View definition language (VDL)
used to specify user views and their mappings to the concept schema, used to define conceptual and external schemas
Data Manipulation Language (DML):
Used to specify database retrievals and updates.
2-types of DMLS
(high level)Non-procedural Languages and (low level)procedural languages
High Level language
Set-oriented and specify what data to retrieve than how to retrieve
Low Level language
Record-at-a-time; they specify how to retrieve data and include constructs such as looping.
DBMS Interfaces
Stand-alone query language interfaces
Programmer interfaces for embedding DML in programming languages
Database System Utilities Functions
- Loading data
- Backing up database
- Reorganizing file structures.
- Report generation
- Performance monitoring
Data dictionary
Used to store schema descriptions as well as design decisions, application program descriptions, user information, usage standards, etc.
Backup
Backup of database by dumping into different file organizations
Application development environment
Systems provide an environment for developer database applications and including database design
Centralized DBMS
Combines everything into single system
- DBMS software, hardware, application programs and user interface
Client
User machine that provide appropriate interfaces and a client-version of the system to access and utilize the server resources.
Server
System containing both hardware and software that can provide services to the client machines
DBMS Server
Provides database query and transaction services to the clients
Two Tier Client-Server Architecture
User Interface Programs and Application Programs run on the client side
client—>Communication network —>Server
- Simplicity and seamless compatibility
Advantage of Two Tier Client-Server Architecture
The advantages of this architecture are its simplicity and seamless compatibility with existing
systems.
Three Tier Client-Server
Adds a web server between the client and database server
Client - Better security
web server(middle tier)
This server plays an intermediary role by running application programs and storing business rules (procedures or constraints) that are used to access data from the database server.
Variations of Distributed Environments
Homogeneous DDBMS
Heterogeneous DDBMS
Federated or Multidatabase Systems
Classification of DBMSs
Traditional:Relational, Network, Hierarchical.
Emerging: Object-oriented, Object-relational