Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Admi
nis
tra
ció d'un SGBD
Les tas
ques que cor res
ponen a l’adminis
tra
ció d’una base de dades solen ser bas tant
complexes i per això cal que el seu admi nis
tra
dor tin
gui un perfil d’usuari molt
experi
mentat, i sigui capaç d’enfron tarse als pro
blemes referents a la gestió dels
dife
rents usu a
ris i a tots aquells que tin
guin com a objec tiu aconseguir un ren di
ment
òptim del sistema.
4.1. Fun
ci
ons de l'admi
nis
tra
dor de l'SGBD
En els dife
rents nivells i apli
ca ci
ons de bases de dades hi ha la fun ció de l’admi
nis
tra
dor de la base de dades (DBA), encara que varia en com plexitat. Aquesta és més
sen
zi
lla quan es tracta d’una base de dades per so
nal que quan es refe reix a una base
de dades de grups de tre ball, i aquesta al seu torn és més senzi
lla que en una base de
dades organit
za o
ci nal.
En una base de dades per so
nal nor mal
ment l’usu ari mateix és l’admi nis
tra
dor de la
base de dades, però les bases de dades de grups de tre ball reque rei
xen una o dues
per
so
nes que nor malment no es dedi quen a aquesta fun ció de temps com plet, ja que
tenen altres responsa
bi
li
tats dins o fora de l’orga
nit
zació. En les bases de dades
orga
nit
za o
cinals, que nor malment per meten l’accés a dese nes i fins i tot cente
nars
a
d’usuris, es requereix un admi nistra
dor de base de dades de temps com plet, a
causa de l’alt volum de pro cessos que han de desen vo
lupar, con tro
lar i super vi
sar.
Un admi nis
tra
dor de base de dades de temps com plet normalment té aptituds tèc
ni
ques per al maneig del sistema en qües tió i a més és desit
ja
ble que tin
gui nocions
d’admi nis
tra
ció, maneig de perso
nal i fins i tot un cert grau de diplomàcia. La carac
te
rís
tica més impor tant que ha de tenir és un conei xement pro fund de les polí
ti
ques
i nor
mes de l’empresa i el cri
teri de l’empresa per apli carles en un moment donat.
La res
pon
sabi
li
tat gene
ral del DBA és faci
li
tar el desen
vo
lu
pament i l’ús de la base
de dades dins de les guies d’acció defi
ni
des per l’adminis
tra
ció de les dades.
El DBA és res
pon
sa
ble pri
mor
di
al
ment del següent:
Admi
nis
trar l’estruc
tura de la base de dades
Admi
nis
trar l’acti
vi
tat de les dades
Admi
nis
trar el sis
tema ges
tor de base de dades
Esta
blir el dic o
cinari de dades
Asse
gu
rar la fia
bi
li
tat de la base de dades
Con
fir
mar la segu
re
tat de la base de dades.
4.1.1. Admi
nis
tra
ció de l'estruc
tura de la base de dades
L’admi nistra
ció de l’estructura de la base de dades inclou par ti
ci
par en el dis
seny
ini
cial i la posada en pràc tica i també con tro
lar i administrarne els requisits, i aju
dar a ava luar alter
nati
ves, incloenthi els SGBD per uti lit
zar i aju
dar en el disseny
general de BD. En els casos de grans apli caci
ons de tipus orga nit
za o
cinal, el DBA és
un gerent que super visa el tre
ball del personal de dis
seny de la BD.
Les prin
ci
pals tas
ques de l’admi
nis
tra
dor de la base de dades són les següents:
Defi
nir les veri
fi
ca
ci
ons de segu
re
tat i
inte
gri
tat
Les veri
fi
ca
ci
ons de segu retat i d’inte
gri
tat es
poden con si
derar part de l’esquema con ceptual.
El DDL lògic inclou els mit jans per espe ci
fi
car
aquestes veri
fi
ca
ci
ons.
Una vegada dis se
nyada la BD, és posada en pràc tica uti
lit
zant pro ductes de l’SGBD,
i es pro
cedeix lla a
vors a la creció de les dades (captura inicial). El DBA par ti
cipa en
el desenvolu
pament de pro ce
di
ments i controls per assegurar la quali
tat i l’alta inte
gri
tat de la BD.
El DBA s’ha d’encar re
gar de la comu ni
ca
ció amb els usu a
ris, garan tir la disponibi
li
tat de les dades que reque reixen i d’escriure –o ajudar els usu aris a escriure– els
esque mes externs neces saris, emprant el DDL extern apli cable. A més, cal drà defi nir
la cor res
pon dència entre qual se
vol esquema extern i l’esquema con ceptual. En la
pràc tica, el DDL extern inclourà amb tota pro ba
bi
li
tat els mitjans per espe ci
fi
car la
corres pondència, però en aquest cas també l’esquema i la cor respon dèn cia s’hau ran
de poder sepa rar amb clare dat. Cada esquema extern i la cor respon dèn cia asso ci
ada
existi
ran en totes dues ver si
ons font i objecte. Altres aspec tes de la fun ció d’enllaç
amb els usu a
ris inclo
uen les con sultes sobre dis
seny d’aplicaci
ons, la inter preta
ció
amb els usu a
ris inclouen les con sul
tes sobre disseny d’aplica
ci
ons, la inter
pre
tació
de la documen tació tèc
nica, l’ajuda en la loca
lit
zació i reso
lu
ció de proble
mes, i
altres ser
veis profes o
sinals similars rela o
cinats amb el sis tema.
Els requisits dels usu aris es van modifi
cant, ja que aquests tro
ben noves for mes o
mètodes per asso lir els seus objectius. Per altra banda, la tec
no
logia de la BD es va
modi fi
cant i els fabricants de l’SGBD actu a
lit
zen els seus pro
ductes. Això implica
que totes les modi fi
caci
ons en les estructu
res o procedi
ments de BD reque rei
xen
una admi nistra
ció acu rada.
Impli
ca
ci
ons degu
des a la modi
fi
ca
ció d'esque
mes
Supervi
sar l'acom
pliment i res
pon
dre a
can
vis en els requi
sits
És res
pon sa
bi
li
tat del DBA orga nit
zar el sis
tema
de manera que s’obtin gui l’exer
cici que sigui
“millor per a l’empresa”, i fer els ajus ta
ments
apropi
ats quan can viïn els requisits.
Les sol·lici
tuds de modifi
ca
ció són ine vi
tables una vegada que el sis tema ha entrat
en operació, poden aparèi
xer sol·lici
tuds de nous requi sits o poden resultar d’una
com prensió ina
dequada d’aquests. En qual se
vol cas, s’han d’efec
tuar modi fi
caci
ons
en rela
ció amb tota la comu ni
tat de la BD, ja que l’impacte d’aques tes alteraci
ons
res
sentirà més d’una aplica
ció. En alguns casos, es poden donar modi fi
caci
ons que
presen
ten efectes nega
tius per a alguns usu a
ris, i aquests casos hauran de ser trac
tats esgri
mint com a argu ment els bene fi
cis glo
bals que seran obtin guts d’aques tes
alte
ra
ci
ons.
Una admi nistra
ció efi
caç de la BD ha d’incloure pro cedi
ments i polí ti
ques mitjan
çant les quals els usu a
ris puguin regis trar les seves necessi
tats de modi fi
ca
ci
ons, i
així la comunitat podrà ana lit
zar i dis
cu
tir els impactes d’aques tes modifi
ca
ci
ons, i
determinar llavors la posada o no en pràc tica d’aquestes alte
raci
ons.
En raó de la mida i com ple
xitat d’una BD i de les seves aplica
ci
ons, les modi fi
ca
ci
ons
poden tenir resul tats ines
perats. El DBA ha d’estar pre pa
rat per reparar la BD i reu
nir sufi
ci
ent informació per diagnos ti
car i cor
re
gir el pro
blema provocat per la falla.
Després d’un canvi la BD és més vul nera
ble a falli
des.
Docu
men
ta
ció
La respon sabi
li
tat final d’un DBA en l’admi nistra
ció de l’estruc tura d’una BD és la
docu men tació. És molt impor tant saber qui nes modi fi
caci
ons han estat efec tua
des,
com van ser fetes i quan van ser esta bler tes. Una modi fi
cació sobre l’estruc tura de la
BD pot oca o
si nar un error que no apa regui a curt termini, i una vegada que aquest
surti, sense la docu men ta
ció adequada sobre les modi fi
caci
ons fetes, el diagnòs tic
resulta
ria extre ma dament com pli
cat. En aquests casos, es faria neces sà
ria una
seqüèn cia de reexecuci
ons per inten tar detec tar el punt en con flicte, i el risc d’aquest
procedi
ment és que és pos si
ble afec
tar la infor mació con tin
guda a la BD. Per iden ti
fi
car un canvi és molt impor tant man tenir un regis tre dels for mats de prova i de les
execuci
ons de les pro ves efec a
tu des. Si s’uti
lit
zen pro cediments de prova, for mats de
proves i mèto des de regis tre estandardit
zats, el registre dels resul tats de la prova no
consumirà un temps exces siu.
con
su
mirà un temps exces
siu.
La tasca de la documen ta
ció és cada vegada més lleugera i pre
cisa quan s’utilit
zen
SGBD que inte gren eines CASE per a les tasques de dis
seny, man teni
ment i docu
men tació. Aques
tes eines CASE matei xes pro
por o
ci nen en la majo ria dels casos la
faci
li
tat de gene
rar i mante
nir de manera automàtica el dic o
cinari de dades.
En els casos de cai
gu des del sis
tema es pre senta una situa
ció semblant: les còpies de
segure
tat són requeri
des i s’ha de veri
fi
car l’estruc
tura, for
mat i escala per inte
grar
los en l’ope
ra
ció del sis
tema.
4.1.2. Admi
nis
tra
ció de l'acti
vi
tat de les dades
Encara que el DBA pro tegeix les dades, no les processa. El DBA no és usu ari del sis
tema; en con se
qüència, no admi nis
tra valors de dades, sinó que admi nis
tra l’acti
vi
tat de les dades. Atès que la BD és un recurs com par tit, el DBA ha de pro por o
cinar
estàndards, guies d’acció, pro cedi
ments de con trol i la docu menta
ció neces sà
ria per
garan a
tir que els usuris tre
ballen de manera coo pe
ra tiva i com
plementària en pro
cessar dades a la BD.
S’ha de pro curar sempre que els estàn
dards que s’han d’aplicar bene
fi
ciïn també els
usua
ris, pri
vi
le
gi
ant sempre l’opti
mit
za
ció en l’ope
ra
ció de l’SGBD i l’afec
ció de les
polí
ti
ques de l’empresa.
Una admi nis
tració de BD efec tiva ha de dis
posar sem
pre d’aquest tipus d’estàn
dards; entre les fun ci
ons del DBA es troba la de revi ò
sarho peridica
ment per deter
minarne l’ope ra
ti
vitat, i si escau ajus
tarlos, ampliarlos o can
cel·larlos. És també
la seva res
pon sabi
li
tat que aquests es com plei
xin.
Quan es definei
xen estàn
dards sobre l’estructura de la BD, aquests s’han de regis
trar
en una sec
ció del dic o
ci a
nari de dades a la qual tots aquells usuris rela o
cinats amb
aquest tipus de pro
cés poden accedir.
Un d’aquests con flic
tes és el de l’actualit
za
ció per duda: es dóna quan el tre ball d’un
usuari queda sobre es
crit pel d’un segon usu ari. El DBA queda res ponsa
bilit
zat
d’identi
ficar la possi
ble ocur rència d’aquests pro ble
mes, i també de crear nor mes i
proce
diments per impe dirlos. S’obtin dran aquest tipus de garan ties quan l’SGBD
sigui capaç d’imple men tar les restric
ci
ons apli cables a l’accés con cur
rent, i aquest
sigui utilit
zat adequa dament per pro grama dors i usu a
ris, per evi
tar el que hem
esmen tat ante ri
or
ment. Per això es fa indis pen sa
ble ajus tarse als estàn
dards cor
res
ponents al segui ment d’ins truc tius i documen tar mit jan
çant manu als totes
aquells regles esta blertes per als diver sos pro cessaments i pro cediments que es duen
a terme.
Con
ces
sió de l'auto
rit
za
ció per a l'accés a
dades
La concessió de diferents tipus d’auto
rit
za
ció per
met a l’admi nis
trador de la base de dades regu lar
a quines parts de la base de dades podran acce dir
els diver
sos usuaris.
Entre les alter
na
ti
ves més uti
lit
za
des pel DBA per inten
tar resol
dre o mini
mit
zar
aquest problema es troben les següents:
Res
trin
gir l’accés als pro
ce
di a
ments per a certs usuris.
Res
trin a
gir l’accés a les dades per a certs usuris, pro
ce
di
ments o dades.
Evi
tar la coin
ci
dèn
cia d’hora a
ris per a usuris que com
par
tei
xen les matei
xes
dades.
Les tècniques de recu
pe
ra
ció són una altra fun
ció essen
cial del DBA en admi
nis
trar
l’acti
vi
tat de dades.
Desta
quen per la seva impor tància en el procés de recu pe
ració i al seu torn en l’aten
ció que pres
ten a altres sec
tors de l’orga nit
za
ció: els dis
posi
tius de comu ni
ca
ció
remota, els sis
te
mes d’interconnexió i altres accesso
ris d’ús com partit.
El DBA és el responsable de la publi
cació i man te
ni
ment de la
documentació en rela
ció amb l’activi
tat de les dades, inclo enthi els
estàndards de la BD, els drets de recu peració i d’accés a la BD, els
estàndards per a la recupera
ció de cai
gudes i el com pli
ment de les
polí
ti
ques establer
tes.
Els productes SGBD més popu lars que es tro
ben en el mer cat pro por o
cinen eines
per ajudar el DBA en l’administra
ció de les dades i la seva acti vi
tat. Alguns sis
te
mes
regis
tren auto màti
ca
ment els noms dels usu a
ris i de les apli
ca ci
ons a les quals tenen
accés i també altres objec
tes de la BD. Incor poren també uti li
tats que permetin defi
nir en el dic o
cinari de dades les restric
ci
ons perquè deter mina des aplica
ci
ons o
mòduls d’aques tes només tinguin accés a seg ments espe cí
fics de la BD.
4.1.3. Admi
nis
tra
ció de l'SGBD
A més d’admi nistrar l’activi
tat de dades i l’estructura de la BD, el DBA ha d’admi nis
trar l’SGBD mateix. Haurà de com pi
lar i analit
zar estadís
ti
ques rela ti
ves al ren
di
ment del sis
tema i iden ti
fi
car àrees poten ci
als del pro blema. Atès que la BD està ser
vint molts grups d’usu a
ris, el DBA ha d’inves ti
gar totes les queixes sobre el temps de
res
posta del sis
tema, la pre ci
sió de les dades i la facili
tat d’ús. Si es reque rei
xen can
vis el DBA se’ls ha de pla nejar i posarlos en pràc tica.
El DBA haurà de vigi ò
lar peridi
ca
ment i con tí
nua
ment les acti vi a
tats dels usuris a la
BD. Els productes SGBD inclo uen tecnologies que reu neixen i publiquen estadís
ti
ques. Aquests infor mes poden indi car quins van ser els usu a
ris actius, quins arxius i
quins elements de dades han estat uti lit
zats, i fins i tot el mètode d’accés que s’ha
apli
cat. Poden cap tu
rar i repor
tar les taxes d’error i els tipus d’errors. El DBA ana lit
zarà aquestes dades per deter minar si cal una modi fi
ca
ció en el disseny de la BD per
ges o
tinarne el ren di
ment o per facili
tar les tasques dels usu a
ris; en aquest cas, el
DBA la durà a terme.
Casos com l’addició de noves claus o l’eli
mina
ció,
noves rela
ci a
ons entre les dades i altres situci
ons
típi
ques han de ser analit
za
des per determi
nar el
tipus de modifi
ca
ció escaient.
El DBA haurà d’ana lit
zar les esta
dís
ti
ques de temps d’exe
cució sobre l’acti
vi
tat de la
BD i el seu rendiment. Quan s’iden ti
fi
qui un pro
blema de rendi
ment, ja sigui mit
jan
çant una queixa o un informe, el DBA ha de deter mi
nar si resulta apropi
ada una
modifi
cació en l’estruc tura de la BD o en el sis
tema.
Quan el fabri cant de l’SGBD anun ciï una nova ver sió del producte, s’ha de fer una
anà lisi de les carac te
rís
ti
ques que incor pora i ana lit
zarles segons les neces si
tats de
la comu ni
tat d’usu a
ris. Si es decideix l’adqui si
ció del pro a
ducte, els usu ris n’han de
ser noti fi
cats, i també capa ci
tats per utilit
zarlo. El DBA haurà d’admi nistrar i con
trolar la migra ció, tant de les estruc tures, com de les dades i les apli ca
ci
ons.
El pro
gramari de suport i altres carac
terís
ti
ques de maqui nari poden implicar també
modifi
ca
ci
ons de les quals el DBA és res ponsa
ble oca o
si nal
ment; aquestes modi fi
ca
ci
ons tenen com a con se
qüèn cia can
vis en la confi
gu
ració o en alguns parà
me tres
d’ope
ració de l’SGBD.
4.1.4. Asse
gu
rar la fia
bi
li
tat de la base de dades
Quan una empresa es deci deix a utilit
zar un sis
tema de base de dades, es torna
depen dent en grau màxim del fun o
ci nament cor recte d’aquest sis tema. En el cas que
pateixi un dany qual se
vol porció de la base de dades per causa d’un error humà o
una fallida en l’equip o en el sistema que li dóna suport, és essen cial poder repa rar
les dades impli ca
des amb un mínim de retard i afec tant el menys pos si
ble la resta
del sistema. En teoria, per exem ple la dispo
nibi
li
tat de les dades no danya des no
s’hau ria de veure afec
tada. El DBA ha de defi nir i posar en pràc tica un pla de recu
peració adequat que inclogui, per exem ple una des càr
rega o bui datge periòdic de la
base de dades en un medi d’emma gat ze
matge de suport, i pro cedi
ments per car re
gar
una altra vegada la base de dades a par tir del buidatge més recent quan sigui neces
sari.
4.2. Còpies de segu
re
tat i recu
pe
ra
ció de dades
Les coses es tren
quen, és un fet. Quan tot és nou i ho aca bem d’instal·lar tot rutlla
segons el que està esta
blert, però amb el temps es va afe gint nou programari al sis
tema, noves aplica
ci
ons, nou maqui nari, etc. Una de les fei
nes més impor tants dels
DBA és reaccio
nar davant els possi
bles errors que es produei
xin en el nos tre sis
tema. Aquests es poden clas si
fi
car en tres grans grups:
4.2.1. Còpies de segu
re
tat
És feina del DBA establir una pla
ni
fi
ca
ció per tal de fer les còpies de segu
re
tat de les
dades adequades en el moment ade quat.
Docu
men
ta
ció de la polí
tica de segu
re
tat
S’ha de man te
nir a cada moment una docu men
ta
ció de la política de còpies de segu re
tat i de
quina manera està tot pla ni
fi
cat (tipus de còpies,
o
peri di
ci
tat, contin
guts).
Per saber amb quina fre qüèn
cia hem de fer una còpia de desament de dades ens
fixa
rem amb quant de temps és neces sari per tal de res
tau
rarles, i per fer això ens
fixa
rem en els fac
tors següents:
El nom
bre de regis
tres que s’han de res
tau
rar.
El temps que es triga a mun
tar i des
mun
tar les cin
tes per
ti
nents.
El temps que es triga a pro
ces
sar els can
vis dels regis
tres una vegada han estat
res
tau
rats.
A més de fer això hem de tenir clar quan hem de fer les còpies de segure
tat i en
quina quanti
tat. Tot seguit teniu unes pos
si
bles i més que reco
ma
nables pau tes a
seguir en aquest procés:
Fer, com a mínim, dues còpies per evi
tar les pos
si
bles erra
des del medi on
s’emmagatze
men les còpies.
Fer còpies locals i en la mesura que es pugui ferles en medis fora del ser
vi
dor
(altres ser
vi
dors, altres medis).
Con ser
var dues ron
des de còpies sempre. És a dir, si fem una còpia inte
gral del
sis
tema cada dilluns, mante
nir les còpies dels dos dilluns ante
ri
ors.
Ens hem d’asse gurar d’incloure el catàleg del sis
tema, ja que si ha can
viat el
DDL (data defi ni
tion language, llen guatge de defini
ció de dades) tin
dríem
error fins i tot havent res tau
rat el sis
tema.
Com
pro
var, una vegada aca
bat el pro
cés de desa
ment, que la còpia és cor
recta.
Còpies de segu
re
tat inte
grals i incre
men
tals
Lògi
ca
ment, les còpies incre
men
tals ocu
pen menys espai físic i tar
den menys a fer
se.
se.
Exem
ple de rea
lit
za
ció d'una còpia de segu
re
tat
Supo sem que els dilluns fem una còpia inte
gral, i els dimarts i dime cres en fem
d’incremen
tals. Si per qual
sevol causa hem de restaurar el sis
tema el dijous,
hauríem de seguir els passos següents:
Res
tau
rar la còpia inte
gral del dilluns.
Res
tau
rar la còpia incre
men
tal del dimarts.
Res
tau
rar la còpia incre
men
tal del dime
cres.
Hem de fer una valo ració de quin és el millor tipus de còpia de segure
tat que podem
uti
lit
zar a cada moment o sis tema ges tor. Per tant, és impres
cin
di
ble que, com a
DBA, sapi guem quina quan ti
tat de regis
tres hem de desar i aproxi
ma da
ment quant
de temps es triga a fer una còpia inte gral i incre
men tal.
Hem de tenir pre sent que el temps que ens estalviem fent còpies de segure
tat incre
men tal només és útil si el nom
bre de regis
tres que can
vien entre còpies de segu re
tat
és reduït.
Altres apro
xi
ma
ci
ons a les còpies de segu
re
tat
És acon
se
lla
ble fer còpies de segure
tat uti
lit
zant les eines que proporci
ona el mateix
SGBD. Tot i així, hi ha diver
ses for
mes de fer còpies de segu re
tat alter
na
ti
ves, que
només s’han d’utilit
zar en moments molt con crets.
Fins ara hem estat parlant de còpies de tot el sis
tema, però de vega
des aquest tipus
de còpies de segu
re
tat més que aju dar en la restau
ra
ció ens poden donar pro
blemes
segons les dades que s’hagin perdut.
Veurem ara una forma de fer una còpia de segu re
tat lògica (ens fixa
rem en les dades
emma gatze
mades, no tant en el tipus de dades). La ins ció EXPORT o UNLOAD,
truc
segons l’SGBD, ens per metrà fer un bol
cat de totes les dades indicades i així tenir
una còpia lògica de les dades. Veiem en quins casos ens pot arri bar a ser útil:
Res
tauració d’una fila o objecte en espe cial. Si per error algú esborra
només unes quan tes files o dades d’una taula, pot arribar a ser molt compli
cat
només res
taurar aquesta part des d’una còpia de segu re
tat física.
Actualit
zació de l’SGBD. Si ens tro bem davant una actu a
lit
za
ció del sis
tema
ges
tor i no volem con ver
tir totes les estruc
tu
res, també pot ser útil fer una
intro
ducció massiva de les dades des d’una còpia lògica.
Migra ció de dades entre SGBD hete rogenis. Si volem trans por
tar dades
d’un sis
tema ges
tor a un altre que dis
posa d’estruc
tures físi
ques ben dife
ren a
ci
des, també opta
rem per res tau
rar una còpia lògica al sis
tema desti
na
tari de les
dades.
Movi
ment de dades. Per tras lladar les dades entre apli
ca
ci
ons o ferho per
exem
ple en fit
xers de text, seria l’única manera d’acon se
guirho.
Com que la còpia de segu
re
tat lògica es fa amb el sis
tema en fun
cio
na
ment, l’únic
pro
blema de ren
diment pot venir donat per l’accés concur
rent a les dades.
4.2.2. Res
tau
ra
ció de dades
La res
tauració de dades no és una tasca sen zi
lla. És més que dur a terme una res tau
ra
ció d’una imatge prè a
viment feta. Hem de trac tar de dei
xar el sis
tema tal com
requereixi l’apli
cació en qües
tió, incor
po
ranthi tots els possi
bles can vis que hagin
suc
ceït a les bases de dades des del moment de la còpia de segu retat fins al moment
exacte que nosal tres volem.
Estra
tè
gies de recu
pe
ra
ció de dades
El pri
mer que hem de fer davant una fallada del sis tema és tenir ben pre sent de
quins recur
sos dis
posem per fer la restau
ra
ció, és a dir, de qui
nes còpies disposem i
on es tro
ben. El pas següent és desco
brir exacta
ment què ha pro duït la fallada del
sis
tema. Hi ha una sèrie de pre
gun tes que ens poden aju dar a enfo
car els nostres
esfor
ços:
Com s’ha apa
gat el sis
tema ges
tor? De manera for
tu
ïta o per la nos
tra ordre?
Té a veure amb el sis
tema ope
ra
tiu?
S’ha rei
ni
ciat el ser
vi
dor?
Hi ha errors en els fit
xers de LOG del sis
tema ope
ra
tiu o del ser
vi
dor de bases
de dades?
Quina és la impor
tàn
cia de les dades que s’han per
dut?
S’ha inten
tat algun tipus de res
tau
ra
ció? Si és així, en quin punt ens tro
bem de
la res
tau
ra
ció?
Què es neces
sita res
tau
rar? La base de dades, una taula o un altre ele
ment?
Tenim còpies lògi
ques recents?
Es pot acce
dir als objec
tes de la base de dades?
Una vegada dis po
sem de les res
pos
tes, esta
rem pre pa
rats per poder iniciar la res
tau
ra
ció de les dades per
du
des. Els passos que cal seguir per ferla són els següents:
Es necessita una còpia inte
gral del sis
tema per comen çar la res
taura
ció, ja que serà
el punt de partida. Una vegada restaurada aquesta imatge, hem d’uti lit
zar els fit
xers
LOG de movi ments per deixar el sis
tema en el mateix estat que estava abans de la
fallada. Si per qual
se
vol motiu no trobem una còpia integral actual, hem de recór rer
a una còpia antiga i anar res
taurant també les còpies incremen tals succes
sives fins a
arri
bar al punt on podríem utilit
zar els fit
xers LOG de moviments.
Un altre tipus de res tau
ra
ció és aquell en què por tem les bases de dades a un estat
deter minat en el temps. Per exem ple, si sabem que el nos tre sistema va fallar a
les 13.43 del migdia, intenta
rem por tar el nostre sistema fins a com estava a les
13.42, sigui l’hora que sigui. Aquest tipus de res tau ració se sol fer només per a una
part del sis
tema ges tor. General
ment no afecta tot el con junt de dades del sis tema.
Hem de tenir clar com actu a
rem amb les transac ci
ons que s’han efec tuat al sis
tema
des de la fallada fins al moment de fer la res tauració. Es tracta, doncs, de fer una
restau
ra
ció del sis
tema aplicant els canvis correctes i rebut jant els can vis que no
interessen i que han pro duït aquest error del sis tema.
Hi ha dues maneres de fer aquest tipus de res
tau
ra
ció, i l’aproxi
ma
ció per la qual
optem vindrà donada pels meca nismes de què dis
posi el nos tre SGBD i la quanti
tat
de dades que s’han de res
taurar. Podrem optar, doncs, per:
Restau
rar una còpia i apli
car els can
vis que ens interes
sin dels fit
xers LOG fins
a arri
bar al punt que vul
guem.
No res
tau
rar cap còpia. Desfa
rem els can
vis erro
nis fixantnos en els fit
xers
LOG fins a dei
xar el sis
tema en un punt consis
tent.
Si podem optar per totes dues solu
ci
ons, esco
lli
rem sem
pre la que faci que el sis
tema esti
gui atu
rat menys temps.
Per fina
lit
zar la tipi
fi
ca
ció de les possi
bles res
tau
ra
ci
ons que ens podem tro bar, ens
queda per veure la res tauració de transac ci
ons. Les transac ci
ons vénen defi ni
des per les aplica
ci
ons dels usu a
ris. Tenint en compte aquest fet, nosal tres, com a
DBA, no podrem fer gaire cosa, ja que serà neces sà
ria l’ajuda d’un programari
extern per repa rar els possi
bles errors que s’hi hagin pro duït. Aquests errors sem pre
estan rela o
cinats amb la pèr dua de certa infor ma
ció impor tant.
Diem que cal una apli ca
ció externa a l’SGBD per fer la repara
ció perquè només
l’usu
ari sap què esperava fer en la transac
ció i com ha quedat la infor
mació de la
transacció. Haurà de tor
nar enrere des fent totes les modi
fi
ca
ci
ons que ha fet i tornar
a inten
tar l’ope
ra
ció una altra vegada. Per tirar enrere “sobre els seus propis pas
sos”, ho podrà fer amb les ordres REDO i UNDO.
Altres alter
na
ti
ves a les còpies de segu
re
tat i les recu
pe
ra
ci
ons
Hi ha altres mane res de prote
gir l’SGBD a part de les còpies de segu
re
tat. Vegemne
unes possi
bles alter
nati
ves que, per des
comptat, no ens exi
meixen en cap cas de
tenir còpies de segure
tat:
RAID
nim de redun
RAID és l’acrò dant array of inex
pen sive disks ; en català, con
junt redundant de
dis
cos barats. Aquest sis tema ofereix segu
re
tat
tot fent còpies simul tà
nies de la mateixa infor
ma
ció en diferents discos.
CRC
CRC és l’acrò nim de control de redundàn cia
cíclica. El CRC és un meca nisme que per met
detectar errors en sis
te
mes digitals mit
jançant
certes codi
fi
ca
ci
ons.
Repli ca
ció. Es tracta de man te
nir unes còpies redun dants exac
tes de les bases
de dades en discos i suports dife
rents. Com més còpies redun dants tin
guem
més segurs estarem, davant pos si
bles falla
des del sis
tema, que podrem res tau
rarlo en poc temps.
Dis cos mirall. Es tracta d’acon se
guir en el mercat el maquinari que proporci
ona aquest tipus de tec nolo
gia, en què es man te
nen diversos dis
cos amb la
mateixa infor ma ció repli
cada de mane res dife
rents (RAID) i amb una certa
segu re
tat de dades incorpo rada (CRC). Aquest tipus de segu re
tat ens estal a
viria
la recupera
ció necessà
ria en tenir una fallada d’algun dels discos.
4.2.3. Còpia de segu
re
tat en el Post
greSQL
Els fit
xers en què el Post
greSQL emma gatzema la BD són fit
xers físics en disc des
del punt de vista del sis
tema opera
tiu, i per això a mesura que s’incorpora informa
ció, aquests van aug mentant de mida.
Junta
ment amb la infor mació útil que es desa en els fit
xers de la BD, s’emma gat
ze
men dades rela ti
ves a l’ordre d’aquesta, al tipus de dades, i altres necessà
ries per a
l’accés i el fun o
cina
ment cor recte de l’SGBD. Això fa que de manera esti mada, els
fit
xers esmen tats ocupin almenys el doble d’espai que les dades que emma gat
ze
men.
Les còpies de segu
re
tat “totals” es poden fer d’almenys tres mane
res:
Si fem una cana lit
za
ció a un fit
xer, aquest després es podrà tor nar a uti
lit
zar per fer
la càr
rega de dades. Si tenim en fun o
cinament dues bases de dades, també es
podran utilit
zar cana lit
za
cions pipeout i pipein, per fer un tras
pàs directe de la
infor
mació entre aques tes. Aquesta última opció és espe ci
al
ment útil en fer migra ci
ons de versió, o en haver de subs ti
tuir el maqui
nari, ja que els SGBD es poden estar
execu
tant en dife rents ordi na
dors.
Exem
ple de backup
En pri
mer lloc loca
lit
za
rem l’exe cuta
ble pg_ dump o pg_ dum
pall (en sis
te
mes
Windows) en el directori ../bin d’allà on és ins
tal·lat l’SGBD.
Tot seguit es pot uti
lit
zar la ins
truc
ció amb els parà
me
tres:
Les clàu
sules host i port són opci o
nals si s’exe
cuta des del mateix ordi
na
dor on hi
ha la base de dades i si el port de comuni
cacions és l’estàn
dard.
En exe
cu
tar l’abo
ca
ment, ens dema
narà la con
tra
se ari post
nya de l’usu gres.
xer backup.
El fit txt con tin
drà l’abo
cament de les dades, i totes les ins
truc ci
ons
neces sà
ries per refer les taules, pro
cedi
ments emma gat
zemats, usu a
ris i tots aquells
parà metres necessaris per acon se
guir que es pugui recons truir la BD original, en
res
tau rar aquest fit
xer sobre una BD buida.
A grans trets, l’ordre i con
tin xer backup.
gut del fit txt és (per blocs):
-- Name: SCHEMA public; Type: COMMENT; [nomUsuari] Comentaris dels SCHEMA existents.
-- Name: [nomFuncio](); Type: FUNCTION; Schema: public; Owner: [nomUsuari] Codi plpgsql
-- Data for Name: test; Type: TABLE DATA; Schema: public; Owner: [nomUsuari] Instruccion
-- Data for Name: [nomTaula]; Type: TABLE DATA; Schema: public; Owner: [nomUsuari] Instr
-- Name: [nomResticcio]; Type: (PK/FK) CONSTRAINT; Schema: public; Owner: [nomUsuari]; T
-- Name: public; Type: ACL; Schema: -; Owner: [nomUsuari] Assignació de privilegis d’acc
L’avantatge d’aquest mètode de còpia de segu re
tat és que es pot edi
tar el fit
xer de
còpia per cer car informació concreta. En aquest tro ba
rem tant les dades con tin
gu
des en les tau les, com les sentèn
cies de crea
ció d’aquestes (amb les claus pri màries i
fora
nes), i fins i tot el codi plpgsql de les funci
ons i dis
pa
radors.
Exem
ple de res
tau
ra
ció
El con
tin
gut d’una còpia de segu
re
tat es pot res
tau
rar total
ment o par
ci
al
ment.
En el cas de voler una res
taura
ció parcial, hau
rem d’editar el fit
xer on s’ha emma
gat
ze
mat la còpia, i tras
pas
sar el que volem edi tar a un nou fitxer. Uti
lit
za
rem
aquest últim per fer una restau
ració parcial.
La impor
ta
ció es farà uti
lit
zant una cano
nada del sis
tema ope
ra
tiu mateix:
Per res
tau
rar tot el con
tin
gut d’una BD, primer l’esbor
raríem per asse
gu
rar no que
des
sin dades, des a
prés la creríem, per fina
lit
zar amb la res
tau
ra
ció prò a
piment dita.
Igual que en l’exemple ante
rior, uti
lit
za
rem una cano
nada del sis
tema ope
ra
tiu per
fer la impor
ta
ció de les dades:
dropdb NomBaseDades
4.3. Man
te
ni
ment ruti
nari de la base de dades
Tal com s’ha exposat al llarg del pre
sent mòdul, l’SGBD Post greSQL gairebé no
requereix mante
ni
ment. No obs tant això, per asse
gu
rarne el bon ren
di
ment, cal
drà
exe
cu ò
tar peridi
ca
ment els pro ces
sos següents:
1. Eli
mi
na
ció dels regis
tres mar
cats com a obso
lets (gene
rats a causa de l’ús de
l’MVCC).
2. Rege
ne
ra
ció dels clús
ters cre
ats.
3. Rege
ne
ra
ció de la infor
ma
ció esta
dís
tica de les tau
les.
Així, cal
drà auto
ma
tit
zar res
pec
ti
va
ment l’exe
cu
ció de la seqüèn
cia d’ordres
següents:
En què plsql és la ins truc
ció que permet exe cutar les ordres, nom_db és la base de
dades, postgres és el nom d’usu ari que ha d’exe cutar les ins
trucci
ons que hi ha al
xer sql.
fit txt, con
si
de
rant que en l’inte xer password.
rior del fit txt es troba la con
tra
senya d’aquest usu ari.
4.3.1. Vacuum
Quan s’esborra una fila d’una taula, per qües ti
ons de ren di
ment, la fila no s’esborra
real
ment del fitxer que conté la taula, sinó que senzi
lla
ment es desin dexa dels índexs
que l’afec
tin i es marca com a esbor rada. Les noves inser ci
ons tampoc no faran ser
vir aquest espai, sinó que s’afe
gi
ran sem pre al final del fit
xer.
Això fa que les ope ra
ci
ons d’inser
ció i esbor ra
ment siguin molt més ràpi des del que
ho serien si hagues sin d’anar movent dades d’aquí cap allà per ajus tar la mida de
cada fila amb la següent. Però també implica que si tenim un volum impor tant
d’ope
raci
ons d’esbor ra
ment, l’espai utilit
zat al disc creix molt més del real
ment
necessari per a les dades. A més, la disper sió més gran de les dades dins la taula
tampoc no afavoreix el temps de resposta en les con sul
tes.
El procés que fa la neteja de la base de dades en Post greSQL es diu VACUUM. L’ope
ció VACUUM com
ra pacta els fit
xers de les tau
les i eli
minen defi
ni
ti
vament les file
res
esborra
des i manté, lògicament, la cor re
la
ció dels índexs. La neces si
tat de dur a
terme pro sos de VACUUM peri
ces òdi
ca
ment es jus ti
fica pels motius següents:
Recu
pe
rar l’espai de disc per
dut en esbor
ra a
ments i actulit
za
ci
ons de dades.
a
Actulit
zar les esta
dís
ti
ques de dades uti
lit
za
des pel pla
ni
fi
ca
dor de con
sul
tes
SQL.
Prote
girse davant de la pèr
dua de dades per reu
ti
lit
za
ció d’iden
ti
fi
ca
dors de
transacció.
En cas que hi hagi algun pro
blema o acció addi o
cinal per fer, el sis
tema ens ho indi
carà.
4.3.2. Clus
ter
Quan es fa l’ope ració CLUSTER sobre una taula aquesta es reor dena físi
ca
ment
segons la infor ma ció d’un índex espe
ci
fi
cat defi
nit sobre aquesta taula. Si la taula
a
s’actu litza posteri
or
ment, de mica en mica aquesta orde na
ció es va per
dent, és a
dir, no s’intenten desar files noves o actua
lit
za
des d’acord amb el seu ordre de
l’índex. Per tant, peri ò
di
ca drà emprar l’ordre CLUSTER de nou per
ment cal què es
faci aquesta rees tructu
ra
ció.
La ins ció CLUSTER sense cap parà
truc me tre reor
ganitza totes les tau
les prè a
viment
agrupades. Quan una taula s’agrupa, aquesta adqui reix blo
queig d’accés exclusiu.
Això evita que es faci qual
se
vol opera
ció de modi fi
ca
ció sobre la taula fins que l’acció
de la ins ció CLUSTER hagi fina
truc lit
zat.
4.3.3. Analyze
A l’hora de pla
ni
fi
car una con
sulta, el Post
greSQL té en compte molts fac tors, com
ara els índexs de què dis
posa, la mida de la taula, i altres dades esta
dís
ti
ques sobre
les dades emma gatze
mades a la taula.
Obtenir tota aquesta infor
mació a cada con
sulta cos
ta
ria molt més que l’avan
tatge
que ens reporta, i per això no es fa auto
mà
ti
ca
ment, sinó que es cal
cula un pri
mer
cop quan creem la taula i prou.
A mesura que es van fent inser ci
ons a la taula o es van modifi
cant les dades, aquesta
infor
mació esdevé desactua
lit
zada i pot fer que les deci
si
ons que pren gui el pla
ni
fi
ca
dor a l’hora d’ava
luar les consul
tes siguin més dolen tes.
Executant la sen
tència ANALYZE, fem que el Post greSQL recal culi tota aquesta
infor
ma ció esta
dís
tica, i acon
se
guim així que l’ana
lit
za
dor faci molt millor la seva
feina. Amb una base de dades petita, pot ser que la dife rencia no sigui gaire grossa,
però quan es comen cen a tenir tau
les d’uns pocs mili
ons de registres, la dife
rèn
cia
pot estar entre diver sos segons i unes poques centè
si
mes d’exe cu
ció per a la mateixa
consulta.
4.3.4. Rein
de
xa
ció
La rein
dexa
ció com
pleta de la base de dades no és una tasca gaire habitual, però pot
millo
rar de manera substan
cial la velo
ci
tat de les con
sul
tes com
ple
xes en taules amb
molta acti
vi
tat.
La sentència EXPLAIN ens mos tra, des
glos
sada, la manera com el PostgreSQL pla
ni
fi
ca
ria una consulta i el cost aproxi
mat que el plani
fi
ca
dor pre
veu que tin
drà.
Això, per una banda, ens ser veix per compa
rar i ava
luar les dife
rents pos
si
bi
li
tats
que tenim a l’hora d’imple men tar una consulta per obte
nir una informació determi
nada i així poder triar l’opció que resulti més efi
ci
ent.
Per altra banda, si tenim una con sulta molt pesada que volem optimit
zar, com veu
rem més enda vant, ens donarà informació molt útil per deter
mi
nar qui
nes són les
parts de la con
sulta que li resul
ten més pesades i que més ens convé esfor
çarnos a
millo
rar.
Així doncs, la sen cia EXPLAIN exe
tèn cu
tada sobre una con
sulta ens mos
tra el
següent:
Aquesta ins
trucció mostra el pla d’exe
cu
ció que el pla
ni
fi
ca
dor del Post
greSQL
genera per a la con
sulta donada.
El pla d’execució mostra la manera com seran esca ne
ja
des les tau
les refe
ren a
ci
des, ja sigui escaneig seqüen cial pla, esca
neig per índex, etc.
En el cas que es refe
renciïn diver
ses taules, els algo
rit
mes d’unió que seran uti
lit
zats per agru
par els tuples requerits de cada taula d’entrada.
L’opció VERBOSE emet la repre sen
tació interna com pleta de l’arbre del pla, en
comptes d’un resum (i també l’envia a l’arxiu log del postmas ter). Normal ment
aquesta opció és úni
ca
ment útil per a la cor
recció d’errors (depu ració) del Post
greSQL.
Podem veure els valors de sor
tida següents:
Cost inici esti
mat. Temps ini
cial que triga a retor
nar el pri
mer tuple.
Cost total estimat. Temps total que tri
guen a retornar tots els tuples: per exem
ple, si es limita el nom
bre de tuples per retor
nar amb una clàu sula LIMIT, el
pla
nifi
ca
dor fa una inter
po
la
ció apropi
ada entre els dos costos finals per esti
mar quin dels plans és realment el menys cos tós.
Nombre estimat de files esca
ne
ja
des. Es com
pleix sola
ment si l’exe
cu
ció de la
con
sulta és com
pleta.
Mida esti
mada de les files de sortida. Es compleix solament si l’exe
cu
ció de la
con
sulta és com
pleta i indica la mida mitjana de les files expres
sada en bytes.
Exem
ple de pla de con
sulta sim
ple
Per mos
trar un pla de con
sulta per a una con
sulta sim
ple sobre una taula amb
una única columna de tipus int4:
Exem
ple de pla d'exe
cu
ció d'una con
sulta amb con
di
ció
Per a la mateixa taula amb un índex per acon se
guir una con ció equi
di join a la
sulta, EXPLAIN mos
con trarà un pla dife
rent:
Exem
ple de pla de con
sulta amb una fun
ció d'agre
ga
ció
Per acabar, la mateixa taula amb un índex per acon se
guir una con ció equi
di join
a la consulta; Explain mostrarà el següent per a una con
sulta que uti
litzi una
funció d’agrega
ció:
4.5. Fit
xers de regis
tre
El Post
greSQL no proporci
ona direc
ta
ment uti li
tats per fer aquesta rota
ció, però en
la majo
ria de sis
te
mes Unix s’inclo
uen uti
li
tats.
la majo
ria de sis
te
mes Unix s’inclo
uen uti
li
tats.
4.6. Ges
tió de l'espai d’emma
gat
ze
ma
ment
A dife
rència d’altres SGBD, el PostgreSQL no reserva espai per als fit xers on emma
gatzema les dades. L’agrupa
ció d’aquests fitxers formen el que s’anomena clús ter
(no s’ha de confondre amb el clúster d’agrupació de dades de les tau
les), que és
l’equi lent a les tables
va pa
ces de l’Oracle, o als dbspace de l’Infor
mix.
Pel fet que cada taula és físi
ca
ment un o més fit xers, no cal supervi
sar l’ocu
pació
d’aques tes zones (no hi ha la pos
si
bi
li
tat d’exhau
rir l’espai intern del clús
ter), ja que
els fit
xers aug
men ta
ran de mida a mesura que s’hi inse rei
xin dades.
Malgrat aquesta dife rèn
cia de con cepte amb altres SGBD, hi ha la pos si
bi
li
tat d’indi
car la ubi
ca
ció física dels fit
xers, a l’efecte d’opti
mit
zar la con
cur
rèn
cia en l’accés als
disc on s’emma gatze
men les dades.
4.7. Moni
to
ratge
En el nos tre cas, moni
to
rar sig
ni
fica vigi
lar el fun o
cina
ment d’un sis
tema, ser
vei o
acti
vi
tat. Hi ha dos tipus de moni to
ratge:
Ad hoc. Moni to
ratge especí
fic en cas de pro
ble
mes o pro
ves. S’uti
litza general
ment per investi
gar una situa
ció puntual en què inten
tem tro
bar una expli cació
a un suc
cés, canvi o pro
blema.
Pre ventiu. Detecta interrup ci
ons de ser
veis, alerta sobre possi
bles proble
mes i
crea gràfics amb ten
dèn cies i dades histò
ri
ques sobre els nostres sis
te
mes.
Aquest tipus de moni to
ratge està auto matit
zat i ens ajuda a desco
brir canvis en
els nos
tres sis
te
mes que pro voquen o poden pro vo
car pro
ble
mes en un futur
proper.