Specialized structure that allows computer-based systems to store, manage, and retrieve data very quickly
Databases are valuable assets for decision making
Database design
Defines the database's expected use
Different approach needed for different types of databases
Avoids redundant data
Poorly designed database generates errors that can lead to bad decisions and failure of organization
Database design is the process that yields the description of the database structure and determines the database components
Managing data with file systems is obsolete
Understanding file system characteristics makes database design easier to understand
Awareness of problems with file systems is important
Data
Raw facts and figures that do not have any meaning until processed and given a context
Information
Data which has been processed within a context in order to give it meaning
Information examples
Average test scores
Most popular ice cream flavour
Holiday cottage booking patterns
Knowledge
Familiarity, awareness, and understanding of information as it applies to an environment. New knowledge can be derived from old knowledge.
Database Management System (DBMS)
Collection of programs that manages database structure and controls access to data. Acts as an intermediary between the user and the database, enabling data sharing and presenting an integrated view of the data.
Types of databases by number of users
Single-user database
Multiuser database
Workgroup database
Enterprise database
Types of databases by location
Centralized database
Distributed database
Cloud database
Types of databases by use
Transactional (or production) database
Data warehouse
Database design
The process that yields the description of the database structure and determines the database components
Example of a poor design
It would be difficult, if not impossible, to produce an alphabetical listing of employees based on their last names
Evolution of File System Data Processing
1. Manual File Systems
2. Computerized File Systems
3. File System Redux: Modern End-User Productivity Tools
Manual File Systems
Collection of file folders kept in file cabinet
Organization within folders based on data's expected use (ideally logically related)
System adequate for small amounts of data with few reporting requirements
Finding and using data in growing collections of file folders became time-consuming and cumbersome
Computerized File Systems
Generating reports from manual file systems was slow and cumbersome
Data processing (DP) specialist was hired to create a computer-based system that would track data and produce required reports
Initially, the computer files within the file system were similar to the manual files
Structural dependence
Access to a file is dependent on its own structure
Structural independence
File structure is changed without affecting the application's ability to access the data
Data dependence
Changes in the data storage characteristics without affecting the application program's ability to access the data
Logical data format
How the human being views the data
Physical data format
How the computer "sees" the data
Field definitions and naming conventions
Flexible record definition anticipates reporting requirements by breaking up fields into their component parts
Data redundancy
Exists when the same data are stored unnecessarily at different places
Types of data anomalies
Update anomalies
Insertion anomalies
Deletion anomalies
File system
Many separate and unrelated files
Database
Logically related data stored in a single logical data repository
Database system
An organization of components that define and regulate the collection, storage, management and use of data within a database environment
Parts of the database system environment
Hardware
Software
People
Procedures
Data
Types of users in a database system
Systems administrators
Database administrators (DBAs)
Database designers
Systems analysts and programmers
End users
DBMS functions
Data dictionary management
Data storage management
Data transformation and presentation
Security management
Multiuser access control
Backup and recovery management
Data integrity management
Database access languages and application programming interfaces
Database communication interfaces
Why use a DBMS?
Data independence and efficient access
Reduced application development time
Data integrity and security
Uniform data administration
Shift from computation to information
Datasets increasing in diversity and volume
DBMS encompasses most of CS
Data are raw facts. Information is the result of processing data to reveal its meaning