1 / 38

Chapter 2

Chapter 2. Database System Architecture. An “architecture” for a database system. A specification of how it will work, what it will “look like.” The “ANSI/SPARC” architecture provides a model for a general description of database concepts. “ANSI”. “X3”. “ANSI/SPARC”.

ezra-james
Download Presentation

Chapter 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 2 Database System Architecture

  2. An “architecture” for a database system. A specification of how it will work, what it will “look like.” The “ANSI/SPARC” architecture provides a model for a general description of database concepts.

  3. “ANSI” “X3” “ANSI/SPARC” “ANSI/SPARC” Architecture

  4. The Architecture • Three “levels” of the architecture: • Internal: How it is physically stored. • External: How it is used, what does it “look like” to the user (a user). • Conceptual: An abstract specification--how does it “look” in general, in its entirety.

  5. Fig. 2.1 The three levels of the architecture

  6. Each user (or user program) has a different, and partial view of the data. User 1 User 2 User n The “view” of the entire database (as seen by the designer(s) and DBA. How the data is actually (physically) stored. Fig. 2.1 The three levels of the architecture

  7. Internal level, physical level: the way the data is actually stored. External level, user logical level: the way the data is seen by each individual user or user program. Conceptual level, community logical level: the logical view of the entire data structure. Definitions only--no consideration of how used or stored.

  8. Same data, different names The DBMS ties it all together

  9. At the external level, application programs are written in Java, C++, COBOL, PL/1, Ada, or … (the “host” language). A data sublanguage is embedded in or interfaced with the program, or used interactively with the DBMS. The data sublanguage (DSL) of the DBMS is almost universally SQL.

  10. Fig. 2.3 Detailed system architecture

  11. The DBMS provides: Data Definition Language (DDL) for the internal external “schemas” conceptual The schemas (plans) are the definitions of how the data is to be stored and how it is to be viewed.

  12. The DBMS provides: Data Manipulation Language (DML) for “planned” use “unplanned” use . Planned: operational, production Unplanned: ad hoc queries, DSS

  13. Embedding: PL/1 program, DB2 DBMS, DB2-PL/1 pre-compiler Interfacing: Java program, any DBMS, JDBC interface

  14. DBMS provides for: Data Definition Data Manipulation Query Capability with a program or interactively interactively SQL is usually the language for all of these

  15. The DBMS provides: Security enforcement Integrity checks Recovery Concurrency control Transaction management Data dictionary Performance optimization

  16. Data Dictionary Catalog synonyms Repository The “metadata”--data about the data--part of the database (itself a database).

  17. Fig. 2.4 Major DBMS Functions and Components

  18. Logical to Physical Mapping record 142 record 142 record 142 file block record 142 disk block disk record 142 file total disk space

  19. Logical to Physical Mapping record 142 record 142 record 142 file block record 142 disk block disk record 142 file total disk space a table, part of a table, multiple tables

  20. Access Methods • Sequential Access • Direct Access • Indexed Access

  21. Access Methods • Sequential Access read next write next (append) (typically either read existing file or write new one) rewind (go back to the beginning) generally no read after write may be able to skip ahead or back

  22. Sequential-access File

  23. Access Methods • Direct Access • Relative Access, Random Access read n write n or, position to n read next write next (n = relative block number) must know n (e.g., n is employee number) or calculate n (e.g., n is hashed from employee name)

  24. Access Methods • Indexed Access use of an index to find what n is index is itself a file if small, can be read and kept in memory if large, can have an index to the blocks of the large index

  25. Example of Index and Relative Files

  26. Access Methods • Sequential Access vs. Direct Access • Sequential preferable when entire file is to be accessed • Direct access preferred when access is needed to a few records • Application determines • Both may be desirable—more difficult to achieve

  27. The DBMS vendor provides utilities for: Loading the database (from files). Unloading/reloading the database for backup. Reorganization (to improve performance). Gathering statistics (on usage or performance). Statistical analysis.

  28. Client/Server Architecture

  29. Fig. 2.5 Client/server architecture

  30. Backends and Frontends “back” “front” Network, Users Database CPU “backend” (DB manager) “frontend” (DC manager)

  31. Distributed Processing

  32. Fig. 2.6 Client and server running on different machines

  33. Backends and Frontends Server (DBMS) Network Client “backend” “frontend”

  34. Distributed processing, centralized database Fig. 2.7 One server machine, many client machines

  35. Distributed database Fig. 2.8 Each machine runs both client(s) and server

  36. “Two-tier” Systems Database Server Application Server Client network same or different computers

  37. Server (DBMS) “fat” client network Client “thin” client Database Server Application Server Client network

  38. 2.2 Define the following terms: back end front end client host language conceptual DDL, schema, view load conceptual/internal mapping logical database design data definition language internal DDL, schema, view data dictionary physical database design data manipulation language planned request data sublanguage reorganization DB/DC system server DC manager storage structure definition distributed database unload/reload distributed processing unplanned request external DDL, schema, view user interface external/conceptual mapping utility

More Related