Title: File Systems and Databases
1Chapter 1
File Systems and Databases
Database Systems Design, Implementation,
and Management, 4th Edition Peter Rob Carlos
Coronel
2Introducing the Database
- Major Database Concepts
- Data and information
- Data - Raw facts
- Information - Processed data
- Data management
- Database
- Metadata
- Database management system (DBMS)
3Sales per Employee for Each of ROBCORS Two
Divisions
Figure 1.1
4Introducing the Database
- Importance of DBMS
- It helps make data management more efficient and
effective. - Its query language allows quick answers to ad hoc
queries. - It provides end users better access to more and
better-managed data. - It promotes an integrated view of organizations
operations -- big picture. - It reduces the probability of inconsistent data.
5The DBMS Manages the Interaction Between the End
User and the Database
Figure 1.2
6Introducing the Database
- Why Database Design Is Important?
- A well-designed database facilitates data
management and becomes a valuable information
generator. - A poorly designed database is a breeding ground
for uncontrolled data redundancies. - A poorly designed database generates errors that
lead to bad decisions.
7Historical Roots
- Why Study File Systems?
- It provides historical perspective.
- It teaches lessons to avoid pitfalls of data
management. - Its simple characteristics facilitate
understanding of the design complexity of a
database. - It provides useful knowledge for converting a
file system to a database system.
8Contents of the CUSTOMER File
Figure 1.3
9Table 1.1 Basic File Terminology
10Contents of the AGENT File
Figure 1.4
11A Simple File System
Figure 1.5
12File System Critique
- File System Data Management
- File systems require extensive programming in a
third-generation language (3GL). - As the number of files expands, system
administration becomes difficult. - Making changes in existing file structures is
important and difficult. - Security features to safeguard data are difficult
to program and usually omitted. - Difficulty to pool data creates islands of
information.
13File System Critique
- Structural and Data Dependence
- Structural Dependence
- A change in any files structure requires the
modification of all programs using that file. - Data Dependence
- A change in any files data characteristics
requires changes in all data access programs. - Significance of data dependence is the difference
between the data logical format and the data
physical format. - Data dependence makes file systems extremely
cumbersome from a programming and data management
point of view.
14File System Critique
- Field Definitions and Naming Conventions
- A good (flexible) record definition anticipates
reporting requirements by breaking up fields into
their components. - Example
- Customer Name ? Last Name, First Name, Initial
- Customer Address ? Street Address, City, State
15File System Critique
- Field Definitions and Naming Conventions
- Selecting proper field names is very important.
- Names must be as descriptive as possible within
restrictions. - Naming must reflect designers documentation
needs and users reporting and processing
requirements.
16File System Critique
- Data Redundancy
- Uncontrolled data redundancy sets the stage for
- Data Inconsistency (lack of data integrity)
- Data anomalies
- Modification anomalies
- Insertion anomalies
- Deletion anomalies
17Figure 1.6
18The Database System Environment
Figure 1.7
Figure 1.7
19Database Systems
- The Database System Components
- Hardware
- Computer
- Peripherals
- Software
- Operating systems software
- DBMS software
- Applications programs and utilities software
20Database Systems
- The Database System Components
- People
- Systems administrators
- Database administrators (DBAs)
- Database designers
- Systems analysts and programmers
- End users
- Procedures
- Instructions and rules that govern the design and
use of the database system - Data
- Collection of facts stored in the database
21Database Systems
- The Database System Components
- The complexity of database systems depends on
various organizational factors - Organizations size
- Organizations function
- Organizations corporate culture
- Organizational activities and environment
- Database solutions must be cost effective AND
strategically effective.
22Database Systems
- Types of Database Systems
- Number of Users
- Single-user
- Desktop database
- Multiuser
- Workgroup database
- Enterprise database
- Scope
- Desktop
- Workgroup
- Enterprise
23Database Systems
- Types of Database Systems
- Location
- Centralized
- Distributed
- Use
- Transactional (Production)
- Decision support
- Data warehouse
24Database Systems
- DBMS Functions
- 1. Data Dictionary Management
- 2. Data Storage Management
- 3. Data Transformation and Presentation
- 4. Security Management
- 5. Multi-User Access Control
- 6. Backup and Recovery Management
- 7. Data Integrity Management
- 8. Database Access Languages (DDL and DML) and
Application Programming Interfaces - 9. Database Communication Interfaces
25Database Models
- A database model is a collection of logical
constructs used to represent the data structure
and the data relationships found within the
database. - Two Categories of Database Models
- Conceptual models focus on the logical nature of
the data representation. They are concerned with
what is represented rather than how it is
represented. - Implementation models place the emphasis on how
the data are represented in the database or on
how the data structures are implemented.
26 Database Models
- Three Types of Relationships
- One-to-many relationships (1M)
- A painter paints many different paintings, but
each one of them is painted by only that painter. - PAINTER (1) paints PAINTING (M)
- Many-to-many relationships (MN)
- An employee might learn many job skills, and each
job skill might be learned by many employees. - EMPLOYEE (M) learns SKILL (N)
- One-to-one relationships (11)
- Each store is managed by a single employee and
each store manager (employee) only manages a
single store. - EMPLOYEE (1) manages STORE (1)
27Database Models
- Three Types of Implementation Database Models
- Hierarchical database model
- Network database model
- Relational database model
28A Hierarchical Structure
Figure 1.8
29 Database Models
- Hierarchical Database Model
- Basic Structure
- Collection of records logically organized to
conform to the upside-down tree (hierarchical)
structure. - The top layer is perceived as the parent of the
segment directly beneath it. - The segments below other segments are the
children of the segment above them. - A tree structure is represented as a hierarchical
path on the computers storage media.
30 Database Models
- Hierarchical Database Model
- Advantages
- Conceptual simplicity
- Database security
- Data independence
- Database integrity
- Efficiency dealing with a large database
- Disadvantages
- Complex implementation
- Difficult to manage
- Lacks structural independence
- Applications programming and use complexity
- Implementation limitations
- Lack of standards
31Child with Multiple Parents
Figure 1.9
32 Database Models
- Network Database Model
- Basic Structure
- Set -- A relationship is called a set. Each set
is composed of at least two record types an
owner (parent) record and a member (child)
record. - A set is represents a 1M relationship between
the owner and the member.
33A Network Database Model
Figure 1.10
34 Database Models
- Network Database Model
- Advantages
- Conceptual simplicity
- Handles more relationship types
- Data access flexibility
- Promotes database integrity
- Data independence
- Conformance to standards
- Disadvantages
- System complexity
- Lack of structural independence
35 Database Models
- Relational Database Model
- Basic Structure
- RDBMS allows operations in a human logical
environment. - The relational database is perceived as a
collection of tables. - Each table consists of a series of row/column
intersections. - Tables (or relations) are related to each other
by sharing a common entity characteristic. - The relationship type is often shown in a
relational schema. - A table yields complete data and structural
independence.
36Linking Relational Tables
Figure 1.11
37 Database Models
- Relational Database Model
- Advantages
- Structural independence
- Improved conceptual simplicity
- Easier database design, implementation,
management, and use - Ad hoc query capability (SQL)
- Powerful database management system
- Disadvantages
- Substantial hardware and system software overhead
- Possibility of poor design and implementation
- Potential islands of information problems
38A Relational Schema
Figure 1.12
39Database Models
- Entity-Relationship Data Model
- It is one of the most widely accepted graphical
data modeling tools. - It graphically represents data as entities and
their relationships in a database structure. - It complements the relational data model concepts.
40Database Models
- Entity Relationship Data Model
- Basic Structure
- E-R models are normally represented in an entity
relationship diagram (ERD). - An entity is represented by a rectangle.
- Each entity is described by a set of attributes.
An attribute describes a particular
characteristics of the entity. - A relationship is represented by a diamond
connected to the related entities.
41Figure 1.13 Relationship Depiction The ERD
42Figure 1.14 Relationship Depiction The Crows
Foot
43Database Models
- Entity-Relationship Data Model
- Advantages
- Exceptional conceptual simplicity
- Visual representation
- Effective communication tool
- Integrated with the relational database model
- Disadvantages
- Limited constraint representation
- Limited relationship representation
- No data manipulation language
- Loss of information content
44Database Models
- Object-Oriented Database Model
- Characteristics
- An object is described by its factual content.
- An object includes information about
relationships between the facts within the
object, as well as with other objects. - An object is a self-contained building block for
autonomous structures.
45Database Models
- Object-Oriented Database Model
- Basic Structure
- Objects are abstractions of real-world entities
or events. - Attributes describe the properties of an object.
- Objects that share similar characteristics are
grouped in classes. - A class is a collection of similar objects with
shared structure (attributes) and behavior
(methods). - Classes are organized in a class hierarchy.
- An object can inherit the attributes and methods
of the classes above it.
46A Comparison The OO Data Model and the ER Model
Figure 1.15
47Database Models
- Object-Oriented Database Model
- Advantages
- Add semantic content
- Visual presentation includes semantic content
- Database integrity
- Both structural and data independence
- Disadvantages
- Lack of OODM standards
- Complex navigational data access
- Steep learning curve
- High system overhead slows transactions
48The Development of Data Models
Figure 1.16
49Wrap-Up The Evolution of Data Models
- Common characteristics required for data models
- A data model must show some degree of conceptual
simplicity without compromising the semantic
completeness. - A data model must represent the real world as
closely as possible. - The representation of the real-world
transformations (behavior) must be in compliance
with the consistency and integrity
characteristics of any data model.
50Wrap-Up The Evolution of Data Models
- Database Models and the Internet
- The use of the Internet as a prime business tool
is shifting focus to database products that
interface efficiently and easily with the
Internet. - Successful Internet age databases are
characterized by - Flexible, efficient, and secure Internet access.
- Support for complex data types and relationships.
- Seamless interfacing with multiple data sources
and structures. - Simplicity of the conceptual database model.
- An abundance of available database tools.
- A powerful DBMS to help make the DBAs job easier.