Introduction

Download Report

Transcript Introduction

IS 341
Database Administration
Keith Vander Linden
© Keith Vander Linden, 2005
2
All our knowledge brings us nearer to our ignorance,
All our ignorance brings us nearer to death,
But nearness to death, no nearer to God.
Where is the Life we have lost in living?
Where is the wisdom we have lost in knowledge?
Where is the knowledge we have lost in information?
The cycles of Heaven in twenty centuries
Bring us farther from God and nearer to the Dust.
- T. S. Eliot, The Rock, 1934
© Keith Vander Linden, 2005
3
Introduction
●
This course
(http://cs.calvin.edu/IS/341/)
●
●
●
●
An example information system
Definitions & Characteristics
History of information systems
Perspectives
(chapter 1)
© Keith Vander Linden, 2005
4
An Example Information System
• Supports a small
business database
for a fictional
company
• Find it on-line at:
http://pella.calvin.edu/acme/Pages/acme.htm
Image from www.acme.com July, 2003
© Keith Vander Linden, 2005
5
Definitions
●
●
●
Database - a collection of related data that is
persistent and too large to fit into main memory
Database Management System – an
automated system that maintains and provides
multi-user access to a database, and whose
operation is efficient, easy to use, and safe
Information System – A system (i.e., people,
machines, and/or methods) to collect, manage,
and use data that represent information
© Keith Vander Linden, 2005
6
Data
Data comprises entity classes, attributes
and relationships:
Customers
ID name address
…
Suppliers
ID name address
m
…
1
m
Products
ID name price
…
m
© Keith Vander Linden, 2005
7
A Data Hierarchy
Database
File
Record
Field
Character/String/Number
Bit
© Keith Vander Linden, 2005
8
Persistence
●
●
Most data outlive the programs that
operate on them.
The DBMS must be able to store and
retrieve this data.
© Keith Vander Linden, 2005
9
Database Size
●
●
Massive amounts of data are stored in
databases.
How massive?
–
A comparison:
http://www.cacr.caltech.edu/~roy/dataquan/ (a local copy)
© Keith Vander Linden, 2005
10
Multiple Users
●
●
The DBMS must support multi-user
access.
There are different types of users:
–
Administrators
– Database designers
– End users
●
Each user should have:
–
their own view of the database
– their own means of interacting with it
© Keith Vander Linden, 2005
11
Efficiency
●
●
The operations on the data must be
efficient.
The data must be stored efficiently.
© Keith Vander Linden, 2005
12
Convenience
●
●
The command languages and interfaces
must be easy to use.
Database applications must be insulated
from changes to:
–
the structure of the data - data independence
– the implementation of the commands
– the physical location of the data
© Keith Vander Linden, 2005
13
Safety
●
The DBMS must protect the integrity of the
database
© Keith Vander Linden, 2005
14
Information Systems
●
Collecting information
●
Managing information
●
Using information
© Keith Vander Linden, 2005
15
When not to use databases
●
When the hardware/software cost of a
database system is too high for the
application.
© Keith Vander Linden, 2005
16
Database Systems History
Time Period
Type
1940’s
Number crunching
1950’s & 60’s
Flat file
early 1960’s
Hierarchical
late 1960’s
Network
1970’s & 1980’s
Relational
1990’s & 2000’s
Object-Oriented
© Keith Vander Linden, 2005
17
Flat-File Databases
●
These are simple file-based programs.
01
02
●
tnt
250
missile 4000000
…
…
03
umbrella
35
…
…
…
…
…
Relationships are not stored explicitly.
Image from wilecoyote.cartooncountry.com July, 2003
© Keith Vander Linden, 2005
18
Hierarchical Databases
●
Work at IBM:
–
GUAM, part of the Apollo program (1964)
– IMS system (1968)
●
●
●
Designed to exploit disk structure
Good for 1-m relationships, bad for m-m
Query language:
–
getNextWithinParent(), insert(), replace()
© Keith Vander Linden, 2005
19
Example: 1-to-many
Suppliers
Vander Linden
Acme
Products
Giant Cannon
TNT
Missile
Little umbrella
How it is stored on disk
Acme
cannon
tnt
missile umbr.
Sears
boots
Image from wilecoyote.cartooncountry.com July, 2003
© Keith Vander Linden, 2005
20
Example: many-to-many
Products
Vander Linden
missile
Customers
John
Wile E Coyote
Mary
Aaron
Virtual Products
widget
gadget
Image from wilecoyote.cartooncountry.com July, 2003
© Keith Vander Linden, 2005
21
Network Databases
●
●
●
CODASYL-DBTG (1971)
less efficient, but handles many-many
Query language:
–
a "navigation" language
– commands:
•
•
•
get (i.e., follow link),
connect (i.e. make link)
In both cases, the queries were written
algorithmically.
© Keith Vander Linden, 2005
22
Example: many-to-many
missile
1
cannon
2
1
Mary
umbrella
2
1
Wile E Coyote
Image from wilecoyote.cartooncountry.com July, 2003
© Keith Vander Linden, 2005
23
Relational Databases
●
●
Proposed in 1970 by E.F. Codd
Offered in commercial systems the 1980’s
(e.g., IBM’s DB2)
© Keith Vander Linden, 2005
24
Object-Oriented Databases
●
●
Databases based on ideas from objectoriented programming.
Gemstone from Servio (1987)
© Keith Vander Linden, 2005
25
Database Trends
●
Larger and larger databases:
–
Multimedia databases
– Geographic Information Systems (GIS)
– Distributed databases and Data-warehouses
●
●
Smaller and smaller databases
Continuously available, on-line databases
© Keith Vander Linden, 2005
26
A Christian Perspective?
●
Why do we do all this stuff?
–
●
What’s the
Big Idea
to proliferate or enhance creation
Is any of it uniquely Christian?
–
Not really, but both the development and use of
information systems have implications
© Keith Vander Linden, 2005