databaseConcept

Download Report

Transcript databaseConcept

Database System Concepts and
Architectures
Indra Budi
[email protected]
Which of the following is a problem of
lists that is solved by using a database?
Name
Card Number
Book
Due Date
Joe Smith
Sara Jones
Sam Archer
Sam Archer
Joe Smith
123-450201
123-450217
123-450326
123-450326
123-450201
How To Garden
Some Good Fiction
How To Build Things
More Good Fiction
More How To Garden
09/12/20xx
09/12/20xx
09/15/20xx
09/15/20xx
09/17/20xx





data inconsistencies
problems adding data
problems deleting data
missing data
All of the above
In database processing systems, the data is
directly accessed only by the ….
 In database application processing systems,
the user interacts directly with the …

Evolution of computing

Database has evolved since nearly every
stage of computing, from:
– mainframes, which are monolithic
– Client-server
– Web-based
Data Models

A collection of concepts used to describe
the structure of a database
–
–
–
–
Data types
Relationships
Constraints
Etc
Categories of Data Models
Conceptual data models: high level
 Physical data models: how data is actually
stored in a disk
 Representational data models: somewhere
between those two… let’s see…

Representational data model
Relational data model (our main discussion
in this class)
 Network data model (uses directed graphs)
 Hierarchical data model (history…)
 Object data model (this is new!)

Database schemas


Schemas: description of the database, but not the database itself!
Example of a schema diagram:

Not included in the schema diagram above:
– Data types?
– Relationships?
– Constraints, such as “students in CS major must
take CS1310…”
Database states
Also called ‘snapshot’
 After we define, generally a database is at
the ‘empty state’
 We get the ‘initial state’ after we first load
the database
 Valid state is a state which satisfies the
structure and constraints in the schema

Three Schema Model


ANSI/SPARC introduced the three schema model in 1975
It provides a framework describing the role and purpose of
data modeling
Three Schema Model (cont.)

External schema or user view
– Representation of how users view the database

Conceptual schema
– A logical view of the database containing a description of all the
data and relationships
– Independent of any particular means of storing the data
– One conceptual schema usually contains many different external
schemas

Internal schema
– A representation of a conceptual schema as physically stored on a
particular product
– A conceptual schema can be represented by many different internal
schemas
Data Independence



Application insulated from how data is structured
or stored
Logical data independence: we can change the
conceptual schema without changing the
application program (internal schema)
Physical data independence: we can change the
internal schema without changing the conceptual
schema. It might be because file database must be
reorganized for fine tuning.
Database Languages
Data definition language
 View definition language
 Data manipulation language

– High level: SQL, set-at-a-time processing
– Low level: VB, COBOL, record-at-a-time
processing
DBMS Interfaces






Menu based interface
Forms based interface
Graphical user interface  utilize menu & forms
Natural language interface, you can ask, “Show
me all the students with GPA > 3”
Parametric interface, such as application for Bank
Teller
Interface to DBA: create account, granting
account, changing schema, delete db, etc.
DBMS utilities
Concurrency Control
 Loading utility, or importer
 Backup utility, usually to tape
 File optimizer or reorganizer
 Performance monitoring: fragmentation,
load balancing
 Commit & Rollback
 etc

Transaction: An Execution of a
DB Program


Key concept is transaction , which is an atomic
(all-or-nothing property), sequence of database
actions (reads/writes).
Each transaction, executed completely, must leave
the DB in a consistent state, if DB is consistent
when the transaction begins.
– Users can specify some simple integrity constraints on
the data, and the DBMS will enforce these constraints.
– Beyond this, the DBMS does not really understand the
semantics of the data. (e.g., it does not understand how
the interest on a bank account is computed).
– Thus, ensuring that a transaction (run alone) preserves
consistency is ultimately the user’s responsibility!
Classification of DBMS
Data model: relational, network,
hierarchical, etc.
 Number of users: Single user vs multi user
 Centralized vs distributed
 Price…!
 OLTP support?
 OLAP support (read page 842 of Elmasri)

Which of the following plays an
important roles representing information
about a real world in the database ?
The data definition language
 The data manipulation language
 The buffer manager
 The data model

What is the differences ?

Database Schema Vs Database State ?
Group Assignment
Comparative Study of Popular DBMS
Which ones?
Group 1 (Mahesa, Evan
Bambang, Panca)
 MySQL
 MS-SQL Server
 FoxPro
Group 2 (Lamo, Siti, Arief)
 Informix
 MS-Access
 IBM DB2
Group 3 (Tyas, Dika, Ririn)
 Oracle database
 Postgres
 Borland Interbase
What to look for ?
Use theories in Elmasri Ch 1 & 2, and
Kroenke Ch 1!
 Examples: function, concurrency control,
type, price, primary use ?, performance,
capacity, etc.

Deliverables
Paper, submitted to me, you can give me
directly or email me at [email protected],
due date on Tuesday, September 14th 2004
 Presentation (of course)  Wednesday,
September 15th 2004
