DBMS Introduction to Database Management System Module Title? Data vs. Information DBMS Data Raw facts, text, graphics, images, sound and video segments that have meaning in the user’s environment Information Data that have been processed in such a way as to increase the knowledge of the person who uses the data Data are raw facts. Information is processed data to reveal the meaning behind the facts. Module Title? Traditional Approach DBMS Systems used files to store information Separate systems - Separate files and programs for each application E.g. Payroll files, Personnel files, Accounts files etc. Module Title? Example of file system DBMS Module Title? Some Problems with Traditional File Processing DBMS Systems Redundancy (duplication of data) Module Title? Some Problems with Traditional File Processing DBMS Systems Redundancy (duplication of data) wasteful of space (storage) Module Title? Some Problems with Traditional File Processing DBMS Systems Redundancy (duplication of data) wasteful of space (storage) update inefficiencies Module Title? Some Problems with Traditional File Processing DBMS Systems Redundancy (duplication of data) wasteful of space (storage) update inefficiencies (when a teacher moves to a new address, or changes her name, the teacher's "record" must be changed each place it is stored) Module Title? Some Problems with Traditional File Processing DBMS Systems Redundancy (duplication of data) wasteful of space (storage) update inefficiencies (when a teacher moves to a new address, or changes her name, the teacher's "record" must be changed each place it is stored) data inconsistency (different addresses for the same teacher in different files) Module Title? Some Problems with Traditional File Processing DBMS Systems Redundancy (duplication of data) wasteful of space (storage) update inefficiencies (when a teacher moves to a new address, or changes her name, the teacher's "record" must be changed each place it is stored) data inconsistency (different addresses for the same teacher in different files) Module Title? LIMITATIONS OF FILE-BASED SEPARATION AND ISOLATION DBMS Payroll Office files has the teachers' names and id's and departments Principal's Office Files has teacher’s names , the current salary scale and date this salary scale became effective Asst. Principal's Office files has seminar topics for each teacher PROGRAM & DATA DEPENDENCE The Payroll Department has written some lengthy Pascal programs to access their files and perform queries and reports. The Personnel Department has written some C programs to access their files and perform queries and reports. Module Title? Database Approach DBMS Build a SINGLE pool of interrelated files, rather than SEPARATE collection of files. (This is an INFORMAL description of a database). Module Title? DATABASE DBMS A COLLECTION OF SELF-DESCRIBING AND INTEGRATED ,ORGANISED DATA (Kroenke's Definition of a Database) Module Title? DATABASE MANAGEMENT SYSTEM (DBMS) DBMS A collection of Programs that enables you to Store, modify, and extract (access) information from a database. Provides the interface between the user and the data in the database Allocates storage to data and maintains indices so that any required data can be retrieved. Protects data against corruption Provides recovery and restart facilities after a hardware or software failure. Module Title? Database System: DBMS The DBMS software together with the data itself. Sometimes, the applications are also included. database Application DBMS data catalog Module Title? Database vs. File Systems DBMS Module Title? DATABASE MANAGEMENT SYSTEM (DBMS) DBMS The following are examples of Database Applications: Banking: all transactions Airlines: reservations, schedules Universities: registration, grades Sales: customers, products, purchases Manufacturing: production, inventory, orders, supply chain Human resources: employee records, salaries, tax deductions Module Title? DATABASE MANAGEMENT SYSTEM (DBMS) DBMS Different DBMS Software • • • • • • • • • Module Title? ORACLE ACCESS SQL SERVER IBM DB2 Sybase SAP DB PostgreSQL MySQL MS SQL Server, ... Advantages of Database Approach DBMS Controlling redundancy in data storage and in development and maintenance efforts. Sharing of data among multiple users. Restricting unauthorized access to data. Greater consistency of data Enforcing integrity constraints on the database. Providing backup and recovery services. Availability of up-to-date information. Module Title? Database System Environment DBMS Application Programs/ Queries DBMS Software Software to Process Queries/ Program Software to Access Stored Data Stored Data Definition (Meta-Data) Module Title? Stored Database Data Models DBMS Data Model is a set of concepts that can be used to describe the structure of a database data types, relationships, and constraints Data Model Examples: Relational - describes database structure as tables Network - describes database structure as a network Object Oriented - describes database structure as objects Module Title? HISTORY OF DATABASE SYSTEMS DBMS • • • Module Title? FIRST GENERATION _ HIERARCHICAL MODEL • INFORMATION MANAGEMENT SYSTEM (IMS) – NETWORK MODEL • CONFERENCE ON DATA SYSTEM LANGUAGES (CODASYL) • DATA BASE TASK GROUP (DBTG) SECOND GENERATION – RELATIONAL MODEL • E. F. CODD • DB2, ORACLE THIRD GENERATION – EXTENDED RELATIONAL DATA MODEL OR OBJECT-RELATIONAL DATA MODEL – OBJECTED-ORIENTED DATA MODEL Schema Architecture DBMS Database Schema: The description of a database. It Includes descriptions of the database structure and the constraints that should hold on the database. Module Title? The three-schema architecture. DBMS Module Title? The three-schema architecture. DBMS External schema describes part of a database that a particular user or users are interested in. Using the relational model, these are views Conceptual schema describes the structure of he whole database for a community of users. Using the relational model, these are tables Internal schema describes the physical storage structure of the database. These are not tables, this is the data as stored by the DBMS. Module Title? ROLES IN DATABASE ENVIRONMENT (USERS) DBMS DATA ADMINISTRATOR Implements the database APPLICATION PROGRAMMER Interact with the database through high level programming END-USER Interacts and uses the database Module Title? Data Dictionary DBMS Module Title? Database Languages DBMS Data Definition Language (DDL) Used to define the conceptual and internal schemas Data Manipulation Language (DML) Used to describe operations on the instances of a database Procedural DML (how) vs. declarative DML (what) e.g., Relational Algebra Module Title? e.g., SQL Note, SQL includes a DML and a DDL in one! Database Languages DBMS DCL Data Control Language. [Grant, Revoke commands (oracle)] TCL [Transaction control Language] [Commit, Rollback, savepoint commands (oracle)] Module Title? DBMS Classification of DBMS based on the data model used: Relational DBMS Network DBMS Hierarchical DBMS Object-oriented DBMS Object-relational DBMS Module Title? DBMS Classification of DBMS based on the number of users: Single-user (typically used with micro- computers) Multi-user (most DBMSs). Classification of DBMS based on the number of sites: Centralized (uses a single computer with one database) Distributed (uses multiple computers, multiple databases) Module Title?