Sie sind auf Seite 1von 27

BACS 485 -- Chapter 1

Chapter 1: Database Systems


See document: Lecture_Material.mmap
I. Objectives
The difference et!een data and information
"hat a dataa#e i#$ t%pe# of dataa#e#$ !h% u#eful in u#ine##
"h% i# dataa#e de#i&n important'
(o! did the dataa#e approach e)ol)e from file #%#tem#'
The characteri#tic# of file mana&ement #%#tem#
The characteri#tic# of dataa#e mana&ement #%#tem#
(o! *BMS and a dataa#e are different.
II. Data vs. Information
A. Data
+a! fact# aout a per#on$ place$ or thin& ,#imilar to a noun-. The .e% characteri#tic i# that it i#
not particularl% u#ale in it# pre#ent form % the end-u#er.
B. Information
*ata that ha# een proce##ed ,or manipulated- into a form that i# more u#ale % the end u#er.
A .e% characteri#tic i# that one per#on# data can e another per#on# information. /t# all a
matter of per#pecti)e.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
1
BACS 485 -- Chapter 1
Ta.en to the ne2t le)el$ information that i# aout a #pecific topic and can e applied to #ol)e
prolem# can e called .no!led&e.
III. Database & DBMS
A. DBMS
*ataa#e mana&ement #%#tem. A collection of pro&ram# u#ed to mana&e the dataa#e #tructure
,i.e.$ metadata- and the data it#elf ,dataa#e-. 1ro)ide# #tructure and control needed to acce##
and #ecure the dataa#e.
B. Database
The actual data that i# #tored % the or&ani3ation. /t i# or&ani3ed and #tructured in #uch a !a%
to maintain inte&rit% and #ecurit%. Acce##ed onl% throu&h the *BMS.
C. Metadata
The #tructural component of the *BMS. A de#cription of the data characteri#tic# and the
relation#hip# et!een the data item#. Similar to the #tructure u#ed to or&ani3e a lirar%.
D. Types of Databases
There are different !a%# to refer to dataa#e# ,and *BMS#-. Some are a#ed on &eo&raphic location of the data
it#elf$ other# are a#ed on the numer of concurrent u#er#$ #till other# are related to the hard!are that the *BMS
run# on. Belo! are #ome of the common t%pe#.
Single-user database - #upport# onl% a #in&le u#er at a time. 4#uall% onl% !or.# on a 1C
Multi-user database - #upport# #e)eral u#er# at the #ame time. Can e 1C or mainframe a#ed.
Desktop database - #in&le u#er dataa#e that run# on a 1C al#o called 5de#.top dataa#e5
Workgroup database - Small multi-u#er dataa#e ,u#uall% 56 u#er# or le##-
Enterprise database - Lar&e multi-u#er dataa#e. 4#uall% run# on a mainframe.
Centralized database - *ataa#e that #upport# data in a #in&le ph%#ical location.
Distributed database - *ataa#e that #upport# data acro## #e)eral &eo&raphical location# ,re7uire# a net!or.-
IV. Why DB esi!n important"
A. Redundancy
Situation that occur# !hen the #ame piece of information i# #tored multiple time# in a
dataa#e. /# con#idered ad ecau#e it cau#e# a ho#t of other prolem#. 8or e2ample$ if a
cu#tomer# addre## i# #tored #e)eral time# in the dataa#e$ an update mi&ht onl% affect one or
t!o of the copie#. /n the future$ mailin&# !ould #ometime# &o to the proper addre##$ other
time# it !ould not. Thi# cau#e# poor data inte&rit% and ma.e# the cu#tomer not tru#t the
information produced % the #%#tem.
/t i# impo##ile to &et rid of all data redundanc%. Some i# needed to lin. the )ariou# piece# of
data to&ether. (o!e)er$ unnece##ar% redundanc% i# a #i&n of poor dataa#e de#i&n and #hould
e a)oided. 9ou #tri)e to achie)e 5controlled redundanc%.5
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:
BACS 485 -- Chapter 1
B. Integrity
*ata !ith &ood inte&rit% i# #aid to e:
1. Accurate - matche# the real !orld ,i.e.$ it i# ri&ht-
:. Complete - not mi##in& an% .e% information
;. Timely - i# a)ailale !hen %ou need it
4. Reliability - the #ame an#!er i# pro)ided if nothin& chan&e# and the #ame 7ue#tion i# a#.ed
a&ain
C. Agility
<ood dataa#e de#i&n allo!# the u#er to modif% data !ithout affectin& the data=# #tructure.
Al#o$ the dataa#e mana&er can chan&e the #tructure of the dataa#e !ithout ha)in& to
reor&ani3e the data it#elf. Thi# lead# to fa#ter re#pon#e time to a chan&in& en)ironment. Thi# i#
#ometime# called 5a&ilit%.5
Later$ %ou=ll #ee that thi# concept i# directl% related to the concept of 5data independence5.
V. Database #vo$%tion
/n the e&innin& there !ere no computer#. Bu#ine##e# relied on paper #%#tem# and
!ritten procedure#. Some )er% cle)er method# !ere de)i#ed ,and are #till u#ed
toda%-.
The prolem !ith the#e #%#tem# !ere that the%: ,partial li#t-
- could not &ro! infinitel%
- !ere not re#pon#i)e or fle2ile enou&h
- depended upon dedicated ,life-lon&- !or.er#
- do not pro)ide companie# !ith competiti)e ed&e
>ne of the re#ult# of the#e manual #%#tem# !a# that each functional area 5o!ned5
their data and ecame )er% po##e##i)e of it. Thi# !a# >? for then.
"hen computer# !ere introduced it &a)e a !a% to automate manual ta#.#. ,/n fact$
the title 5computer5 u#ed to appl% to a per#on that did manual computation#.-
Allo!# compan% to:
- #peed up ta#.# ,!ithout infinite per#onnel-
- &et etter ta#. inte&rit% ,accurac%-
- &ro! companie# i&&er
Thi# !a# a i& deal. Much fan- fare. 1eople e2pected lot#. The i& companie#
!ere the fir#t to u% computer#.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
;
BACS 485 -- Chapter 1
The earl% computer# !ere )er% e2pen#i)e and not )er% u#er- friendl%. The% co#t #o
much that the% !ere applied to the area# !here the chance of #ucce## !a# e#t ,i.e.$
pa%-ac. of the hu&e in)e#tment-.
The e#t area to &et 7uic. pa%- ac. ,and &et lot# of &ood 1+- !a# to automate
independent application #%#tem# to automate @o# of clerical !or.er# and #ol)e a
#pecific prolem. 8or e2ample$ pa%roll$ account# pa%ale$ purcha#in&$...
Thi# &a)e earl% computer #%#tem# a ad reputation for puttin& people out of !or.
,the% #till ha)e that reputation to #ome people-.
The earl% #%#tem de#i&ner# tried to pro&ram the computer e2actl% the #ame a# the
manual #%#tem. Thi# !a# ea#ier$ ut tended to prolon& the fiction of functional data
o!ner#hip.
The #%#tem and it# data !ere o!ned % the department re#pon#ile for the
function. The data !a# con#idered a pri)ate re#ource.
Computer technolo&% ad)anced and #%#tem# &re! more po!erful$ ut the
functional u#er# #till con#idered data to e a pri)ate re#ource. ,A fiefdom-. Thi#
!a# BA*AAA
Al#o$ each time a ne! application !a# de)eloped$ ne! file# !ere defined. /t too.
%ear# for people to reali3e ,and reall% #tart to do #omethin& aout- treatin& data a# a
corporate re#ource that need# to e mana&ed. Thi# !a# one of the factor# that
#tarted the dataa#e mo)ement.
/ma&ine #ituation !here mone% i# not mana&ed in compan%. Bach department ha#
a pile the% control. Co #harin&$ no cro##- department information #harin& aout the
mone%. /f i& purcha#e came up$ no !a% to con#olidate mone% to ma.e it. /t i#
ridiculou# to con#ider$ ut that i# e2actl% the #ituation of the traditional approach.
A. Traditional Approach
/n the traditional approach$ computer #%#tem# are de#i&ned for and u#ed %
indi)idual department# for #pecific ta#.#. Bach department maintain# and 5o!n#5
their o!n data. Thu#$ little #harin& ta.e# place et!een department# ,onl% that
#harin& that i# mandated and re7uired-.
Bach ne! #%#tem u#uall% uild# it# o!n data file# rather than tr% to acce##
e2i#tin& one# ecau#e to tou&h to coordinate modification# and re7uirement#.
A central *1 #hop pro)ide# the pro&rammin& #er)ice for the functional
department# ,ut it i# #till the department=# data-. The *1 #hop mu#t #omeho!
mana&e all pro&rammin& need# for the !hole compan% !ithout the enefit of a
&loal plan or centrali3ed authorit%. Der% tou&h to doA
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
4
BACS 485 -- Chapter 1
Lar&e ac.lo&# characteri3ed thi# #etup. /mpatient department# #ometime# uilt
their o!n mini-*1 #hop to handle their o!n pro&rammin& need#$ ut that #eldom
!or.ed ecau#e e2i#tin& data #harin& &oe# a!a%.
B. Database Approach
The dataa#e approach doe# a!a% !ith the 5m% data5 #%ndrome. /t collect# all
data into an or&ani3ed repo#itor%.
The approach rin&# a ne! !a% of thin.in& and #ome ne! tool# that permit the
control of redundanc%$ impro)ed fle2iilit%$ and centrali3ed data control.
; feature# characteri3e the dataa#e approach:
1. Share-ability o data
:. Centralized data management and control
;. Adaptability
(ere=# a #ummar% of the approach...
The dataa#e approach e&in# % uildin& a model of the or&ani3ation ,called an
enterpri#e model-. The model #ummari3e# the #tructure of the data u#ed ,and
needed- in the compan%. /t #ho!# the data entitie# and the relation#hip# et!een
them.
,/n real life$ %ou #eldom ha)e a &loal enterpri#e model$ rather %ou ha)e a
collection of #maller #%#tem model#. Their collected !hole i# e7ui)alent to the
enterpri#e model idea.-
The #tructure i# carefull% uilt #o that all u#er# need# are ta.en care of !ith a
minimum of redundanc%. ,Thu#$ #harin& and redundanc% are oth #ol)ed.-
Ce2t$ %ou de#crie thi# #tructure to a piece of #oft!are ,called a *BMS- that can
maintain oth it and data in it# format. 8inall% %ou load the data and u#e the
*BMS to acce## and maintain the it and it# #tructure.
/t i# the role of the *BMS to retrie)e and #tore the data. Al#o the *BMS doe# it#
e#t to ma.e #ure the data are accurate ,not nece##aril% correct-.
VI. &raitiona$ Systems 'ros & Cons
A. Pros
1. Simp$e
The traditional file proce##in& method !a# the ea#ie#t !a% for #%#tem# to
de)elop &i)en the current #tate-of-the-art. Tho#e people in the 56=# !eren=t
#tupid. The% reali3ed that the #ituation !a# not ideal$ it=# @u#t that the computer
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
5
BACS 485 -- Chapter 1
technolo&% !a# limited ,e.&.$ tape# and card# !ere a)ailale$ not di#.#-. ,Later$
it #ta%ed popular ecau#e of momentum and the e2pen#e to chan&e.- Al#o$ the
#%#tem# that !ere automated !ere not the real mone%-ma.er# for the compan%.
Mar.etin& and production ma.e mone%. 1a%roll and <eneral Led&er @u#t .eep
trac. of it. Lot# ea#ier !a%# to impro)e compan% performance el#e!here than
% impro)in& computeri3ed accountin& #%#tem# ,e.&.$ !or. on mi##ion critical
manual #%#tem#-. So$ for the time period$ the traditional #%#tem# !ere the
natural !a% to #tart. Cot #o toda%A
(. Cheap )at first*
Buildin& inte&rated #%#tem# i# much more comple2 than uildin& #tand-alone
,traditional- #%#tem#. Thu#$ it co#t# more to uild inte&rated #%#tem# than to
uild #tand-alone one#. Computer# !ere normall% ou&ht to #a)e mone%$ #o it
did not ma.e #en#e to #pend %our 5profit5 on unnece##ar% inte&ration.
/nte&ration !a# )ie!ed a# unnece##ar% ecau#e the% had &otten alon& fine
!ithout it in the manual #%#tem# ,or #o the% thou&ht-. >nce a computeri3ed
manual #%#tem !a# !or.in&$ it !a# cheaper to lea)e it alone than to #e)erel%
modif% it. ,The% did not .no! %et that 86E of all pro&rammin& i#
maintenance.-
B. Cons
1. Distrib%te O+nership
/n traditional #%#tem# each functional department 5o!ned5 it# o!n data. Thi# i#
the 5m% data5 #%ndrome. The% feel it i# their per#onal propert% ,li.e office
furniture- to do !ith a# the% plea#e. >ften the% are he#itant to let an%one el#e in
the compan% #ee it ,ecau#e then their po!er !ould e dimini#hed- Mer&in&
data ecame a political proce##. *oe# not help &loal competiti)ene##.
a! "ncontrolled Redundancy
Bach ne! #%#tem re7uired ne! file# to e uilt ,#ince no one !ould #hare
e2i#tin& data e)en if technolo&% e2i#ted to ma.e it po##ile-. Lot# of data !a#
#tored multiple time#. >nce for each #%#tem that needed acce## to it. Thi#
!a# ad ecau#e:
di#. #pace i# !a#ted
data mu#t e input #e)eral time#
data mu#t e updated #e)eral time# ,multiple occurrence#-
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
F
BACS 485 -- Chapter 1
data !a# incon#i#tent ,ne2t #ection-
B)er%one reali3ed that redundanc% !a# a prolem$ ut not one .ne! ho! to
fi2 it #hort of &i)in& up control of 5their data5.
b! #nconsistent data
Thi# i# the !or#t of the prolem# -- it re7uire# #pecial attention. "hen %ou
#tore data #e)eral time# ,#e)eral place#- %ou "/LL ha)e incon#i#tencie# not
matter ho! careful %ou are. The !or#t ca#e i# !here %ou mi## an update.
Thu#$ %ou ha)e t!o ,or more- )er#ion# of data... !hich i# correct' A more
#utle incon#i#tenc% i# !hen the update i# #li&htl% incorrect ,mi##pellin& of
name or different are)iation- or the timin& of the update i# incorrect ,rai#e
after 1G+ period...-. Since each cop% of data i# 5o!ned5 % a different &roup$
it i# reall% no one# re#pon#iilit% to ma.e #ure that it i# &loall% correct.
+e#pon#iilit% fall# et!een the crac.#. Thi# allo!# multiple )er#ion# of the
truth to e #tored in the computer. Thi# undermine# the u#er# confidence in a
dataa#e if it appear# to &i)e incorrect an#!er#. /t can al#o can me## up
cu#tomer relation# if %ou #end &ood# to the !ron& addre## or ill for an
incorrect in)oice.
c! #slands o inormation
A prolem that redundanc% and the 5m% data5 #%ndrome cau#e# i# that &roup#
de)elop their o!n data en)ironment# that are independentl% maintained.
The#e u#er# ecome #elf-#ufficient and cut off from other#. The% are not
!illin& to #hare or recei)e information. Cot onl% redundant data$ ut
redundant tool# and effort too.
(. ,imite Data Sharin!
Since e)er%one ha# their o!n cop% of the data$ no one #hare#. Thi# !a#te# di#.
#pace and perpetuate# the c%cle of independent file #%#tem#. 8or e2ample$ %ou
are de#i&nin& a ne! #%#tem that could u#e data alread% defined and maintained
% other department#. Since the% are un!illin& to #hare ,and it !ould re7uire
#ome re!rite of their ,!or.in&- #%#tem- %ou decide to ta.e the ea#% !a% out
and @u#t re-enter the data. Thi# i# politicall% ea#ier and #impler for the moment$
ut i# )er% #hort #i&hted. /t dela%# fi2in& the prolem.
-. Inf$e.ibi$ity
/ndependent i#land# of information do not ea#il% cooperate. "hen chan&e# are
needed it ecome# a political ni&htmare. 1eople ha)e to call in fa)or# and ma.e
deal# to &et thin&# done. /f 7uic. action and re#pon#i)ene## are re7uired --
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
H
BACS 485 -- Chapter 1
for&et it. Thi# i# !here traditional file #%#tem# reall% #tart to hurt companie#. /t
cau#e# lo## of u#ine## to more efficient competition. /n addition$ chan&e# to
file #tructure# cau#e a ripple effect in all the pro&ram# that acce## that data. 8or
e2ample I-di&it 3ip code# !ere a i& headache. The %ear :666 prolem !a# a
i&&er one. /ndependent file-a#ed #%#tem# tend to e de#i&ned for a #pecific
purpo#e. The% do not ea#il% allo! un-planned proce##in&.
a! $o data independence
Thi# i# )er% important. "hen data definition or proce##in& chan&e# in a
traditional file #%#tem it re7uire# man% modification#. The rea#on for thi# i#
#imilar to the data redundanc% di#cu##ion ao)e. /n thi# ca#e$ the data
definition i# redundantl% #tored. /n addition$ the !a% the data are proce##ed i#
al#o #tored redundantl%. So$ %ou ha)e to ma.e chan&e# in man% place# to
accommodate a 5#imple5 data chan&e. "hen %ou can ma.e data
modification# !ithout chan&in& pro&ram# %ou ha)e 5data independence5.
b! Ad %oc &ueries constrained
Another re#ult of infle2iilit% i# that it i# difficult to &et information in an%
format other than the #tandard format. 8or in#tance$ #a% a mana&er a#.# ,of
the top of her head- 5ho! man% red !id&et# !ere #old on the ea#t co#t to
people under 1: %ear# old'5. Chance# are that a #pecial report doe# not e2i#t
!ith thi# information. ,Called 5ad hoc5 7uer% -- one time onl% 7uer%-. To &et
the information a #pecial report mu#t e &enerated. 1ro&rammer time i#
u#uall% ac.lo&&ed for month# #o it i# ea#ier to pull the information % hand
from old report#. Thi# defeat# the purpo#e of the computer.
The data i# out there and !ould e fairl% ea#% to collect if proper tool#
e2i#ted. Tool# ha)e een uilt to help fi2 thi# prolem ,called 4th &eneration
lan&ua&e#-. The#e ma.e it ea#ier for non- pro&rammer# to do ad hoc 7uerie#$
ut #till re7uire# in-depth .no!led&e aout !here and ho! the data are
#tored. Mo#t mana&er# don=t .no! ,or care to .no!- thi#.
/. 'oor stanars enforcement
Another re#ult of di#triuted o!ner#hip. Standard# are thin&# li.e:
#i3e of data field# ,5 or I di&it 3ip code#'-
are)iation# u#ed ,AD. or ADB. for a)enue'-
timin& of chan&e# ,!hen do %ou clo#e the oo.#'-
!ho can acce## data and !hen'
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
8
BACS 485 -- Chapter 1
ho! do %ou name data field#'
ho! do %ou calculate accountin& di#count#'
!hat operatin& #%#tem do !e u#e ,4C/J$ "indo!#$...'-
!hat file format i# e#t ,ASC// or BBC*/C'-
etcK
Standard# are one of the main thin&# that ma.e a &roup of independent file
#%#tem# into a corporate dataa#e. Traditional file #%#tem# ha)e )er% poor ,if
an%- #tandard enforcement primaril% ecau#e no one i# in char&e of the data.
Co rule# e2i#t$ #o %ou &et a free-for-all.
a! 'rocessing
1roce##in& #tandard# tell &roup# ho! and !hen to tran#form data into
information. /t can include the o)iou# 5ho! do %ou calculate accountin&
di#count#5 ut can al#o include more &loal 7ue#tion# li.e:
!hat hard!are i# u#ed
!hat #oft!are i# u#ed
!hat net!or. protocol i# u#ed
etc.....
Traditional file #%#tem# de)elop in the a#ence of an% centrali3ed control$
hence there are fe! proce##in& #tandard# enforced unle## people informall%
&et to&ether or unle## there i# a #tron& pu#h from mana&ement to!ard#
commonalit%.
b! Storage
The !a% data are #tored al#o re7uire# #tandard#. The o)iou# #tora&e
#tandard# include:
ho! lon& are data field#
!hat t%pe are the data field#
!hat are %our are)iation#
Some more #utle #tandard# include:
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
I
BACS 485 -- Chapter 1
!hat .ind of di#. dri)e# are u#ed
!hat encodin& #cheme i# u#ed
i# data compre##ion or encr%ption u#ed
Traditional file a#ed #%#tem# do not &enerall% ha)e an% #tora&e #tandard#
ecau#e no central control e2erted to ma.e them conform.
c! $aming
8inall%$ namin& #cheme# are a t%pe of #tandard not often found in traditional
file a#ed #%#tem#. Becau#e each &roup uild# their file# in i#olation$ the%
!a% data are name# i# incon#i#tent. Thi# mean# that e)en if u#er# !anted to
#hare data the% !ould ha)e to fi&ure out !hat it i# called fir#t. La#t
di#ad)anta&e of traditional #%#tem#...
0. #.cessive costs
Traditional file a#ed #%#tem# co#t more in the lon& run. The% ma% #eem
cheaper !hen %ou are de)elopin& them$ ut the comined effect of all the
pre)iou#l% #tated prolem# e)entuall% add# up.
a! (o) programmer producti*ity
All the comple2it% of determinin& file name# and !or.in& out #tandard#$ and
dealin& !ith data independence prolem# re#ult# in L>" 1+><+AMMB+
1+>*4CT/D/T9. The comple2it% of tr%in& to #hare data #lo!# do!n
pro&rammer#. Al#o$ if the% ha)e to 5rein)ent the !heel5 e)er% time the% do
#omethin& it re#ult# in !a#ted effort. 8inall%$ pro&rammer producti)it% i#
lo!er ecau#e much time i# #pent in maintenance ,ne2t topic-.
b! E+cessi*e maintenance
Lac. of data independence and the infle2iilit% of traditional #%#tem# mean#
that L>TS of effort i# #pent @u#t to .eep the #%#tem# !or.in&. Stati#tic# #ho!
that H6E to I6E of all pro&rammer effort i# #pent maintainin& e2i#tin&
pro&ram# -- not uildin& ne! #%#tem#. Thi# doe# not ad)ance the #tate of the
compan%$ @u#t .eep# them e)en. B)er%one #uffer# from the hi&h co#t of
maintenance. 1ro&rammer# hate it ,lou#% @o-$ mana&er# di#li.e it ecau#e it
i# not producti)e$ u#er# di#li.e it ecau#e of the ac.lo&#. BA*AA Thi# i# a
prime factor in lo! pro&rammer producti)it%. Can e directl% tied to lac. of
data #harin& and centrali3ed control.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
16
BACS 485 -- Chapter 1
VII. Database 1pproach 'ros & Cons
A# hinted earlier$ the dataa#e approach doe# a!a% !ith the 5m% data5 #%ndrome.
/t collect# all data into an or&ani3ed repo#itor%. The approach rin&# a ne! !a% of
thin.in& and #ome ne! tool# that permit the control of redundanc%$ impro)ed
fle2iilit%$ and centrali3ed data control.
A. Pros
1. Data inte!ration
8or the fir#t time$ companie# ma% #ee e2actl% !hat data the% ha)e and need.
Thi# #ound# #imple$ ut it i# #urpri#in& ho! man% companie# don=t .no! !hat
data the% ha)e and re7uire. ?no!in& thi# can lead to #ome efficiencie# ,e.&.$
!h% are !e #torin& thi# information that no one !ant#'-. Allo!# #treamlinin&
of re7uirement# and #%#tem# if effort i# applied.
(. Contro$$e re%nancy
Der% o)iou#. /f %ou onl% #tore it once then %ou do a!a% !ith redundanc% and
it# related prolem#. B2ample: /f %ou onl% #tore an emplo%ee addre## in one
place then a #in&le update i# effecti)e for all u#er#. 9ou cannot &et rid of ALL
redundanc%. There are time# !hen it i# a &ood idea to .eep redundant data
,"e=ll tal. aout that later in the #eme#ter-$ ut %ou can minimi3e it. Thi# ha# a
#ide enefit of #a)in& di#. #pace and re7uirin& fe!er maintenance pro&ram#.
-. Data sharin!
Since it i# onl% #tored in one place$ %ou mu#t #hare it. Actuall%$ #harin& i# a
)er% important ad)anta&e on it# o!n. /t mean# that %ou trul% are mana&in&
%our data and treatin& it li.e a compan% a##et. (o!e)er$!hen data are #hared$
it rin&# on #ome ne! prolem# not pre#ent in traditional #%#tem#. Li.e
concurrenc% control. "e=ll tal. aout that later.
/. Data inte!rity
/nte&rit% refer# to the prolem of incon#i#tent data in file a#ed #%#tem#. /f data
redundanc% i# reduced then data i# onl% #tored in one place$ #o the multiple
incon#i#tent )er#ion prolem i# fi2ed.
/nte&rit% i# the a##urance that the data are:
accurate
complete
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
11
BACS 485 -- Chapter 1
timely
reliable
/t al#o deal# !ith the notion that the data accuratel% repre#ent# the real !orld
#%#tem it attempt# to model. /n other !ord#$ inte&rit% i# concerned !ith
o)iou# thin&# li.e:
name# #pelled correctl%
proper account numer
all #ocial #ecurit% numer# are uni7ue
And al#o concerned !ith le## o)iou# thin&# li.e:
cu#tomer di#count applied to proper cu#tomer
emplo%ee doe# not ma.e more mone% than their o##
*ata inte&rit% i# a )er% important part of a *BMS ,and a part that mo#t do not
do )er% !ell-.
0. Stanars enforcement
Standard# enforcement i# an important ,and often i&nored- part of the dataa#e
approach. Since %ou ha)e centrali3ed control of data it i# ea#ier to enforce
#tandard#. 8or e2ample:
namin& #tandard# ,e.&.$ fir#t ; character# i# #%#tem name-
field definition #tandard# ,MMG**G99 for date#-
u#a&e #tandard# ,no pa%roll data acce## on !ee.end#-
proce##in& #tandard# ,common encr%ption al&orithm-
etc...
The *BA i# the per#on,#- re#pon#ile for #tandard enforcement. /f the% do a
throu&h @o then the dataa#e if much more u#ale.
2. Centra$i3e contro$
Centrali3ed control i# #ort of a #ide enefit of the dataa#e approach ,not the
direct rea#on for u#in& the approach$ ut a #ide effect.- Mo#t of the enefit# of
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
1:
BACS 485 -- Chapter 1
centrali3ed control are them#el)e# ad)anta&e# of the dataa#e approach.
Centrali3ed control pro)ide# #ome enefit# that %ou mi&ht not immediatel%
thin. of. 8or in#tance$ 1#t enefit of centrali3ed control...
a! Security,'ri*acy
9ou can etter control data #ecurit% and pri)ac% if %ou ha)e centrali3ed
control. Securit% i# the a##urance that data i# .ept from unauthori3ed u#er#.
1ri)ac% i# the a##urance that data i# not mi#u#ed % tho#e u#er#. ,Similar
concept#$ ut the% are not identical- (a)in& all the data in one #pot !ithin the
conceptual model ma.e# thi# ea#ier.
b! #ntegrity
#ntegrity L accurate$ complete$ timel%$ reliale
A# mentioned efore$ inte&rit% i# much ea#ier if %ou ha)e a centrali3ed od%
in char&e of the data and the #tandard#. Traditional file #%#tem# de)eloped
inte&rit% throu&h con#i#tent 5&ood pro&rammin& practice#5 and )oluntar%
cooperation amon& department#. Thi#$ in part$ e2plain# !h% #ome companie#
!ere more #ucce##ful at #%#tem inte&ration than other# u#in& #imilar
e7uipment and doin& #imilar proce##in& ,i.e.$ the informal net!or. !a#
etter-.
c! -ackup,Reco*ery
Bac.up and reco)er% are often not done properl% in file a#ed #%#tem#
ecau#e the% are not thou&ht of a# nece##ar%. ,Amateur #%#tem# mana&er#
don=t reali3e the importance of ac.up#.- /ronicall%$ ac.up# are aout the
mo#t important thin& that %ou can do. "hen department# handled their o!n
data$ traditional a#ed ac.up and reco)er% !a# done in a #pott% and
incon#i#tent manner. Some people !ere &ood at it and other# !ere not. The
rea#on that more prolem# did not occur !a# ecau#e companie# u#uall% onl%
had 1 computer center ,for all their independent file-a#ed #%#tem#-. The
computer center handled ac.up and reco)er% !ithout the department=#
.no!led&e. Bac.up and reco)er% are much ea#ier !hen dataa#e method#
u#ed ecau#e the *BMS can handle the detail# ,con#i#tentl%-.
4. 5$e.ibi$ity67esponsiveness
The dataa#e approach i# much more fle2ile ecau#e %ou can acce## data
!ithout concern !ith !here or ho! it i# #tored. Thi# idea i# )er% clo#e to the
idea of data independence. Some oo.# al#o mention that dataa#e #%#tem#
pro)ide multiple retrie)al path# to each data item. Thi# i# true ,ut mi##e# the
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
1;
BACS 485 -- Chapter 1
prime point aout data independence-. B% default$ a fle2ile #%#tem i# al#o
re#pon#i)e. That i#$ %ou can ma.e chan&e# more 7uic.l% ecau#e there i# le##
to chan&e. ,Le## detail to !orr% aout-. Specificall%$ the fle2iilit% of the
dataa#e approach help# !ith...
a! Ad %oc &ueries
Muer% lan&ua&e# ha)e een de)eloped that non- pro&rammer# can u#e to ma.e
one-time-onl% 7uerie# ,ad hoc-. /n thi# !a% the% can #ati#f% their uni7ue
information need# !ithout u#in& traditional pro&rammin& #er)ice# ,i.e.$ a)oid
the ac.lo&-. <>>*AA (o!e)er$ it #till doe# not fi2 the prolem !here u#er#
mu#t ha)e in-depth .no!led&e of data name# and !here it i# #tored. 4th
&eneration lan&ua&e# ,!hich i# !hat mo#t *BMS 7uer% tool# are- help$ ut
not 7uite a# &ood a# the #ale# literature promi#e#.
b! Multiple user *ie)s
A #ide enefit of the dataa#e approach i# called 5)ie!#5. A )ie! i# a #in&le
u#er# per#pecti)e of the dataa#e. Briefl%$ u#er# do not need to #ee the !hole
dataa#e. The% t%picall% onl% need to #ee a #mall portion ,the #ame portion
that the traditional file !ould ha)e &i)en-. 9ou define thi# dataa#e #u#et
!ith the *BMS mechani#m called 5)ie! definition5. ,"e=ll do thi# later.-
Die!# enhance fle2iilit% ecau#e the% ha)e &reat data independence. 9ou
can modif% the underl%in& data !ithout di#turin& the )ie! and chan&e the
)ie! definition !ithout modif%in& the pro&ram# that u#e it ,!ith one
e2ception -- %ou canNt remo)e data that the pro&ram directl% u#e#-.
8. Data Inepenence
Traditional pro&rammin& uild# the data definition and the data proce##in& into
the #ame unit ,called a pro&ram-. Thi# mean# that !hene)er the data definition
chan&e#$ %ou ha)e modif% each pro&ram that u#e# it. BA*AAA The dataa#e
approach #eparate# the data definition and the data acce## method# from the
pro&ram# that proce## the data. Thi# pro)ide# data independence ,that i# the
ailit% to chan&e the data #tructure !ithout modif%in& pro&ram# that u#e the
data-.
9. Cost savin!s
The dataa#e approach #a)e# mone% in the lon& run. (o!e)er$ a# !e !ill #ee
later$ a &ood *BMS i# e2pen#i)e$ #o thi# enefit i# !ea. and a little harder to
pro)e.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
14
BACS 485 -- Chapter 1
a! Easier application de*elopment
Much of the !or. in traditional application de)elopment i# definin& the data
and !ritin& code to acce## it. Al#o$ a &ood deal of traditional application
pro&ram# !ere de)oted to inte&rit% chec.#. The dataa#e approach minimi3e#
thi# ecau#e the data are alread% defined and the acce## i# up to the *BMS.
Al#o$ the inte&rit% con#traint# can e uilt into the *BMS. Thi# #peed# up
application de)elopment. (o!e)er$ it #lo!# do!n anal%#i# and uildin& time
ecau#e %ou ha)e to do all that !or. up front. ,Co free lunche#-. Code re-u#e
i# another ad)anta&e of the dataa#e approach. /n #ome #%#tem#$ %ou can uild
&eneric routine# and ha)e the *BMS #tore them for later re-u#e. Co need to
rein)ent the !heel and te#t the#e routine# once %ou .no! the% !or.. Thi#
idea !a# common in traditional file-a#ed #%#tem# al#o$ ut i# ea#ier in
dataa#e approach.
b! Reduced maintenance
Since the data$ the data definition$ and the application pro&ram# in a *BMS
are all independent$ %ou can chan&e an% !ithout affectin& the other# ,data
independence-. Thi# ma.e# pro&ram maintenance ,and te#tin&- ea#ier and
7uic.er ,le## mone%-. >ld-#t%le #%#tem# forced the pro&rammer to e
concerned !ith 5#ide effect#5 ,unplanned effect# of a pro&ram chan&e-. /t
re7uired e2ten#i)e plannin& and te#tin& for e)en #imple modification# ,i& O-.
The dataa#e approach doe# not totall% do a!a% !ith the prolem of
maintenance #ide effect#$ ut at lea#t it minimi3e# them. The end effect i#
etter pro&rammer producti)it%.
B. Cons
Thi# #eme#ter !e !ill not d!ell on the prolem# of the dataa#e approach. The
ad)anta&e# of dataa#e &reatl% out!ei&h the prolem#. (o!e)er$ / !ant %ou to
ha)e a reali#tic )ie! of *BMS from thi# cour#e ,!e are not 5#ellin&5 *BMS#
here.-
1. Specia$i3e personne$ an har+are
Althou&h the dataa#e approach i# cheaper in the lon& run due to impro)ed
pro&rammer producti)it% ,and other rea#on#-$ it ha# #ome up- front co#t# that
are not tri)ial. The#e co#t# are often o)erloo.ed % an2iou# u#er#. 9ou don=t
!ant to e #urpri#ed.
a! D-A. DA.///
/f %ou plan on u#in& e2i#tin& people$ %ou !ill ha)e to #end them to trainin&
cla##e# on %our *BMS product. The#e cla##e# co#t et!een OF66 to OI66 a
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
15
BACS 485 -- Chapter 1
da% ,plu# e2pen#e#-. Cla##e# can la#t !ee.#. 9ou can al#o do on-#ite trainin&$
ut that i# al#o )er% e2pen#i)e. /f %ou !ant to hire people alread% trained$
the% co#t more than normal pro&rammer# ,ecau#e the% ha)e had the trainin&
cla##e# or e2perience-. Bither !a%$ %ou cannot a)oid the trainin& co#t and
#u#e7uent lo## of producti)it% !hile the% learn. /n addition$ %ou !ill ha)e to
hire ,or train- a dataa#e admini#trator ,*BA-. Thi# i# a )er% #peciali3ed
per#on ,or &roup of people- and the% are not cheap. ,O56$666 to O156$666 per
%ear normall%.-
b! C'". RAM. Disk
A# far a# hard!are i# concerned$ %ou !ill proal% ha)e to up&rade %our
C14$ u% more fa#t +AM$ and u% more di#. dri)e#. Thi# co#t# i& O. Thi#
i# in addition to the co#t of the *BMS it#elf. ,The% t%picall% co#t et!een
O15$666 and O166$666 ,or more-.
c! 'otentially slo)er
>nce the% #pend all thi# mone%$ man% are #urpri#ed that the o)erall #%#tem
throu&hput i# #lo!er than !ith their old file-a#ed #%#tem ,e)en !ith the
eefed up C14-. The rea#on for thi# i# that the machine i# ha)in& to do a lot
more thin&# ,e.&.$ concurrenc% control$ #ecurit%$ inte&rit%$ reco)er%$ ...-. 9ou
!ant the#e thin&#$ it i# @u#t that people are #urpri#ed that the% #lo! do!n the
machine. The real &ain in *BMS come# in
pro&rammin& co#t #a)in&#
etter data con#i#tenc%
data #harin& #%ner&%.
(. Data conc%rrency prob$ems
Alon& !ith the ad)anta&e# of data #harin& come #e)eral prolem#. The#e
prolem# are uni7ue to #%#tem# that allo! more than one functional area to u#e
the #ame data at the #ame time.
a! Deadlock,(i*elock
"hen data are #hared$ the *BMS mu#t e careful to onl% allo! one u#er at a
time to chan&e it. /f multiple u#er# could chan&e at the #ame time then it
!ould e chao#. The *BMS doe# thi# % &i)in& #ole acce## to update data to
one u#er at a time. An%od% el#e that need# it mu#t !ait until the fir#t i#
throu&h. *eadloc. i# a condition !here : ,or more- u#er# are each !aitin& for
the other to relea#e the #ame piece of data. Ceither can continue until the
other &i)e# up the needed data. *eadloc. ,a...a. deadl% emrace- !ill
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
1F
BACS 485 -- Chapter 1
continue until %ou turn the computer off or until one of the u#er# 5&i)e# in5.
8or e2ample$ ima&ine a 4-!a% #top #i&n !ith t!o car# !aitin& for each other.
Traditionall% the *BMS loo.# for deadloc. and force# one u#er to relea#e
their data and #tart o)er.
Li)eloc. i# a condition !here a u#er cannot proceed for a lon& time ecau#e
the% are ne)er &i)en acce## to needed data. Thi# i# different from deadloc. in
that the% do not ha)e an%thin& that an%one el#e !ant#. The% are @u#t 5lo! on
the priorit% li#t5 #o the% ne)er &et acce## to a popular piece of data. A&ain$
the *BMS ha# !a%# to fi2 thi# prolem. Both prolem# are directl% related to
data #harin& ,and u#e lot# of C14 c%cle#-.
b! Transaction Rollback
>ne !a% the *BMS fi2e# deadloc. i# throu&h 5tran#action rollac.5.
Ba#icall%$ a rollac. i# the proce## of 5undoin&5 e)er%thin& that a u#er ha#
done. ,A 5tran#action5 i# an aritrar% unit of !or. on the dataa#e.- "hen
the *BMS #elect# a 5)ictim5$ the% 4C*> e)er%thin& that u#er ha# done
,includin& relea#in& loc.# on data item#-. >nce thi# i# done then other u#er#
can continue. +ollac.# u#e lot# of C14 c%cle# al#o and are normall% re#ult of
data contention ,)ia data #harin&-.
-. Data sec%rity prob$ems
>ne of the fe! area# !here the traditional approach !a# etter. "hen %ou
comine all the traditional file-a#ed #%#tem# %ou al#o comine all the #ecurit%
concern# of that data. Stran&el% enou&h$ the traditional file a#ed approach had
fairl% &ood #ecurit% ecau#e people &uarded their data )er% carefull%. Some of
the #ecurit% prolem# are not ne! ,e.&.$ ac.upGreco)er%$ authori3ation-. The%
are @u#t i&&er. >ther prolem# #prin& up #pecificall% ecau#e a *BMS i#
pre#ent. 8or e2ample$ the potential for cata#trophic failure. All in all$ *BMS
#ecurit% i# not ne!$ @u#t more inten#e.
a! Catastrophic ailure
"hen %ou put all %our e&&# in one a#.et$ %ou ri#. lo#in& them. Tran#lation:
Lac. of redundanc% can ea#il% lead to lo#in& e)er%thin& if %ou are not
careful. Cot onl% are the data not redundantl% #tored$ ut the proce##in& i#
al#o performed on #in&le #et of hard!are. *an&erou#A "hen %ou depend on
one #%#tem ,*BMS- to perform all data retrie)al$ #tora&e$ ac.upGreco)er%$
inte&rit%$ ... then %ou are )er% )ulnerale to a failure of that #%#tem. >n a le##
cata#trophic note$ a #in&le ad application can #ometime# rin& do!n the
!hole *BMS. Thi# #ort of thin& rarel% happened on old file-a#ed #%#tem#.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
1H
BACS 485 -- Chapter 1
b! Elaborate backup,reco*ery
Thi# &enerall% come# under the headin& of #ecurit%. 9ou can pro)ide ac.up
tape#$ ac.up di#.#$ ac.up C14#$ ... all the !a% up to totall% redundant #ite#.
The more #ecurit% %ou u%$ the more it co#t#. Thi# i# not reall% that different
from file-a#ed #%#tem# #ince mo#t of the i& one# ran at a #in&le hard!are
#ite. The prolem i# that all u#er# are do!n !hen %ou do ac.up#$ not @u#t a
fe! function#. ,Cote$ #ome fanc% *BMS#$ li.e >+ACLB$ do incremental
ac.up# #o that u#er# are not o)erl% incon)enienced.-
/. Or!ani3ationa$ conf$ict
Shared dataa#e re7uire# a con#en#u# on data definition and o!ner#hip. Thi# i#
!here the *BA reall% earn# their mone%. /t ta.e# a &ood politician to na)i&ate
thi# minefield. Thi# i# a political concern. 4#er# from #eparate functional area#
mu#t a&ree on !ho o!n# the data$ !ho can maintain it$ !hen$ ho! it i#
proce##ed$ di#triuted$ .normall% te2too.# minimi3e the political a#pect# of
data proce##in& in the or&ani3ation. 9ou #hould rememer that politic# al!a%#
follo!# lar&e ud&et# and po!er. Thi# i# true in the *1 area.
0. Comp$e. concept%a$ esi!n
/t i# more comple2 to under#tand ,and pro&ram- !hen %ou mu#t e concerned
!ith the entire enterpri#e model. *BMS pro&rammer# mu#t e concerned !ith
tran#action interaction$ timin&$ and a ho#t of prolem# not pre#ent in old file-
a#ed #%#tem#. To #ol)e thi#$ fe! companie# actuall% ha)e a full enterpri#e
model. Mo#t ha)e #u#et# of the model that lin. lo&icall% related #u-#%#tem#.
Thi# i# a practical !a% to approach e2treme comple2it%. /t i# not nece##aril%
&ood$ it i# @u#t the !a% thin&# are until !e ha)e etter tool# to help the
pro&rammer deal !ith e2treme detail. ,e.&.$ CASB tool#$ SBB#$ ...-
2. #.tra costs
(a)in& a *BMS in place can #lo! do!n certain a#pect# of the #%#tem life-
c%cle. /f %ou e)er e)aluate a *BMS$ %ou #hould reali3e thi#.
a! Testing diiculties
9ou u#uall% cannot te#t application# directl% a&ain#t the li)e dataa#e ecau#e
it ma% dama&e it ,a&ain$ all e&&# in one a#.et...-. Thi# mean# that %ou mu#t
either ma.e an e2tract of the full dataa#e or de)elop a #u-#et of the dataa#e
#trictl% for te#tin& purpo#e#. Thi# ta.e# time and di#. #pace. /t al#o ma% not
ade7uatel% te#t the prolem# that often occur under 5load5 ,multiple u#er#-.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
18
BACS 485 -- Chapter 1
b! Comple+ en*ironment
Thi# i# related to the 5comple2 conceptual de#i&n5 and 5#pecial pro&rammer#5
topic# ao)e. Ba#icall%$ *BMS product# are more comple2 to u#e than file-
a#ed #%#tem#. /t ta.e# time to learn them. Al#o$ a full enterpri#e model of a
compan% i# u#uall% too comple2 for a #in&le pro&rammer to comprehend
!ithout aid# ,CASB tool#$ ...-. Ta.en to&ether$ %ou lo#e #ome of %our
pro&rammer producti)it% ,#hort run- due to the comple2it% of the *BMS. All
in all ho!e)er$ the ad)anta&e# 8A+ >4T"B/<( the di#ad)anta&e#. So the
dataa#e approach i# the !a% of the future. CBJT letN# e2amine the
component part# of a *BMS....
VIII. Database Systems
A *BMS i# not one i& pro&ram. /t i# made up of #e)eral lar&e comple2 #u-
#%#tem# and a #e)eral &roup# of people ,cla##e# of u#er#-. To e&in$ the a#ic
function# of a *BMS are:
data #tora&e$ retrie)al$ and update
a u#er-acce##ile catalo&
tran#action #upport
concurrenc% control #er)ice#
reco)er% #er)ice#
authori3ation #er)ice#
#upport for data communication#
inte&rit% #er)ice#
#er)ice# to promote data independence
utilit% #er)ice# ,reor&ani3e #tati#tic#$ monitorin&...-
A. Procedures
B. People
1. Data aministrators
The ne2t ; 5component#5 could etter e called 5dataa#e role#5. The% are
people that perform certain ta#.#. Thi# include# the *BA and the *A. The t!o
po#ition# are re#pon#ile for the technical and political mana&ement of the
*BMS and it# u#e. The *BA i# the per#on re#pon#ile for mana&in& the
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
1I
BACS 485 -- Chapter 1
or&ani3ation=# data. *BA ha# the ultimate authorit% and re#pon#iilit% for
en#urin& that the data i# #ecure$ accurate$ and timel%. Specificall%$ the *BA
doe#:
uild and maintain the data dictionar%
re#ol)e di#pute# aout data u#a&e$ control...
de#i&n and maintain the conceptual and ph%#ical dataa#e
monitor dataa#e for performance tunin&
perform ac.up# and reco)erie#
etc...
Sometime# the *BA po#ition i# held % a &roup of people and #ometime# the
technical #ide i# handled % a *ata Admini#trator ,*A- !hile the political #ide
i# handled % the *BA.
(. Systems eve$opers
The#e are pro&rammer# that !rite the application code to meet #pecification.
The% are t%picall% !ell )er#ed in the u#e of the *BMS tool# and in the function
that the% are pro&rammin&. Seldom are #%#tem de)eloper# the #ame people that
u#e the #%#tem. Thi# partl% due to the #peciali3ed nature of the !or. and partl%
due to a need to pro)ide #ecurit% % #eparatin& the u#er# and the de#i&ner# of
the #%#tem.
-. #n %sers
8inall%$ the end u#er# are tho#e that ha)e a need to acce## the data. <enerall%$
end u#er# are non- technical and do not u#e mo#t of the *BMS component# ,at
lea#t the% don=t .no! the% are u#in& them-. To the end u#er$ the *BMS #hould
loo. no !or#e than the file-a#ed #%#tem that it replaced ,or %ou ha)en=t done
%ou @o correctl%-. (opefull% it loo.# etter.
C. Database
1. Data
The main purpo#e of a *BMS i# to #tore and retrie)e data. >)iou#l% thi# i# the
mo#t important component. There are : &eneral cate&orie# of data:
actual ,real-
*irtual ,deri)ed-
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:6
BACS 485 -- Chapter 1
The actual data i# #tored on di#. and can e read and !ritten @u#t a# in
traditional #%#tem# ,althou&h %ou don=t !orr% aout #tora&e detail#- Dirtual data
i# not actuall% #tored an%!here. +ather$ the deri)ation method i# #tored. "hen
%ou re7uire the information it i# created from
e2i#tin& data. B2ample: Bmplo%ee a&e !ould not reall% e #tored in the
dataa#e. +ather their irthda% and the current da% !ould e u#ed to calculate
it. /n that !a% it !ould al!a%# e current. Another e2ample i# if %ou !ant a
#um of a purcha#e order. The #um !ould not actuall% e on di#.$ rather it
!ould e calculated 5on the fl%5.
a! Actual
b! 0irtual
(. Str%ct%re
+a! data i# not reall% )er% u#eful % it#elf. 9ou cannot ha)e an% relation#hip#
amon& data item# in ra! data ,@u#t a unch of data item#-. "hat i# mi##in& i#
the #tructure that tie# the piece# to&ether. "e !ill e !or.in& !ith thi# all
#eme#ter. /t i# a )er% po!erful a#pect of the *BMS approach. /t i# al#o one of
the main comple2itie# that mu#t e dealt !ith. There are #e)eral a#ic concept#
a##ociated !ith #tructure:
#tructure !ithin 5record5
#tructure et!een 5record#5
cardinalit% ,1:1$ 1:C$ M:C- - nature of relation#hip
de&ree ,ho! man% entitie# participate-
&enerali3ationG#peciali3ation
primar% .e% uni7uene##
referential inte&rit%
u#er defined inte&rit% rule#
A &eneric term for information aout the #tructure of data i# 1metadata1/ /n
dataa#e terminolo&%$ the part of the *BMS that define# the #tructure i# called
the 1schema1/ The #chema i# #tored in the *BMS component called the
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:1
BACS 485 -- Chapter 1
1catalog1 or the repo#itor%. A&ain$ !e !ill &et to mo#t of thi# later$ thi# i# @u#t
an introduction. ;rd *BMS component ...
D. DBMS
See al#o: Soft!are
The *ata Ba#e Mana&ement S%#tem ,*BMS- i# the &eneric name for the
collection of #u- #%#tem# u#ed to create$ maintain$ and pro)ide controlled acce##
to data. The% ran&e in comple2it% from #mall 1C-*BMS #%#tem# ,Acce##$ dBa#e
/D$ +a#e...- co#tin& a fe! hundred dollar# to lar&e mainframe product#
,>+ACLB$ /BM *B:- co#tin& #e)eral hundred thou#and dollar#.
The central component of the *BMS. A module that pro)ide# acce## to the
ph%#ical #tructure and the data. Al#o coordinate# all of the other function# done
% the *BMS. The central control module that recei)e# re7ue#t# from u#er# $
determine# !here the data i# and ho! to &et it$ and i##ue# ph%#ical /G> re7ue#t# to
the computer operatin& #%#tem. Al#o pro)ide# #ome mi#c. #er)ice# #uch a#
memor% and uffer mana&ement$ inde2 maintenance$ and di#. mana&ement.
1. DBMS #n!ine
(. Interface s%bsystem
1ro)ide# facilitie# for u#er# and application# to acce## the )ariou# component#
of the *BMS. Mo#t *BMS product# pro)ide a )ariet% of lan&ua&e# and
interface# to #ati#f% the different t%pe# of u#er# and the different #u-#%#tem#
that mu#t e acce##ed. The follo!in& are common interface# that are pro)ided
,#ome are mi##in& in the #mallerGcheaper product#-. Cote that #ome *BMS
comine the function# of #e)eral interface# into a #in&le #u-#%#tem ,e.&.$ SML
i# **L$ *ML$ and *CL comined-.
a! DD(
4#ed to define and maintain the dataa#e #tructure# ,e.&.$ record#$ tale#$ file#$
)ie!#$ inde2in&$ ...- Specificall% **L define#:
all data item# ,t%pe$ #pecification...-
all record t%pe# ,tale# in relational model-
the relation#hip# amon& record t%pe# ,not in relational model-
u#er )ie!# ,or #u#chema#-
The **L i# u#ed to define the conceptual dataa#e and turn it into a ph%#ical
dataa#e
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
::
BACS 485 -- Chapter 1
b! DM(
4#ed to manipulate and 7uer% the data it#elf. T%picall% u#ed % a ho#t
pro&ram or a# ad hoc command# in interacti)e mode. 8or e2ample$ %ou could
#elect a #u#et of data a#ed upon #ome 7uer% criteria u#in& the *ML. /n
#ome dataa#e #%#tem# the *ML al#o pro)ide# the command# to 5na)i&ate5
the data #tructure.
c! DC(
4#ed to &rant and re)o.e acce## ri&ht# to indi)idual# ,and &roup#-. A 5ri&ht5
i# the pri)ile&e to perform a data manipulation operation. 8or e2ample$ the
*BA can &rant a cler. the ri&ht to acce## and delete /CDBCT>+9 record#
,ut not to update them-. Another related concept i# a dataa#e ProleQ. A role
i# a predefined #et of acce## ri&ht# and pri)ile&e# that can e a##i&ned to a
u#er. "hen the definition of the role chan&e#$ all u#er# a##i&ned to that role
&et the updated acce## ri&ht#. A&ain$ not all *BMS# call the **L$ *ML$ and
*CL #eparate interface#. (o!e)er$ all ; function# mu#t e pre#ent in the
*BMS.
d! 2-E
>ptional. Some modern *BMS# pro)ide a &raphical repre#entation of the
data #tructure ,a tale u#uall%- that allo!# %ou to #elect !hich data item# to
7uer% on and the condition# for #election. Cormall% thi# feature i# found in
Muer% B% B2ample #u-#%#tem# of relational *BMS#. The &raphic interface
ma.e# it ea#ier for non- technical u#er# to ma.e comple2 7uerie#. Al#o hand%
ecau#e it i# a common interface that can cro## di)er#e *BMS #%#tem#.
e! 3orms interace
>ptional. A #creen-oriented form i# pre#ented to the u#er. The% re#pond %
fillin& in the lan.#. The re#ult i# that the *BMS u#e# the form that %ou
de#i&n to input and output data.
! %i-le*el interace
1ro&rammer# need to e ale to acce## data )ia a hi&h-le)el lan&ua&e. Thi#
could e old-#t%le ,;rd &eneration- lan&ua&e# li.e C>B>L$ 8>+T+AC$
1a#cal. >r it could e ne!er 4th &eneration lan&ua&e# li.e Toolo2$ Mapper$
Ba#%trie)e$ ... . Mo#t i& mainframe product# ,/n&re##$ >racle$ /nformi2...-
include a 4<L a# part of the *BMS. Studie# ha)e #ho!n that application
done u#in& 4<L# re#ult in a #%#tem that i# up 16 to :6 time# fa#ter than u#in&
traditional ;rd &eneration lan&ua&e#. ,Cote$ code doe# not run fa#ter$ it i# @u#t
deu&&ed #ooner.- The interface u#uall% i# achie)ed % addin& a fe! e2tra
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:;
BACS 485 -- Chapter 1
command# ,)er#- to the #tandard lan&ua&e and ha)in& a pre-proce##or
tran#late the#e )er# into *BMS call# ,u#in& the CALL format of the #pecific
operatin& #%#tem-. Thi# method !or.# !ell ecau#e the u#er doe# not need to
.no! the comple2itie# of operatin& #%#tem call# and the re#ultin& code i#
#ome!hat portale. The interface# to 5old5 lan&ua&e# i# needed ecau#e there
i# a lot of code and pro&rammer e2perience out there that cannot e i&nored.
-. Dictionary
The !ord 5repo#itor%5 i# u#ed to relate ac. to the /nformation +e#ource
Mana&ement concept mentioned earlier. The data in the dataa#e #hould e
treated a# a corporate re#ource. Thi# re#ource mu#t e mana&ed. The
repo#itor% i# more than a 5data dictionar%5 or 5catalo&5. /t i# the central place
that %ou #tore:
#%#tem documentation
data #tructure
pro@ect life c%cle information
conceptual model information
etcK
CASB tool# u#e it e2ten#i)el%. A *BMS #%#tem component mu#t e pre#ent to
mana&e and control acce## to the repo#itor%. To a certain e2tent$ the *CL doe#
part and CASB tool# do part. /t pro)ide# facilitie# for recordin&$ #torin&$ and
proce##in& de#cription# of an or&ani3ation=# data and data proce##in&
re#ource#. 1rett% ne! idea ,#till ein& defined % indu#tr%-.
/. Data inte!rity s%bsystem
There are 4 important function#:
- intrarecord integrity - enforce con#traint# on data item )alue# and t%pe#
!ithin each record in the dataa#e
- reerential integrity - enforce the )alidit% of reference# et!een record# in
the dataa#e
- user-deine integrity - Bu#ine## rule# ,aritrar%- that mu#t e upheld ,e.&.$
emplo%ee can=t ma.e more than o##-.
- concurrency control - A##urin& the )alidit% of data !hen multiple u#er#
acce## #imultaneou#l% ,&et into more later-.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:4
BACS 485 -- Chapter 1
0. Sec%rity m!t. s%bsystem
A #u#%#tem that pro)ide# facilitie# to protect and control acce## to the
dataa#e. The : mo#t important a#pect# of #ecurit% are:
#ecurin& data from unauthori3ed acce##
protect it a&ain#t di#a#ter#
The fir#t i# done throu&h pa##!ord#$ )ie!#$ and protection le)el#. Bncr%ption i#
al#o !idel% u#ed. The #econd a#pect u#e# ac.up#$ lo&#$ efore and after
ima&e#$ di#a#ter reco)er% plan#$ etc.
2. Bac:%p67ecovery
A #u#%#tem that lo&# tran#action# and dataa#e chan&e# and periodicall%
ma.e# ac.up copie# of the dataa#e. Thi# i# done #o %ou don=t lo#e data in the
e)ent of a prolem. There are different le)el# of prolem# that ac.upGreco)er%
prepare# for. The% ran&e from redoin& a tran#action that !a# rolled ac. due to
a concurrenc% conflict ,minor- to totall% re#torin& the dataa#e after the
computer center i# de#tro%ed ,ma@or-.
4. 1pp$ication eve$opment
>ptional. 1ro)ide# facilitie# #o that end u#er# andGor pro&rammer# can de)elop
complete dataa#e application#. Some u#e elaorate CASB tool# a# !ell a#
#creen and report &enerator# to create full application# !ith minimal !or..
>ther# help !rite code from #.etch% #pecification#. /n an% e)ent$ thi# i# an aid
to non-technical u#er# and to eef up pro&rammer producti)it%.
8. 'erformance mana!ement
The *BA need# #ome !a% to determine if the *BMS i# performin& !ell.
The#e tool# ,often called 5monitorin& utilitie#5- &i)e the *BA information
needed to tune *BMS performance. B2ample: A monitor utilit% can find data
item# that are acce##ed fre7uentl% enou&h to need an inde2. The% can al#o e
u#ed to determine if a data item need# to e on a fa#ter di#. dri)e or po##il%
replicated.
. Soft!are
1. 1pp$ication pro!rams
The#e are the #pecific procedure# ,pro&ram#- that manipulate the data in the
dataa#e. The% are !ritten for #pecific application# needed % the u#ine##.
9ou don=t u% the#e a# part of the dataa#e. Some are fairl% predictale
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:5
BACS 485 -- Chapter 1
,pa%roll$ account# pa%ale$ &eneral led&er- !hile other# could e 7uite aritrar%
and #peciali3ed. the main point i# that the% are #pecificall% !ritten for the
u#ine## u#in& u#ine## defined re7uirement#. The e#t thin& that the *BMS
can do to help i# to pro)ide tool# to help !rite and maintain the pro&ram#.
(. C1S# too$s
Computer-Aided Soft!are Bn&ineerin& ,CASB- tool# are u#ed for automatin&
the #oft!are de)elopment and maintenance ta#.#. Ba#icall%$ %ou u#e a computer
pro&ram to automate the #oft!are life-c%cle !or.. Thi# i# fairl% ne! and not
!idel% u#ed in indu#tr%$ ut %ou !ill ha)e #ome contact durin& %our career.
*ependin& upon the CASB tool$ it can automate:
fea#iilit% anal%#i#
re7uirement# definition
lo&ical de#i&n
protot%pin&
pro&rammin& and te#tin&
implementation
maintenance
/n future$ mo#t lar&e #oft!are pro@ect# !ill u#e CASB tool# ,proal% hoo.ed
into the data repo#itor% #u#%#tem-. Some of the ad)anta&e# of u#in& CASB
tool# are:
impro)ed producti)it% in de)elopment
impro)ed 7ualit% throu&h automated chec.in&
automatic preparation and update of documentation
encoura&ement of protot%pin& and incremental de)elopment
automatic preparation of pro&ram code from re7uirement# definition
reduced maintenance effort#
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:F
BACS 485 -- Chapter 1
-. Operatin! system
". #ard!are
I;. Chapter <ome+or:
9ou #hould do prolem# :$;$4$5$ and 16.
Cop%ri&ht 0a% M. Li&htfoot$ 1h.*.
:H