Database Systems Essentials
Data vs. Information
Data: Raw facts. These are the building blocks of information and have little meaning on their
own. They need context and processing to reveal meaning.
Information: The result of processing raw data to reveal meaning. Accurate, relevant, and
timely information is crucial for good decision-making.
What is a Database?
Database:
A shared, integrated computer structure that stores a collection of end-user data and
metadata.
End-user data: Raw facts of interest to the end user.
Metadata: Data about data. It describes the characteristics and relationships of the data.
A database acts as a valuable asset for decision-making by organizing and making data
accessible.
What is a Database Management System (DBMS)?
DBMS: A collection of programs that manages the database structure and controls access to
the data. It acts as an intermediary between the user and the database.
Key Functions of a DBMS:
Data Dictionary Management: Stores and manages metadata (data definitions and
relationships) in a data dictionary. Provides data abstraction and removes structural and
data dependency.
Data Storage Management: Creates and manages complex structures for data storage,
including related forms, screen definitions, and report definitions. Also involved in
performance tuning.
Data Transformation and Presentation: Transforms data to conform to required structures
upon entry and transforms physically retrieved data to meet user expectations.
Security Management: Creates a security system to enforce user security and data
privacy, determining access levels for users and data items.
Multiuser Access Control: Uses algorithms to ensure concurrent access does not
compromise data integrity.
Backup and Recovery Management: Provides backup and recovery mechanisms to ensure
data safety and integrity after failures.
Data Integrity Management: Promotes and enforces integrity rules, minimizing
redundancy and maximizing consistency. Uses data relationships from the data dictionary
to enforce integrity.
Database Access Languages and Application Programming Interfaces: Provides access
through query languages, such as Structured Query Language (SQL), which is the de facto
standard.
Database Communication Interfaces: Accepts user requests via multiple network
environments, enabling access through web browsers, automated reports, and integration
with other systems.
Why Databases Are Valuable Assets
Improved Data Sharing: Allows multiple users to access the same data.
Improved Data Security: Centralized control over access and usage.
Better Data Integration: Combines data from various sources into a cohesive whole.
Minimized Data Inconsistency: Reduces conflicting versions of the same data.
Improved Data Access: Easier and more efficient retrieval of data.
Improved Decision Making: Based on accurate, timely, and relevant information.
Increased End-User Productivity: Users can focus on tasks rather than data management
complexities.
Types of Databases
Databases can be classified based on several criteria:
Number of Users:
Single-user database: Supports only one user at a time (e.g., desktop databases like MS
Access).
Multiuser database: Supports multiple users concurrently (e.g., workgroup and enterprise
databases like MS SQL Server, IBM DB2, MySQL, Oracle).
Database Location(s):
Centralized database: Data located at a single site.
Distributed database: Data distributed across multiple sites.
Expected Type and Extent of Use:
Operational database: Supports day-to-day operations (transactional or production
databases).
Data warehouse: Stores data for tactical or strategic decision-making (analytical
databases).
Data Structure:
Structured data: Data that has been formatted for processing.
Semistructured data: Data that has undergone some processing, often represented in
formats like XML.
Unstructured data: Data in its original, unprocessed state.
The Importance of Database Design
Database Design: Focuses on designing the database structure for end-user data.
Well-designed database:
Facilitates efficient data management.
Generates accurate and valuable information.
Poorly designed database:
Causes difficult-to-trace errors.
Leads to inaccurate information and poor decision-making.
Data Modeling Skills: Crucial for effective database design, facilitating communication
between designers, users, and developers.
Evolution from File Systems
File Systems:
Early methods of data management, evolving from manual systems to computerized
collections of files.
Manual file systems: Served small data collections but were cumbersome for larger ones.
Computerized file systems: Data processing specialists wrote software to manage data
stored in files. Each file often had its own application program and was owned by a
specific department.
Problems with File Systems:
Requires Extensive Programming: Even simple data retrieval tasks needed significant
programming effort. Ad hoc queries were impossible.
Structural Dependence: Access to data was tied to the file's specific structure. Any change
in structure required modification of all related programs.
Data Dependence: Data access was dependent on how data was stored. Changes in
physical storage characteristics affected data access.
Data Redundancy: The same data was stored in multiple locations, leading to
inconsistencies.
Data Inconsistency: Different and conflicting versions of the same data existed in
different places.
Data Anomalies: Abnormalities occurred when changes to redundant data were not
applied consistently (update, insertion, deletion anomalies).
Security Features Difficult to Program: Often omitted or inadequate.
System Administration is Complex and Difficult: Managing numerous independent files
was challenging.
Difficult to Make Changes to Existing Structures: High maintenance overhead.
The Database System Environment
A database system consists of five major components:
Hardware: All physical devices used by the system.
Software:
Operating system software.
DBMS software.
Application programs and utility software.
People: All users of the database system (administrators, designers, analysts, programmers,
end users).
Procedures: Instructions and rules governing the design and use of the database system.
Data: The collection of facts stored in the database.