Presentation on theme: "Database Management Systems 1 Ramakrishnan & Gehrke Introduction to Database Systems Chapter 1 Instructor: Mirsad Hadzikadic."— Presentation transcript:
Database Management Systems 1 Ramakrishnan & Gehrke Introduction to Database Systems Chapter 1 Instructor: Mirsad Hadzikadic
Database Management Systems 2 Ramakrishnan & Gehrke http://www.sigmod.org/record/issues/0606/index.html
Database Management Systems 3 Ramakrishnan & Gehrke History v 60s C. Bachman GE, network data model, CODASYL v Late 60s IBM IMS, hierarchical data model, SABRE, AA-IBM v 70 Edgar Codd, IBM, relational model v 80s SQL, IBM, System R project, concurrent transactions management, J. Gray v Late 80-90s DB2, Oracle, Informix, Sybase v ERP, MRP Baan, Oracle, PeopleSoft, SAP, Siebel Common tasks – inventory, HR, financial analysis v 90s DW, Internet v Object-oriented, object-relational DBs v Turing award and Turing test?
Database Management Systems 4 Ramakrishnan & Gehrke Why Study Databases? v Data everywhere v Shift from computation to information –At the “low end:” scramble to Web space –At the “high end:” scientific applications v Datasets increasing in diversity and volume –Digital libraries, interactive video, Human Genome project, EOS project –... need for DBMS exploding v DBMS encompasses most of CS –OS, languages, theory, “A”I, multimedia, logic
Database Management Systems 5 Ramakrishnan & Gehrke What Is a DBMS? v Files vs. Database v A very large, integrated collection of data. v Models real-world enterprise – Entities (e.g., students, courses) – Relationships (e.g., Madonna is taking ITCS 6160) v A Database Management System (DBMS) is a software package designed to maintain and utilize databases
Database Management Systems 6 Ramakrishnan & Gehrke Why Use a DBMS? v Data independence and efficient access v Data integrity and security v Uniform data administration v Concurrent access, recovery from crashes v Reduced application development time v When not to use a DB?
Database Management Systems 7 Ramakrishnan & Gehrke Data Models v A data model is a collection of concepts for describing data v A schema is a description of a particular collection of data, using the given data model v The relational model of data is the most widely used model today –Main concept: relation, basically a table with rows and columns –Every relation has a schema, which describes the columns, or fields
Database Management Systems 8 Ramakrishnan & Gehrke Levels of Abstraction v Many (external) views, single conceptual (logical) schema and physical schema. –Views describe how users see the data –Conceptual schema defines logical structure –Physical schema describes the files and indexes used * Views and Schemas are defined using DDL; data is modified/queried using DML Physical Schema Conceptual Schema View 1View 2View 3
Database Management Systems 9 Ramakrishnan & Gehrke Example: University Database v Conceptual schema: – Students(sid: string, name: string, login: string, age: integer, gpa:real) – Courses(cid: string, cname:string, credits:integer) – Enrolled(sid:string, cid:string, grade:string) v Physical schema: –Relations stored as unordered files –Index on first column of Students v External Schema (View): – Course_info(cid:string, enrollment:integer)cid:string
Database Management Systems 10 Ramakrishnan & Gehrke Data Independence v Applications insulated from how data is structured and stored v Logical data independence : Protection from changes in logical structure of data v Physical data independence : Protection from changes in physical structure of data * One of the most important benefits of using a DBMS!
Database Management Systems 11 Ramakrishnan & Gehrke Structure of a DBMS v A typical DBMS has a layered architecture v The figure does not show the concurrency control and recovery components v This is one of several possible architectures; each system has its own variations Query Optimization and Execution Relational Operators Files and Access Methods Buffer Management Disk Space Management DB These layers must consider concurrency control and recovery
Database Management Systems 12 Ramakrishnan & Gehrke Transaction Management: ACID properties v A v A tomicity: All actions in the Xact happen, or none happen v C v C onsistency: If each Xact is consistent, and the DB starts consistent, it ends up consistent v I v I solation: Execution of one Xact is isolated from that of other Xacts v D v D urability: If a Xact commits, its effects persist v The Recovery Manager guarantees Atomicity & Durability
Database Management Systems 13 Ramakrishnan & Gehrke Motivation of concurrency control v Consistency v Isolation v Example –Two parallel transactions T1 and T2 –Serial execution –Execution with interleaving actions –Example
Database Management Systems 14 Ramakrishnan & Gehrke Motivation of recovery management v Atomicity: –Transactions may abort (“Rollback”) v Durability: –What if DBMS stops running? (Causes?) crash! v Desired Behavior after system restarts: –T1, T2 & T3 should be durable –T4 & T5 should be aborted (effects not seen) T1 T2 T3 T4 T5
Database Management Systems 15 Ramakrishnan & Gehrke Databases make these folks happy... v End users and DBMS vendors v DB application programmers –E.g. smart webmasters v Database administrator (DBA) –Designs logical /physical schemas –Handles security and authorization –Data availability, crash recovery –Database tuning as needs evolve Must understand how a DBMS works!
Database Management Systems 16 Ramakrishnan & Gehrke Summary v DBMS is used to maintain, query large datasets v Benefits include recovery from system crashes, concurrent access, quick application development, data integrity and security v Levels of abstraction give data independence v A DBMS typically has a layered architecture v DBAs hold responsible jobs and are well-paid! v DBMS R&D is one of the broadest, most exciting areas in CS