Intro – Part 2 Introduction to Database Management: Ch 1 & 2.
-
Upload
amberly-walker -
Category
Documents
-
view
216 -
download
2
Transcript of Intro – Part 2 Introduction to Database Management: Ch 1 & 2.
Intro – Part 2
Introduction to Database Management: Ch 1 & 2
Important Points
DBMS Functions DBMS Architectures Database Development Phases
Functions of a DBMS
Eight services that a DBMS should provide (Codd82):
1) Data storage, retrieval, and update
2) A user-accessible catalog describing data items
3) Transaction support
4) Concurrency control services
5) Recovery services
6) Authorization (security) services
7) Support for data communication (network access)
8) Data integrity services
Database System Approach
Components of a DBMS
A DBMS is a complicated software system containing many components: Query processor - translates user/application queries into
low-level data manipulation actions. Sub-components: query parser, query optimizer
Storage manager - maintains storage information including memory allocation, buffer management, and file storage. Sub-components: buffer manager, file manager
Transaction manager - performs scheduling of operations and implements concurrency control algorithms.
Access manager – controls access to a database
Overall System Structure
Database Architectures
There are several different database architectures: File-server architecture - files are shared but
DBMS processing occurs at the clients (e.g. Microsoft Access)
Two-Tier client-server architecture - dedicated machine running DBMS accessed by clients (e.g. SQL Server, MySQL)
Three-Tier client-server architecture - DBMS is bottom tier, second tier is an application server containing business logic, top tier is clients (e.g. Web browser/Web Server/PHP/MySQL)
Two-Tier Client-Server Architecture
Advantages:•Only one copy of DBMS software on dedicated machine.•Increased performance.•Reduced hardware and communication costs.•Easier to maintain consistency and manage concurrency.
Three-Tier Client-Server Architecture
Advantages:•Reduced client administration and cost using thin web clients.•Easy to scale architecture and perform load balancing.
Database Development Phases
Conceptual Data Modeling
Logical Database Design
Distributed Database Design
Physical Database Design
ERD
Tables
Distribution Schema
Internal Schema, Populated DB
Data requirements
Conceptual Data Modeling
Information content of the database Entity relationship diagram (ERD) showing
entity types and relationships Diverse formats for database requirements
Logical Database Design
Refine conceptual design Convert ERD to table design Normalization: tool to reason about
redundancies Add constraints to enforce business rules
Physical Database Design
Performed at each independent database site Minimize response time without consuming
excessive resources Tradeoffs: retrieval versus update Flexible designs versus specialized designs Decisions: indexes, data placement