Overview of Database Management Systems

advertisement
Overview of
Database Management
Systems
• Goals:
– DBMS basic concepts
– Introduce underlying managerial issues
– Prepare for discussion of uses of DBMS,
such as OLAP and database mining
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
1
Overview of Database Management
• What is a database system?
– Acomputerized record-keeping system
• Record?
– Think of it as a row in a table, consisting of
fields of data
– Note: Role of metaphors
• System?
– A general software module that provides all
sorts of services:
– Create new files and add them to the
database
– Insert new data into an existing file
– Retrieve data from existing files
– Update (change) data in existing files
– Delete data in existing files
– Delete (remove) existing files from the
database
– And much else: system management
features, security, integrity, etc.
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
2
Overview of Database Management
• Important and fundamental
distinctions
– System software vs application software
– Logical vs physical
» See MIS Notes, chapter 1
• System software, e.g.,
–
–
–
–
Operating system
Language compilers
Communications
DBMS
• Idea: everybody needs it, so write it
once and standardly for all
– Reading/writing files (OS)
– Storing/retrieving records (DBMS)
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
3
Overview of Database Management
• Where do database systems come
from?
– Commercial software vendors
» Oracle, DB2, RDB, Ingres, Focus, etc.
for mainframes
» For Unix, Oracle, Ingres, Informix, etc.
» Macs: Mainly Oracle
» PCs: Access, Paradox, Oracle, etc.
• Is there more than one kind? Why?
– Yes: flat file systems, network systems,
hierarchical systems, relational systems,
object-oriented systems
– And different brands for each type
– Why? History, needs and requirements
• Is there a standard? Yes, 2 really
– Relational DBMS
– SQL as the access language
» DDL, DML, etc.
» Note: Can have SQL w/o relational and
relational w/o SQL
– Note: Access is relational & has SQL
access
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
4
Overview of Database Management
• Who uses database systems?
–
–
–
–
Everyone, high, middle, and low
Pervasive in business and commerce
Difficult to overestimate importance
Quite possible to earn your way through
school doing database work
• Are databases here to stay? Are
they stable?
– Here to stay? Absolutely!
– Stable? Yes, but...
» Relational DBMS with SQL: commercial
de facto standard; client-server uses
» Object-oriented DBMS: thought to be
the next big thing
•
•
•
A few years away
Specialized uses
SQL will stay---probably
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
5
More Comments on Database
and Information Systems
Generallly
• Important concepts/themes
• Persistence
– Why we need data bases
• Metaphors and computing generally
and database specifically
– Relational model, relational databases:
» Tables, tables, tables
• Indirection
– e.g. external, conceptual, internal views of
database
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
6
Overview of Database Management
•
Why database?
•
Alternatives are unattractive
•
Positive reasons for DBMSs
•
Data independence
•
Reduction of redundancy
•
Avoidance of inconsistency
•
Enforcement of standards
•
Security
•
Integrity
•
Use of markets
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
7
Database Architecture
•
•
•
•
•
These comments apply broadly to all types of
DBMSs
...but, will focus on SQL, "big guys" systems
ANSI/SPARC (broadly accepted) framework
Three levels:
• External
• Conceptual
• Internal
"Relational" refers to how the data appears to
users, so to the external and conceptual levels
– How it appears (as tables) and
– How you operate on it
– Recall: metaphors
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
8
The External Level
•
The individual user level (application
programmer, someone interacting online with
the database, or an application, or a user via a
nice front end)
•
Users (typically) interact with a DBMS using a
language of some sort.
• e.g., SQL, either embedded in a
programming language or interactively
• e.g., QBE for users
•
Data sublanguage vs host language
•
Data sublanguage:
• Data definition language (DDL)
• Data manipulation language (DML)
•
The point of external views: to give different
users different views of the data
– Views: concept, advantages
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
9
The Conceptual Level
•
A "representation of the entire information
content of the database"
•
...from the point of view of the underlying data
model (here, relational)
•
Conceptual schema
•
Conceptual schema is to be "pure"; no refernce
to the physical
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
10
The Internal Level
•
Described by the internal schema
•
Refers to details of the physical representation
– E.g., how records are laid out on a hard
drive
•
But NOT to device-specific physical details
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
11
The Database Administrator
•
Data administrator---makes strategic and policy
decisions
•
Database administrator---technical support for
implementing policy decisions
•
Defines internal schema
•
Liaison with users
•
Oversees and defines security and integrity
checks
•
Manages backup and recovery
•
Performance monitoring, database tuning
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
12
The Parts-Supplier Database
•
Three tables: S (suppliers), P (parts), SP
S S#
SNAME
STATUS
CITY
======================================
S1
S2
S3
S4
S5
Smith
Jones
Blake
Clark
Adams
•
Table (and relation)
•
Tuple (or record)
•
Field
•
Attribute
•
Domain
•
Data types
•
Data atomicity
•
Key, key field
misnotes-dbms-19980121.ppt
20
10
30
20
30
London
Paris
Paris
London
Athens
Steven O. Kimbrough
13
The Parts-Supplier Database
(continued)
P P# PNAME
COLOR WEIGHT CITY
======================================
P1
P2
P3
P4
P5
P6
Nut
Bolt
Screw
Screw
Cam
Cog
Red
Green
Blue
Red
Blue
Red
12
17
17
14
12
19
London
Paris
Rome
London
Paris
London
•
Ordering on the rows?
•
Does CITY in P mean the same as CITY in S?
•
17 what? Pounds? Ounces? Tons? Kilograms?
•
Why more than one table?
•
How do we answer queries that rely on data in
more than one table?
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
14
The Parts-Supplier Database
(continued)
SP S# P#
QTY
======================================
S1
S1
S1
S1
S1
S1
S2
S2
S3
S4
S4
S4
P1
P2
P3
P4
P5
P6
P1
P2
P2
P2
P4
P5
300
200
400
200
100
100
300
400
200
200
300
400
•
S5? S6?
•
Double key, S#-P#
•
Why more than one table?
•
How do we answer queries that rely on data in
more than one table?
misnotes-dbms-19980121.ppt
Steven O. Kimbrough
15
Download