Title: Issues, Trends and Strategies for Computer Systems Management
1Issues, Trends and Strategies for Computer
Systems Management
Chapter 6. Database Systems
- UMUC Graduate School of
- Management and Technology
2Agenda
- Background
- Database Models
- Database Architecture
- Exercise
3Background
4Definitions
- Data - a representation of facts, concepts or
instructions in a formalized manner suitable for
communication, interpretation and processing - Database - a collection of data gathered for a
particular purpose or purposes - Database management system (DBMS) - a software
system that is used to define, create, store,
maintain and manipulate the database - Database system - the database, the DBMS, and
application programs
5Brief History
- 1940s - 50s Use of computers as calculators
- 1960s Business uses file system-based
- 1970s Relational model
- 1980s Microcomputer revolution local area
networks - 1990s Internet and the World Wide Web
6Database Applications
- Transactional - airline reservation system,
customer tracking system, inventory system,
on-line transactional processing (OLTP) - Decision Support - data warehousing, data marts,
executive information systems, on-line analytical
processing (OLAP)
7Purpose of Database Systems
CRUD
- Collect
- Organize
- Store
- Retrieve
- Manipulate
- Output
- Recovery
8Components of a DBMS
Design Tools
Run Time
DBMS Engine
Physical Management
Metadata
Database
9Advantages of DBMSs
- Controls redundancies, inconsistencies
- Provides data sharing
- Supports data integrity
- Supports standardization
- Allows for data recovery
- Enforces data security
- Improves maintenance
10Disadvantages of DBMSs
- Expensive, high overhead cost
- Complex
- May not be suitable for some applications
- Single point of failure possible security
breaches
11Database Models
12Database Models
- Flat Files
- Hierarchical Databases
- Network Databases
- Relational Databases
- Object-Oriented Databases
- Object-Relational Databases
13Flat Files (File-based)
- Collection of individual files accessed by
applications programs - Limitations
- Separate and isolated data
- Data duplication, inconsistencies
- Application program dependencies
- Incompatible files
- Lack of data sharing
- Training
Registrar
Class programs
Class file
Accounting
Accounting programs
Accounts file
Facilities
Facilities programs
Facilities file
14Hierarchical Databases
- Relates data by rigidly structuring data into an
inverted tree
Sales
Parent
West Coast
East Coast
Child
Sneakers
Shirts
Shorts
Sneakers
Shirts
Shorts
15Network Databases
- Supports relationships among the data through
linked list structure in which subordinated
records (members) can be linked to more than one
parent (owner).
Sales
Owner
Owner
West Coast
East Coast
Sneakers
Shirts
Shorts
Members
16Relational Databases
- Emerged during late1970s and1980s
- Collection of tables, each with a primary key
- Relationships between tables established through
a common attribute
17Relational Databases
Field
Table
Employee
EID Name Title Age Division 173 Smith
, A. Dir., Acctg. 45 1001 275 Jones, S. Dir.,
TQM 32 1002
Record
Office
Division Address City 1001 100 Main
Street Boston 1002 200 Elm Street NY
Use Structured Query Language (SQL) to access and
manipulate data
18SQL General Form
- SELECT columns
- FROM tables
- JOIN link columns
- WHERE conditions
- GROUP BY column
- ORDER BY column (ASC DESC)
19SQL Introduction
Customer
C Name Phone City AccountBalance 28764 Adamz 602-
999-2539 Phoenix 197.54 87535 James 305-777-2235 M
iami 255.93 44453 Kolke 303-888-8876 Denver 863.39
29587 Smitz 206-676-7763 Seattle 353.76
Query Which customers have balances greater
than 200?
SQL SELECT C, Name, Phone, City,
AccountBalance FROM Customers WHERE AccountBalan
ce 200
Query In alphabetical order, which Denver
customers have balances greater than 200? Show
customer no., city and balance.
SQL SELECT C, City, AccountBalance FROM Custome
rs WHERE AccountBalance 200 and City
Denver ORDER BY Name ASC
20QBE Example
21QBE Example
Query Which customers have balances greater
than 200?
Query In alphabetical order, which Denver
customers have balances greater than 200? Show
customer no., city and balance.
22Relational Databases
- Advantages
- Conceptual simplicity
- Flexibility in creating links among data
- Data independence -- logical design of the data
is independent of the physical implementation - Popular, fairly easy to use
- Disadvantages
- Design of large scale databases may be complex
resulting in slower search and access times - Data redundancies possible (correct by
normalization)
23Objects
- Hypertext Massive text
- Pictures Graphs
- Objects
- Video
- Sound
- User defined
24Sample OO Database
Patient Visits ID Date Physician Problems Commen
ts
Patient Treatments ID Date Procedure Doctor
25Object-Oriented Database Systems
- Originated from Object-Oriented Programming
Languages - SIMULA 67-Smalltalk-80
- Object-Oriented Databases Prototypes (late 80s
early 90s) - ORION (Microelectronic and Computer Technology
Corporation), OpenOODB (Texas Instruments), IRIS
(Hewlett-Packard), ODE (ATT Bell Labs),
ENCORE/Observer (Brown University) - Object-Oriented Database System(early to late
90s) - GEMSTONE/OPAL (ServioLogic), ONTOS (Ontologic),
Objectivity (Objectivity Inc), Versant (Versant
Technologies), ObjectStore (Object Design), O2
(O2 Technology)
26Object-Oriented Databases
- OODB Applications
- Computer-aided design and manufacturing (CAD/CAM)
- Computer-integrated manufacturing (CIM)
- Computer-aided software engineering (CASE)
- Geographic information systems (GIS)
- Science and medicine
- Document storage and retrieval
27Object-Oriented Databases
- Objects, Methods, and Messages
- Everything is an Object
- Every Object has a type -- its Class
- Individual Objects are Instances
- Encapsulation
- internal structure of a given object not visible
to the users of the object
28Object-Oriented Databases
- Objects have unique identity
- Identity represented by Object ID (OID)
- Objects have a hierarchy
- Objects inherit from their parents
- Integrates a DBMS with the capabilities of an OO
programming language - Handles complex structures as objects (CAD/CAM
applications) - No need to read data and translate to application
data structures
29Object-Oriented Databases
- Advantages
- Handles abstract types well
- Better modeling of the real world
- Reusability
- Portability
- Disadvantages
- Performance
- Immature
- Small market
- Complex
- No theoretical foundation
- Less relevant for business applications
30Object-Oriented Databases
- Too soon to know if object-oriented databases
will become dominate currently maintains a small
market - They will have their niche
- CAD/CAM
- Relational database vendors fighting back
- Migrating to Object-Relational Database Systems
31Object-Relational Databases
- Supports Abstract Data Types (multimedia objects)
with search algorithms - A field can contain a collection of multiple
values or composite data types - Likely to replace pure RDBMS
32Object-Relational Databases
- Advantages
- Way to migrate to object-oriented systems
- Current vendors heading in this direction
- Improved performance
- Disadvantages
- More an extended relational model than
object-oriented - Complex
- Higher storage requirements than RDBMS
33Future of Database Systems
- Object-relational approach will replace purely
relational products - Access to nontraditional data types
- Lite version of the DBMS for PDAs
- Advanced indexing will continue to improve query
performance
34Database Architecture
35Key Aspects of a Database Architecture
- Data Model - the way the data is conceptually
structured (relational, object-oriented,
hierarchical, etc.) - Data Definition Language (DDL) - defines what
types of information will be recorded in the
database - Data Manipulation Language (DML) - language used
to query the database and to store or update
information in the database
36Levels of Data Abstraction
- Many views, single conceptual schema, single
physical schema
View
View
View
Subschema is part of the database as seen by a
user or application
Conceptual Schema
Internal/Physical Schema
Schema is a description of a particular
collection of data using a given data model the
structure of database including data type,
relationships and constraints
Database
37Data Independence
- Insulates the application from the method used in
storing and structuring the data - Logical data independence - protects from changes
in the logical structure of data - Physical data independence - protects from
changes in the physical structure of data
38Database Development Process
- User needs assessment and requirements gathering
- Data modeling
- Implementation
- Testing
- Deployment
- Maintenance
39Key Players in Database Management
- Users
- Data Administrator
- Database Administrator
- Database Designers
- Application Programmers
40Student Exercise
- Selecting the Optimal Data Model"
41Exercise
- Susan is employed in a small but progressive
division and she was asked to quickly develop a
personnel security database. This database is to
contain such information as name, address,
reference data, background checks, fingerprints
and digital photographs. - Fred maintains a high speed massive transactional
system which tracks the value of government
securities. Each minute, thousands of clients
query this database via the web. - Ann-Marie is the project chief of an
enterprise-wide data warehouse project in her
organization. Data from four legacy systems will
be combined into a single database maintained by
Ann-Marie's division.
42Exercise
- Tony has a Rolodex-type card system on his desk.
He wants to automate this system on his Personal
Digital Assistant. - Carrie is establishing a document management
tracking system. This system would capture the
title, creation date, revision dates, author,
keywords and graphics associated with each
document. Only specific queries can be made
against each document. - Sam works in a highly stovepiped organizational
structure which is responsible for reporting
field performance data to the regional offices,
which in turn consolidates data from other field
offices and sends it directly up to the
Headquarters Office.
43Exercise
- Marlene works in an organization with many
cross-functional teams. She has been asked to
track these teams in terms of name,
responsibilities, team leader, participants,
organizations represented by the participants,
phone numbers, e-mail addresses, and organization
codes. - Chris is in charge of developing a Computer-Aided
Software Engineering (CASE) database, which
stores data relating to the stages of the
software development lifecycle. - Betty works in a multimedia publishing
organization for the DoD and wants to track text,
audio, image, and video data and animation. - Mark wants to track secret information pertaining
to military satellites, monitored countries, and
tracking stations.