Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
DATABASE SYSTEM OVERVIEW 1. Database System (DBS) • Definition: Database Management System (DBMS) + Database. • DBMS: Computer Software for storage, access, and manipulation of data. • Database: Collection of data stored more or less permanently on some secondary storage. Database Schema: Structure of data (metadata). Physically stored in "Data dictionary" Database Instance: The collection of data stored in the database at a particular moment. Physically stored in one or more "data file" or "data chunk" • DBMS developer: person or a group of people who design and implement DBMS software • Database Administrator (DBA): person or a group of people who define, modify, and manage a database using an existing DBMS Dr. Byunggu Yu 1 • Database User (Naive User, Sophisticated User, and DB Application Programmer): Person who uses a DBS User Interface Program Database Application Program DBMS Database System Database Figure 1 Database System Dr. Byunggu Yu 2 2. Why We Need DBS? (Historical Perspective) • Early 60s: First Generation DBS (Simple File System) Program1 Program2 Program3 File System of the Operating System File1 File2 File3 File4 Figure 2 File Systems User: Programmer (System programmer) Problems: Data Redundancy and Inconsistency Data Sharing Atomic transaction (Crash Recovery) Concurrent-Access Security Problems Dr. Byunggu Yu 3 • Late 60s - early 70s: Second Generation DBS Program1 Program2 Program3 Generalized File Management System (GFMS) e.g., ASI_ST, MARK IV, Data Analyzer DBMS File System of the Operating System File1 File2 File3 File4 Figure 3 Second Generation DBS Uniform Interface GFMS provides Database Language Data Definition Language (DDL): used to define files, records, and attributes Data Manipulation Language (DML, Query Language): Simple Query formulation (able to express only about 60% of typical queries) Algorithmic Language (AL): APIs for COBOL, FORTRAN, PL1, … (used to formulate more complex queries) Advantages: Data Sharing Atomic Transaction and Automatic Recovery (70s): page-level logical logging Dr. Byunggu Yu Concurrent Access (70s): two-phase locking, time stamping 4 Some security Remaining Problems: Data Redundancy and Inconsistency Limited expression power of DML Security violations are possible New Data Models: Relational model (E.F. Codd 1970) Network model (CODASYL Data Task Group, 1972) ER model (Chen, 1976) By the end of 70's, 4000 GFMSs installed • Late 70s - 80's: Third Generation DBS • Late 80's - Present: Fourth Generation DBS: Based on the third generation but equipped with the extended featured for: Distributed, Client/Server DBS Parallel DBS Object-Oriented DBS/Object-Relational DBS Spatial Databases for storage and retrieval of multimedia data, image data, scientific data analysis, geographic information, biomedical data, multi-attribute indexing… Data warehousing, … Dr. Byunggu Yu 5 3. Three Levels of Abstraction (Three Level Schema) Program1 View1 Program2 View2 View3 Program3 View4 View Level Schema Logical Level Schema Physical Level Database Schema Figure 4 Three Level Schema • Provide the environment to solve the data redundancy and inconsistency problem • Data Independence Physical Data Independence: The ability to modify the physical schema without causing application programs to be rewritten. Dr. Byunggu Yu 6 Logical Data Independence: The ability to modify the logical schema without causing the application programs to be rewritten More Security: View Level Schema 4. Data Models • Object-Based Logical Models: Entity-Relationship (ER) model, Object-Oriented model, etc. • Record-Based Logical Models: Relational model, Network model, and Hierarchical model • Usually, a DBMS is based on a certain logical data model: Relational DBMS, Network DBMS, Hierarchical DBMS, ObjectOriented DBMS. • Modern DBMS are based on Relational Model + Object Model (a.k.a. the Object-Relational Model) Dr. Byunggu Yu 7 5. General Database System Structure Library (API) DML translator DDL interpreter Query Optimizer Query Evaluation Engine Transaction Manager Buffer Manager File Manager Indices Data Dictionary Data Files Statistical data Figure 5 An Example of DBS Dr. Byunggu Yu 8