Chapter 1: IntroductionDatabase Management System (DBMS)Purpose of Database SystemsPurpose of Database Systems (Cont.)Levels of AbstractionView of DataInstances and SchemasData ModelsData Manipulation Language (DML)Data Definition Language (DDL)Relational ModelA Sample Relational DatabaseSQLDatabase DesignThe Entity-Relationship ModelStorage ManagementQuery ProcessingQuery Processing (Cont.)Transaction ManagementDatabase ArchitectureDatabase UsersDatabase AdministratorOverall System StructureHistory of Database SystemsHistory (cont.)End of Chapter 1Figure 1.4Figure 1.7Database System Concepts, 5th Ed.©Silberschatz, Korth and SudarshanSee www.db-book.com for conditions on re-use Chapter 1: IntroductionChapter 1: Introduction©Silberschatz, Korth and Sudarshan1.2Database System Concepts, 5th Ed., slide version 5.0, June 2005Database Management System (DBMS)Database Management System (DBMS)DBMS contains information about a particular enterpriseCollection of interrelated dataSet of programs to access the data An environment that is both convenient and efficient to useDatabase Applications:Banking: all transactionsAirlines: reservations, schedulesUniversities: registration, gradesSales: customers, products, purchasesOnline retailers: order tracking, customized recommendationsManufacturing: production, inventory, orders, supply chainHuman resources: employee records, salaries, tax deductionsDatabases touch all aspects of our lives©Silberschatz, Korth and Sudarshan1.3Database System Concepts, 5th Ed., slide version 5.0, June 2005Purpose of Database SystemsPurpose of Database SystemsIn the early days, database applications were built directly on top of file systemsDrawbacks of using file systems to store data:Data redundancy and inconsistencyMultiple file formats, duplication of information in different filesDifficulty in accessing data Need to write a new program to carry out each new taskData isolation — multiple files and formatsIntegrity problemsIntegrity constraints (e.g. account balance > 0) become “buried” in program code rather than being stated explicitlyHard to add new constraints or change existing ones©Silberschatz, Korth and Sudarshan1.4Database System Concepts, 5th Ed., slide version 5.0, June 2005Purpose of Database Systems (Cont.)Purpose of Database Systems (Cont.)Drawbacks of using file systems (cont.) Atomicity of updatesFailures may leave database in an inconsistent state with partial updates carried outExample: Transfer of funds from one account to another should either complete or not happen at allConcurrent access by multiple usersConcurrent accessed needed for performanceUncontrolled concurrent accesses can lead to inconsistencies–Example: Two people reading a balance and updating it at the same timeSecurity problemsHard to provide user access to some, but not all, dataDatabase systems offer solutions to all the above problems©Silberschatz, Korth and Sudarshan1.5Database System Concepts, 5th Ed., slide version 5.0, June 2005Levels of AbstractionLevels of AbstractionPhysical level: describes how a record (e.g., customer) is stored.Logical level: describes data stored in database, and the relationships among the data.type customer = recordcustomer_id : number; customer_name : string;customer_street : string;customer_city : string;end;View level: application programs hide details of data types. Views can also hide information (such as an employee’s salary) for security purposes.©Silberschatz, Korth and Sudarshan1.6Database System Concepts, 5th Ed., slide version 5.0, June 2005View of DataView of DataAn architecture for a database system©Silberschatz, Korth and Sudarshan1.7Database System Concepts, 5th Ed., slide version 5.0, June 2005Instances and SchemasInstances and SchemasSimilar to types and variables in programming languagesSchema – the logical structure of the database Example: The database consists of information about a set of customers and accounts and the relationship between them)Analogous to type information of a variable in a programPhysical schema: database design at the physical levelLogical schema: database design at the logical levelInstance – the actual content of the database at a particular point in time Analogous to the value of a variablePhysical Data Independence – the ability to modify the physical schema without changing the logical schemaApplications depend on the logical schemaIn general, the interfaces between the various levels and components should be well defined so that changes in some parts do not seriously influence others.©Silberschatz, Korth and Sudarshan1.8Database System Concepts, 5th Ed., slide version 5.0, June 2005Data ModelsData ModelsA collection of tools for describing Data Data relationshipsData constraintsRelational modelEntity-Relationship data model (mainly for database design) Object-based data models (Object-oriented and Object-relational)Semistructured data model (XML)Other older models:Network model Hierarchical model©Silberschatz, Korth and Sudarshan1.9Database System Concepts, 5th Ed., slide version 5.0, June 2005Data Manipulation Language (DML)Data Manipulation Language (DML)Language for accessing and manipulating the data organized by the appropriate data modelDML also known as query languageTwo classes of languages Procedural – user specifies what data is required and how to get those data Declarative (nonprocedural) – user specifies what data is required without specifying how to get those dataSQL is the most widely used query language©Silberschatz, Korth and Sudarshan1.10Database System Concepts, 5th Ed., slide version 5.0, June 2005Data Definition Language (DDL)Data Definition Language (DDL)Specification notation for defining the database schemaExample: create table account ( account-number char(10), balance integer)DDL compiler generates a set of tables stored in a data dictionaryData dictionary contains metadata (i.e., data about data)Database schema Data storage and definition language Specifies the storage structure and access methods usedConsistency constraintsIntegrity constraintsDomain constraintsAssertionsAuthorization©Silberschatz, Korth and Sudarshan1.11Database System Concepts, 5th Ed., slide version 5.0, June 2005Relational
View Full Document