!" #Chris Irwin Davis, Ph.D.Email: [email protected]: (972) 883-3574Office: ECSS 4.705Chapter 2: Concepts and ArchitectureCS-6360 Database Systems!" #2Chapter 2 Outline•2.1 Data Models, Schemas, and Instances•2.2 Three-Schema Architecture and Data Independence•2.3 Database Languages and Interfaces•2.4 The Database System Environment•2.5 Centralized and Client/Server Architecturesfor DBMSs•2.6 Classification of Database Management Systems2.1 Data Models, Schemas, and Instances!" #Concepts and Architecture• Basic client/server DBMS architecture°Client module°Server module4!" #Data Models and Schemas• Data abstraction°Suppression of details of data organization and storage°Highlighting of the essential features for an improved understanding of data5!" #Data Models and Schemas• Data model°Collection of concepts that describe the structure of a database°Provides means to achieve data abstraction°Basic operations- Specify retrievals and updates on the database°Dynamic aspect or behavior of a database application- Allows the database designer to specify a set of valid operations allowed on database objects6!" #7Categories of Data Models•Implementation•High-level or conceptual data models °Close to the way many users perceive data•Low-level or physical data models °Describe the details of how data is stored on computer storage media•Representational data models°Easily understood by end users °Also similar to how data organized in computer storage°Hides many details of data storage on disk, but can be implemented on a computer system directly!" #8Categories of Data Models•Conceptual Types•Relational data model°Used most frequently in traditional commercial DBMSs•Object data model °New family of higher-level implementation data models °Closer to conceptual data models!" #9Categories of Data Models•Conceptual Features•Entity °Represents a real-world object or concept •Attribute°Represents some property of interest °Further describes an entity•Relationship among two or more entities °Represents an association among the entities°Entity-Relationship model!" #Categories of Data Models• Physical°Describe how data is stored as files in the computer °Access path - Structure that makes the search for particular database records efficient°Index - Example of an access path - Allows direct access to data using an index term or a keyword10!" #Schemas, Instances, and Database State• In any data model, it is important to distinguish between the description of the database and the database itself11!" #Schemas, Instances, and Database State• Database schema°Description of a database• Schema diagram°Displays selected aspects of schema• Schema construct°Each object in the schema (e.g. STUDENT or COURSE)• Database state or snapshot°Data in database at a particular moment in time12!" #13Schemas, Instances, and Database State!" #14Schemas, Instances, and Database StateTable NameRelation Name!" #15Schemas, Instances, and Database StateColumn nameField name!" #Schemas, Instances, and Database State• Define a new database°Specify database schema to the DBMS• Initial state °Populated or loaded with the initial data• Valid state°Satisfies the structure and constraints specified in the schema• Schema evolution°Changes applied to schema as application requirements change162.2 Three-Schema Architecture and Data Independence!" #18Three-Schema Architectureand Data Independence•Internal level °Describes physical storage structure of the database•Conceptual level°Describes structure of the whole database for a community of users•External or view level !°Describes part of the database that a particular user group is interested in!" #Three-Schema Architectureand Data Independence 19!" #Three-Schema Architectureand Data Independence 20!" #Three-Schema Architectureand Data Independence 21!" #Three-Schema Architectureand Data Independence 22!" #23Data Independence•Capacity to change the schema at one level of a database system °Without having to change the schema at the next higher level•Types:°Logical°Physical•For example, changing to a different DBMS or disk drive without having to change the schema.2.3 Database Languages and Interfaces!" #25DBMS Languages•Data definition language (DDL)•Defines both schemas•Storage definition language (SDL)•Specifies the internal schema•View definition language (VDL)•Specifies user views/mappings to conceptual schema•Data manipulation language (DML)•Allows retrieval, insertion, deletion, modification!" #26DBMS Languages (cont'd.)•High-level or nonprocedural (Declarative) DML •Can be used on its own to specify complex database operations concisely•Set-at-a-time or set-oriented•Low-level or procedural DML •Must be embedded in a general-purpose programming language•Record-at-a-time!" #27DBMS Interfaces•Menu-based interfaces for Web clients or browsing•Forms-based interfaces•Graphical user interfaces (Like SSMS)•Natural language interfaces•Speech input and output•Interfaces for parametric users•Interfaces for the DBA2.4 The Database System Environment!" #29Database System Utilities•Loading°Load existing data files•Backup°Creates a backup copy of the database•Database storage reorganization°Reorganize a set of database files into different file organizations•Performance monitoring°Monitors database usage and provides statistics to the DBA!" #30The Database System Environment•DBMS component modules°Buffer management °Stored data manager °DDL compiler °Interactive query interface•Query compiler •Query optimizer°Pre-compiler!" #31The Database System Environment •DBMS component modules°Runtime database processor°System catalog°Concurrency control system°Backup and recovery system (Backup: it’s not whether you’re paranoid, it’s whether you’re paranoid enough.)!" #322.5 Centralized and Client/Server Architecturesfor DBMSs!" #34Centralized and Client/Server Architectures for DBMSs•Centralized DBMSs Architecture°All DBMS functionality, application program execution, and user interface processing carried out on one machine°This was the mainframe model, with dumb terminals. It is still widely used.!" #35Basic Client/Server Architectures•Servers with specific functionalities°File server "•Maintains the files of the client machines.°Printer server •Connected to various printers; all print requests
View Full Document