Download presentation
Presentation is loading. Please wait.
Published byBeverly Carson Modified over 9 years ago
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” “ANSI/SPARC” Architecture “ANSI/SPARC” “X3”
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
User 1User 2User n Each user (or user program) has a different, and partial view of the data. The “view” of the entire database (as seen by the designer(s) and DBA. How the data is actually (physically) stored.
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 theinternal 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 Catalogsynonyms 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 file file block disk block total disk space disk record 142
19
Logical to Physical Mapping file file block disk block total disk space disk record 142 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 CPUDatabase Network, Users “backend” (DB manager) “frontend” (DC manager) “back”“front”
31
Distributed Processing
32
Fig. 2.6 Client and server running on different machines
33
Backends and Frontends Network Server (DBMS) Client “backend” “frontend”
34
Fig. 2.7 One server machine, many client machines Distributed processing, centralized database
35
Fig. 2.8 Each machine runs both client(s) and server Distributed database
36
“Two-tier” Systems Application Server Database Server Client same or different computers network
37
Server (DBMS) Client Application Server Database Server Client network “fat” client “thin” client
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 languageinternal 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, viewuser interface external/conceptual mapping utility
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.