Lec 01 Introduction to Databases and Database Users
Course Overview
Fundamentals of Database Management Systems by Dr. Alshaimaa Abo-Alian (5th Edition)
Contact: a_alian@cis.asu.edu.eg
Publisher: PEARSON Addison Wesley
Course Contents
Introduction to Database and Database Users
Database System Concepts and Architecture
Entity-Relationship (ER) Model
Relational Data Model and Database Constraints
Mapping of an ER schema into a relational schema
Enhanced ERD
Functional Dependencies and Normalization
Relational Algebra
Indexing Structures for Files
Algorithms for Query Processing and Optimization
Marks Distribution
Quiz: 5% (Week 5)
Year Work (Group Project): 10% (Weeks 8 and 11)
Midterm Exam: 15% (Week 7)
Practical Work: 20%
Final Exam: 50%
Total: 100%
Chapter 1: Introduction to Databases and Database Users
Importance of Databases: Essential in modern society; interaction with databases is frequent in various fields such as business, electronic commerce, engineering, medicine, genetics, law, and education.
Basic Definitions
Database: A collection of related data.
Data: Known facts that can be recorded (e.g., student grades).
Mini-world: Represents an aspect of the real world; databases must reflect this accurately.
Transaction: A process executing multiple database accesses (e.g. reading/updating records).
Types of Databases and Applications
Traditional Databases: Store textual or numeric information.
Multimedia Databases: Store images, audio, video.
Geographic Information Systems (GIS): Store and analyze geographic data.
Data Warehouses/OLAP: Analyze large datasets to support decision-making.
Real-time Databases: Handle constantly changing data, e.g., stock markets.
Examples of Databases
Simple databases: may consist of hundreds of records with simple structure.
Complex databases: like IRS monitoring systems, may handle vast amounts of data (800 GB)
Large commercial databases: like Amazon.com, require ongoing updates and extensive management.
Database Management System (DBMS)
Definition: A software package to create and maintain databases.
Components: DBMS software combined with the database and potentially application tools.
Simplified Database System Environment
Users/Programmers: Create and execute queries.
DBMS Software: Processes queries and accesses stored data.
Stored Database (Meta-Data): Provides definitions for data structures and relations.
Conceptual Data Model Example from a University
Entities: Students, Courses, Sections, Grade Reports, Prerequisites.
Relationships: Sections belong to courses; students take sections; instructors teach sections.
Typical DBMS Functionality
Definition and Construction: Defines data types, structures, constraints.
Manipulation: Retrieving, inserting, updating data; producing reports.
Access Control: Enforces data integrity and security.
Maintenance: Ongoing support for database applications.
Main Characteristics of the Database Approach
Database vs. File Processing: Single repository vs. separate user-defined files; reduced redundancy.
Self-Describing Nature: DBMS catalog stores metadata for flexible database interactions.
Isolation of Programs and Data: Database structure can change without application alterations.
Support for Multiple Views: Different users can access personalized subsets of the database.
Data Sharing and Multi-user Processing: Enables concurrent transaction processing, ensures data integrity.
Database Users
Actors on the Scene: Users who interact with and maintain databases.
Database Administrators: Control database access and monitor usage.
Database Designers: Define content, structure, and user interactions with the database.
End-Users: Utilize data for queries and updates; categorized into casual, naive, sophisticated, and standalone users.
Workers Behind the Scene: DBMS system designers implement and maintain the DBMS software and interfaces.
Advantages of Using the Database Approach
Redundancy Control: Minimizes duplicate data entries; enhances data integrity.
Data Sharing: Allows multiple users access to real-time updates.
Security Controls: Restricts unauthorized access to sensitive data.
Structured Storage: Uses indexes for efficient data retrieval.
Backup and Recovery Services: Ensures data restoration in the event of failures.
When Not to Use a DBMS
High Initial Investment: Cost of DBMS setup and resources.
Complexity Overhead: added costs for security, control, and management functions.
Simplistic Applications: Basic databases that don’t require complex management.
Limited User Access Needs: Applications not needing multi-user capabilities.
Conclusion
Understanding the fundamentals of databases is crucial in various fields, providing a foundation for effective data management and utilization.