Problematyka masowego dostępu do baz danych – mity i fakty

Transkrypt

Problematyka masowego dostępu do baz danych – mity i fakty
3UREOHPDW\NDPDVRZHJRGRVW
SXGRED]GDQ\FK±
mity i fakty
Wojciech .DUZRZVNL3LRWU.RáRG]LHM
Oracle Polska
e–mail: [email protected], [email protected]
Abstrakt:GRELHLQWHUQHWRZ\FKV\VWHPyZLQIRUPDW\F]Q\FKFRUD]ZL
NV]URO
RGJU\ZDLFKVNDORZDOQRü
0DVRZ\ L QLHVNU
SRZDQ\ GRVW
S GR GDQ\FK PR*H VWZDU]Dü SRZD*QH SUREOHP\ Z\GDMQRFLRZH :EUHZ
RELHJRZ\PRSLQLRP]ZL
NV]DQLH]DVREyZV\VWHPRZ\FKQSOLF]E\SURFHVRUyZUR]PLDUXSDPL
FLLWSPR*H
QLH SU]\QRVLü VSRG]LHZDQ\FK HIHNWyZ .RQLHF]QH VWDMH VL
]UHZLGRZDQLH NRQVWUXNFML DSOLNDFML L VWUXNWXU\
ED]\ GDQ\FK 5HIHUDW PD QD FHOX REDOHQLH SRZV]HFKQLH VSRW\NDQ\FK PLWyZ GRW\F]F\FK ÄSRSUDZLDQLD
Z\GDMQRFL´SU]HFLZVWDZLDMFLPZHU\ILNRZDOQHIDNW\
1. Skalowanie to nie zawsze to samo
„,QQRüWRSRZLQQRü” Jan I. Sztaudynger
0yZLF R PLWDFK GRW\F]F\FK VNDORZDQLD V\VWHPyZ L ]DU]G]DQLD Z\GDMQRFL QDOH*\ ]DF]ü
odVSRVWU]H*HQLD *H MX* VDPR SRMPRZDQLH VNDORZDQLD V\VWHPyZ REURVáR OLF]Q\PL PLWDPL
1DMEDUG]LHMSRVSROLW\]QLFKVSURZDG]DVL
GRXIQRFLMDNDMHVWSRWU]HEQDE\]DGDü]HPLHUWHOQ
SRZDJS\WDQLHW\SXÄ%
G
PLDáDDSOLNDFM
QD1X*\WNRZQLNyZ,OXQDWRSRWU]HEDSURFHVRUyZ"´
1LHVWHW\ XG]LHOHQLH ZLDU\JRGQHM RGSRZLHG]L QD WR S\WDQLH EH] ]QDMRPRFL FKDUDNWHUX DSOLNDFML
iSODQRZDQHJR REFL*HQLD SU]HNUDF]D PR*OLZRFL ]Z\NáHJR PLHUWHOQLND =D SU]HNRQDQLX *H
PR*QD RV]DFRZDü ]DSRWU]HERZDQLH QD ]DVRE\ V\VWHPRZH Z\áF]QLH QD SRGVWDZLH OLF]E\
X*\WNRZQLNyZQDOH*\SU]HFLZVWDZLüQDVW
SXMFHIDNW\
1. 6]DFXMF REFL*HQLH V\VWHPX QDOH*\ Z]Lü SRG XZDJ
FKDUDNWHU UHDOL]RZDQ\FK ]DGD RUD]
UR]áR*HQLH]DGDQDSRV]F]HJyOQ\FKX*\WNRZQLNyZ
2. :V\VWHPDFKZNWyU\FKUyZQROHJOHZ\NRQ\ZDQHV]DGDQLDLQWHUDNW\ZQHLZVDGRZHFDáNRZLWH
REFL*HQLHV\VWHPXZVHQVLH]X*\FLD jego zasobów ZQDMZL
NV]\PVWRSQLX]DOH*\RG charakteru
L OLF]E\ XUXFKDPLDQ\FK ]DGD ZVDGRZ\FK L Z VWRVXQNRZR QLHZLHONLP VWRSQLX RG liczby
X*\WNRZQLNyZ
.ROHMQ\ PLW GRW\F]\ IRUPXáRZDQLD FHOX GR NWyUHJR VL
G*\ SU]\ SUDFDFK QDG Z\GDMQRFL
V\VWHPX 6SRW\ND VL
F]DVHP FHO VIRUPXáRZDQ\ MDNR QS XWU]\PDQLH F]DVX MDáRZHJR SURFHVRUyZ
naSR]LRPLH NLONXG]LHVL
FLX SURFHQW 7\PF]DVHP Z V\VWHPLH Z NWyU\P XUXFKRPLRQD MHVW SHZQD
OLF]ED]DGDZVDGRZ\FKEG(UDSRUWyZREHFQRüF]DVXMDáRZHJRSURFHVRUyZMHVWUDF]HMREMDZHP
QLHSRNRMF\P JG\* ]DGDQLD ]DPLDVW VL
Z\NRQ\ZDü QDMZ\UD(QLHM QD FR RF]HNXM 3RQDGWR
wV\VWHPLH Z NWyU\P SURFHVRU\ QLH Z\NRQXM F\NOL MDáRZ\FK PR*H ZFL* LVWQLHü GX*D UH]HUZD
SU]HSXVWRZRFL
.U\WHULXP GREUHM Z\GDMQRFL QLH PR*QD VIRUPXáRZDü Z\áF]QLH ]D SRPRF NDWHJRULL VWDW\VW\N
V\VWHPX RSHUDF\MQHJR F]\ VHUZHUD ED]\ GDQ\FK 1DMLVWRWQLHMV]H MHVW RVLJQL
FLH Z\PDJDQHJR
SR]LRPXREFL*HQLDZ\NRQ\ZDQ\PLRSHUDFMDPLRUD]DNFHSWRZDOQHJRF]DVXLFKUHDOL]DFML
2GSU]\E\WNXJáRZDQLHEROL"
6]HURNRUR]SRZV]HFKQLRQ\MHVWSRJOG*HUR]EXGRZDNRQILJXUDFMLVSU]
WRZHMMHVWQDMV]\EV]\P
iQDMHIHNW\ZQLHMV]\P VSRVREHP VNDORZDQLD V\VWHPX 2SLHUD VL
QD VáXV]Q\P VNGLQG
VSRVWU]H*HQLX *H PRG\ILNRZDQLH RSURJUDPRZDQLD MHVW F]\QQRFL GX*R EDUG]LHM ]áR*RQ QL*
Z\PLDQD VSU]
WX L JUR]L GRGDWNRZR XWUDW IXQNFMRQDOQRFL EG( VWDELOQRFL ]H Z]JO
GX
naPR*OLZRüZSURZDG]HQLDQRZ\FKEá
GyZZRSURJUDPRZDQLX
38
Wojciech .DUZRZVNL3LRWU.RáRG]LHM
7HJRURG]DMXSRGHMFLHMHVWVáXV]QHZSU]\SDGNXJG\ZVNLPJDUGáHPV\VWHPXMHVWU]HF]\ZLVW\
QLHGRVWDWHN]DVREyZEUDNPRF\SURFHVRUyZQLHGRVWDWHNSDPL
FLEG(QLHZ\VWDUF]DMFDZ\GDMQRü
XU]G]HZHMFLDZ\MFLD]DRSW\PDOL]DFMDDSOLNDFMLQLHSR]RVWDZLDZLHOHGR*\F]HQLD1LHQDOH*\
VL
MHGQDN VSRG]LHZDü GREUHJR VNDORZDQLD F]\ UR]ZL]DQLD SUREOHPyZ Z\GDMQRFLRZ\FK
w przypadku, gdy zapotrzebowanie na zasoby systemowe jest spowodowane przede wszystkim
SU]H] ]á RSW\PDOL]DFM
QS ]áH LQGHNVRZDQLH QLHHIHNW\ZQ\ SODQ Z\NRQDQLD ]DS\WD 64/ LWG
:]URVWSU]HSXVWRZRFLEG(VNUyFHQLHF]DVXUHDNFMLE
GSUDZGRSRGREQLHQLHZVSyáPLHUQLHQLVNLH
w stosunku do wzrostu zasobów systemowych.
=ZL
NV]HQLH Z\GDMQRFL PR*H ZFDOH QLH QDVWSLü Z SU]\SDGNX JG\ GRGDZDQLH ]DVREyZ
V\VWHPRZ\FK VWDQRZL DNW GHVSHUDFML VSRZRGRZDQ\ W\P *H WDN QDSUDZG
QLH ZLDGRPR FR MHVW
SU]\F]\Q SUREOHPyZ Z\GDMQRFLRZ\FK QS QDJá\FK L WUXGQ\FK GR Z\WáXPDF]HQLD VSRZROQLH
SUDF\ : ZL
NV]RFL WHJR URG]DMX SU]\SDGNyZ SU]\F]\Q QDOH*\ GRSDWU\ZDü VL
Z SUREOHPDFK
]ZL]DQ\FK ] NRPXQLNDFM VLHFLRZ RUD] V\QFKURQL]DFM GRVW
SX SURFHVyZ GR ZVSyáG]LHORQ\FK
]DVREyZ 3UREOHP\ V\QFKURQL]DF\MQH PRJ PLHü PLHMVFH QD SR]LRPLH ORJLF]Q\P DSOLNDFML QS
RF]HNLZDQLH QD EORNDGDFK ]ZL]DQ\FK ] PRG\ILNDFM ZLHUV]\ Z WDEHODFK RUD] ZHZQ
WU]Q\P
VHUZHUD ED]\ GDQ\FK 2UDFOH EG( V\VWHPX RSHUDF\MQHJR : VSHF\ILF]Q\FK SU]\SDGNDFK GRGDQLH
]DVREyZPR*HZU
F]SRJRUV]\üZ\GDMQRüV\VWHPX
6SLHV]VL
SRZROL"
3RZV]HFKQLH VL
XZD*D L* ]ZL
NV]HQLH V]\ENRFL SURFHVRUyZ SURZDG]L ]DZV]H GR VNUyFHQLD
F]DVXUHDNFML3RJOGWDNLPR*HE\üFDáNRZLFLHVáXV]Q\ZSU]\SDGNXV\VWHPXZNWyU\PZ\VW
SXMH
W\ONR MHGHQ SURFHV 7\PF]DVHP ]DOH*QLH RG DOJRU\WPX SURJUDPX V]HUHJXMFHJR RUD] FKDUDNWHUX
]DGD PR*H Z SHZQ\FK ZDUXQNDFK GRMü GR Z\GáX*HQLD F]DVX UHDNFML SHZQ\FK SURFHVyZ
wSU]\SDGNX ]ZL
NV]HQLD SU
GNRFL SURFHVRUyZ -HVW WR SUDZGRSRGREQH Z V\VWHPDFK Z NWórych
UyZQROHJOH XUXFKDPLDQH V ]DGDQLD LQWHUDNW\ZQH RUD] ]DGDQLD ZVDGRZH EG( GX*H UDSRUW\ ±
]ZL
NV]HQLH PRF\ SURFHVRUyZ PR*H GRSURZDG]Lü GR Z\GáX*HQLD F]DVX REVáXJL SURFHVyZ
LQWHUDNW\ZQ\FK :\MDQLHQLH WHJR IHQRPHQX QD SRGVWDZLH WHRULL NROHMNRZDQLD PR*QD ]QDOH(ü QS
w pracy [2].
3RGREQ\ HIHNW PR*H E\ü Z\ZRáDQ\ WDN*H SU]H] PHFKDQL]P ]DU]G]DQLD SDPL
FL ZLUWXDOQ
(Virtual Memory Manager) w systemach operacyjnych, w których mechanizm ten jest zintegrowany
z dynamicznym buforem plikowym. W przypadku pewnego QLHGRERUX SDPL
FL XUXFKRPLHQLH
]DGDZVDGRZ\FKLQWHQV\ZQLHNRU]\VWDMF\FK]V\VWHPXSOLNyZPR*HVSRZRGRZDüÄSRGNUDGDQLH´
VWURQSURFHVRPLQWHUDNW\ZQ\P]UHJXá\RF]HNXMF\PQD]GDU]HQLD,QWHQV\ZQH]DSRWU]HERZDQLHQD
SDPL
ü SRWU]HEQ QD EXIRURZDQLH RSHUDFML ZHMFLDZ\MFLD SURZDG]L GR ]ZROQLHQLD RVWDWQLR QLH
X*\ZDQ\FKVWURQSDPL
FLDOJRU\WP/58:]URVWV]\ENRFLSURFHVRUDR]QDF]DZWDNLPSU]\SDGNX
]ZL
NV]HQLH DNW\ZQRFL ]DGD ZVDGRZ\FK ]ZL
NV]HQLH ]DSRWU]HERZDQLD QD ZROQ SDPL
ü L W\P
VDP\P SUDZGRSRGRELHVWZD Z\GáX*HQLD UHDNFML SURFHVyZ LQWHUDNW\ZQ\FK Z ]ZL]NX ]H
]ZL
NV]RQ\PVWURQLFRZDQLHPQDOH*F\FKGRQLFKREV]DUyZ
3U]\NáDG ] PHFKDQL]PHP ]DU]G]DQLD SDPL
FL ZLUWXDOQ VWDQRZL LOXVWUDFM
GREU]H ]QDQ\FK
zasad:
1. 1DOH*\GRGDZDüWH]DVRE\NWyU\FKQDMEDUG]LHMEUDNXMH
2. 'RGDQLH]DVREyZPR*HVSRZRGRZDü]ZL
NV]RQH]DSRWU]HERZDQLHQD]DVRE\LQQHJRURG]DMX
2.2. Superkomputery dobre na wszystko?
:VSyáF]HVQHNRPSXWHU\RIHUXMPR*OLZRFLNRQILJXURZDQLDFRUD]ZL
NV]HMOLF]E\SURFHVRUyZ
w architekturze SMP. ZastosowaniH UR]ZL]D ]QDQ\FK ZF]HQLHM Z WHFKQRORJLDFK
superkomputerowych pozwala na uzyskanie bardzo wysokiej mocy obliczeniowej oraz wysokiej
SU]HSXVWRZRFL SU]\ WUDQVPLVMDFK GDQ\FK DQJD*XMF\FK SDPL
ü RUD] XU]G]HQLD ZHMFLDZ\MFLD
:Z FHFK\ V\VWHPyZ ZLHORSURFHVRURZ\FK VSUDZLDM *H VáXV]QLH XZD*D VL
MH ]D GRVNRQDá
SODWIRUP
GOD systemów baz danych.
3UREOHPDW\NDPDVRZHJRGRVW
SXGRED]GDQ\FK±PLW\ i fakty
39
= GUXJLHM VWURQ\ ]GDU]DM VL
V\WXDFMH NLHG\ SR XUXFKRPLHQLX QLHNWyU\FK DSOLNDFML
naPDV]\QDFK NLONXQDVWRSURFHVRURZ\FK SUREOHP\ Z\GDMQRFLRZH VL
SRJá
ELDM = UHJXá\
FKDUDNWHU\]XM VL
RQH VWRSQLRZ\P SRJDUV]DQLHP Z\GDMQRFL ± Z\GáX*DQLHP F]DVX UHDNFML D*
do Z\VWSLHQLDREMDZyZ]DZLHV]HQLD
=MDZLVNRWRPR*QDWáXPDF]\üPLQQDSRGVWDZLHPRGHOXVNDORZDOQRFLDSOLNDFMLQDPDV]\QDFK
ZLHORSURFHVRURZ\FK U\V =DNáDGD RQ LVWQLHQLH WU]HFK SRGVWDZRZ\FK REV]DUyZ ± Z]URVWX
Z\GDMQRFL QDV\FHQLD RUD] VSDGNX Z\GDMQRFL &KRFLD* SU]\M
FLH OLQLRZRFL FKDUDNWHU\VW\NL
weZV]\VWNLFKWU]HFKREV]DUDFKMHVWEDUG]RGX*\PXSURV]F]HQLHPWRPRGHOWHQMHVWZ]XSHáQRFL
Z\VWDUF]DMF\ GOD LOXVWUDFML RPDZLDQ\FK ]MDZLVN ,QQ QLHGRVNRQDáRFL PRGHOX MHVW RF]\ZLVWD
WUXGQRü Z MHGQR]QDF]Q\P SU]HáR*HQLX GRü VXELHNW\ZQLH SRMPRZDQHM Z\GDMQRFL QD ZDUWRFL
liczbowe1.
:\GDMQRü
:]URVWZ\GDMQRFL
1
1DV\FHQLH
N
N
6SDGHNZ\GDMQRFL
N
S
/LF]EDSURFHVRUyZ
5\V0RGHOVNDORZDOQRFLDSOLNDFMLQDPDV]\QDFKZLHORSURFHVRURZ\FK
3RGVWDZRZ\PLSDUDPHWUDPLPRGHOXV
• NN ± OLF]ED SURFHVRUyZ SRZ\*HM NWyUHM GRGDQLH GR V\VWHPX QDVW
SQ\FK SURFHVRUyZ QLH
SU]\QRVL]DXZD*DOQHJRZ]URVWXZ\GDMQRFL
• NS ± OLF]ED SURFHVRUyZ SRZ\*HM NWyUHM GRGDQLH GR V\VWHPX QDVW
SQ\FK SURFHVRUyZ
SRZRGXMHVSDGHNZ\GDMQRFL
:DUWRFL SDUDPHWUyZ SRZ\*V]HJR PRGHOX RUD] QDFK\OHQLD FKDUDNWHU\VW\N Z REV]DU]H Z]URVWX
EG(VSDGNXZ\GDMQRFL]DOH*RGNRQVWUXNFMLVSU]
WXV\VWHPXRSHUDF\MQHJRVHUZHUDED]\GDQ\FK
i przede wszystkim, NRQVWUXNFML DSOLNDFML RUD] SODQRZDQHJR REFL*HQLD V\VWHPX Z F]DVLH
HNVSORDWDFML : SU]\SDGNX EDUG]R GREU]H VNRQVWUXRZDQ\FK DSOLNDFML PR*QD VL
VSRG]LHZDü
GREUHJRVNDORZDQLDVHUZHUDED]\2UDFOHGRSU]\QDMPQLHMNLONXG]LHVL
FLXSURFHVRUyZ
: DUFKLWHNWXUDFK VXSHUNRPSXWHURZ\FK QDV\FHQLH L VSDGHN Z\GDMQRFL ]ZL]DQH V SU]HGH
ZV]\VWNLP ]H Z]UDVWDMF\P NRV]WHP V\QFKURQL]DFML GRVW
SX GR ZHZQ
WU]Q\FK ]DVREyZ VHUZHUD
bazy Oracle oraz systemu operacyjnego na poziomie zatrzasków (latches, spinlocks). W istocie
]DJDGQLHQLH V\QFKURQL]DFML GRVW
SX GR NU\W\F]Q\FK ]DVREyZ VHUZHUD ED]\ 2UDFOH Z V\VWHPDFK
wieloprocesorowych jest analogiczne, jak w przypadku systemów operacyjnych. W obu
1
2GF]HJRMHGQDNVIXQNFMHNU\WHULDOQH"=DZV]HPR*QD]PDMVWURZDüMDNQDSRF]HNDQLX
Wojciech .DUZRZVNL3LRWU.RáRG]LHM
40
SU]\SDGNDFK NODV\F]Q PHWRG
RFKURQ\ FLH*HN NU\W\F]Q\FK ]DVWSLRQR SU]H] ]RULHQWRZDQ
naVWUXNWXU
GDQ\FK RFKURQ
]DVREyZ NU\W\F]Q\FK. Bez przebudowy mechanizmu szeregowania
GRVW
SXGRNU\W\F]Q\FKREV]DUyZMGUDQLHE\áRE\PR*OLZHHIHNW\ZQHVNDORZDQLHV\VWHPyZQDZHW
dla konfiguracji kilkuprocesorowej.
W przypadku serwera bazy danych Oracle, do dobrego skalowania na maszynach SMP istotny
MHVW RSW\PDOQ\ NRG DSOLNDFML QLH SRZRGXMF\ ]E\W F]
VW\FK RF]HNLZD QD V\QFKURQL]DFM
GRVW
SX
doNU\W\F]Q\FK ]DVREyZ MGUD Z REV]DU]H G]LHORQ\P 6*$ 2F]HNLZDQLD ]ZL]DQH
z V\QFKURQL]DFM PDM PLHMVFH ZyZF]DV JG\ ] SRZRGX PRG\ILNRZDQLD REV]DUyZ NU\W\F]Q\FK
SU]H]LQQHSURFHV\QLHPR*OLZHE\áRE\]DSHZQLHQLHVSyMQRFLZ\NRQ\ZDQHMRSHUDFML=DJDGQLHQLH
V\QFKURQL]DFML QDELHUD ZDJL ZUD] ]H Z]URVWHP OLF]E\ SURFHVyZ PRJF\FK UyZQROHJOH X]\VNLZDü
GRVW
SGRSDPL
FL±SRUHGQLR]DWHP]DOH*\RGOLF]E\X*\WNRZQLNyZRUD]RGOLF]E\SURFHVRUyZ
1DMF]
FLHM VSRW\NDQD SUREOHPDW\ND V\QFKURQL]DFML GRVW
SX GR ]DVREyZ ZVSyáG]LHORQ\FK
w warunkach pracy wielu sesji obejmuje m.in.:
1. =DM
WRü REV]DUX library cache ]ZL]DQ ] MHJR LQWHQV\ZQ\P ]DSHáQLDQLHP SU]H] NXUVRU\
NWyUHQLHVZVSyáG]LHORQH7HJRURG]DMXSUREOHP\VVSRZRGRZDQHSU]H]PLQ
• 1LHZáDFLZ PHWRG\N
SDUDPHWU\]RZDQLD G\QDPLF]QLH JHQHURZDQ\FK LQVWUXNFML 64/
SROHJDMFQSQDEH]SRUHGQLPZSLV\ZDQLXSDUDPHWUyZ]DPLDVWZDUWRFLZL]DQ\FKbind
variables)2 -HVW WR V]F]HJyOQLH GRWNOLZH JG\ SUREOHP MHVW XPLHMVFRZLRQ\ Z F]
VWR
Z\NRQ\ZDQHMVHNFMLNRGX-HGQ\P]QDMEDUG]LHMRF]\ZLVW\FKMHJRSU]HMDZyZMHVWREHFQRü
wielu niemal identycznych kursorów w tabeli dynamicznej V$SQLAREA3.
• .RQLHF]QRüXWU]\P\ZDQLDZLHOXZHUVMLWHJRVDPHJRNXUVRUD]DS\WDQLD&]
VWSU]\F]\Q
MHVW SURMHNW ED]\ GDQ\FK L DSOLNDFML ]DNáDGDMF\ XWU]\P\ZDQLH Z VFKHPDFLH ND*GHJR
zX*\WNRZQLNyZ ÄZDUVWZ\´ RELHNWyZ SRUHGQLFK V\QRQLPyZ SHUVSHNW\Z PRGXáyZ
3/64/:WDNLPSU]\SDGNXZWDEHOL964/$5($PR*QD]DREVHUZRZDüZ\VRNZDUWRü
DWU\EXWX 9(56,21B&2817 SU]\ NXUVRUDFK NWyUH Z\NRU]\VWXM SDUDPHWU\]DFM
SU]H]
ZDUWRFLZL]DQH
2. .RQLHF]QRü XWU]\P\ZDQLD ZLHOX QHJDW\ZQ\FK ]DOH*QRFL GOD Z\NRU]\VW\ZDQ\FK QD]Z
w przestrzeniach nazewniczych (namespaces X*\WNRZQLNyZ -HVW WR W\SRZ\ HIHNW EDUG]R
F]
VWHJR RGZRá\ZDQLH VL
GR RELHNWyZ ED]\ GDQ\FK ]D SRUHGQLFWZHP V\QRQLPyZ
SXEOLF]Q\FK1LHVWDQRZLWRMHGQDNLVWRWQHJRSUREOHPXZSU]\SDGNXJG\VHVMHVXUXFKDPLDQH
naSUDZDFKX*\WNRZQLNyZED]\2UDFOHQSUR]ZL]DQLDRSDrte o NDUWU\G*H3/64/
3. :\VRN ]DM
WRü EXIRUD ED]RZHJR buffer cache ± VSRZRGRZDQ SU]H] LVWQLHQLH UR]OHJá\FK
ÄJRUF\FK REV]DUyZ´ DSOLNDFML hot spot area 2EV]DU\ WH FKDUDNWHU\]XM VL
EDUG]R Z\VRN
F]
VWRFLRGF]\WyZL]DSLVyZ
3RZ\*V]H ]DJDGQLHQLD SUDZLH Z FDáRFL QDOH* GR VIHU\ SURMHNWX L NRQVWUXNFML VFKHPDWX ED]\
GDQ\FK L DSOLNDFML =QDF]QH LFK QDVLOHQLH PR*H VSRZRGRZDü *H FKDUDNWHU\VW\ND VNDORZDQLD
DSOLNDFMLQDPDV]\QDFK603ZHMG]LHZREV]DUQDV\FHQLDOXE]QDF]QHJRVSDGNXZ\GDMQRFLMX*GOD
RNRáRSURFHVRUyZ
Wnioski:
1. -DNQDLURQL
VXSHUNRPSXWHU\Z\PDJDMGREU]H]RSW\PDOL]RZDQ\FKDSOLNDFML:V]F]HJyOQRFL
NRQLHF]QH MHVW ]PLQLPDOL]RZDQLH OLF]E\ RSHUDFML Z\PDJDMF\FK Z\áF]QRFL GRVW
SX
3U]HND]\ZDQLH NU\WHULyZ GR ]DS\WDQLD ]D SRPRF OLWHUDáyZ PD X]DVDGQLHQLH QS Z Z\SDGNX GX*\FK
]DS\WD ad-hoc JG\* W\ONR ZWHG\ RSW\PDOL]DWRU NRV]WRZ\ PR*H VNRU]\VWDü ] KLVWRJUDPyZ 7HJR W\SX
]DS\WDQLDVZ\NRQ\ZDQHQDW\OHU]DGNR*HQLHSRZLQQ\ZSá\ZDüQD]DM
WRüREV]DUXlibrary cache.
2
W serwerze bazy Oracle 8i SRMDZLD VL
PR*OLZRü wymuszenia ZVSyáG]LHOHQLD ZZ ]DS\WD SU]H]
ustawienie parametru CURSOR_SHARING=FORCE. NDOH*\ VL
jednak OLF]\ü z pewnym wSá\ZHP WHJR
XVWDZLHQLDQDSUDF
optymalizatora kosztowego.
3
3UREOHPDW\NDPDVRZHJRGRVW
SXGRED]GDQ\FK±PLW\ i fakty
41
doZHZQ
WU]Q\FK VWUXNWXU VHUZHUD ED]\ GDQ\FK OH*F\FK Z REV]DU]H ZVSyáG]LHORQ\P shared
pool).
2. 'HF\]M
R ]DVWRVRZDQLX VXSHUNRPSXWHUD ZDUWR SRSU]HG]Lü EDGDQLHP DSOLNDFML SRG NWHP
RSW\PDOL]DFML GRVW
SX GR ]DVREyZ G]LHORQ\FK : QLHNWyU\FK SU]\SDGNDFK SR]ZROL WR
naXQLNQL
FLH SU]\NUHJR UR]F]DURZDQLD IDNWHP *H FKDUDNWHU\VW\ND VNDORZDOQRFL DSOLNDFML
na maszynach SMP wykazuje znaczny jej spadek dla posiadanej liczby procesorów.
.áDPVWZDbenchmarki i statystyki?
:RNyáVWDQGDUGRZ\FKWHVWyZZ\GDMQRFLRZ\FKPLQ73&&L73&'QDURVá\GZDQDZ]DMHP
sprzeczne nieporozumienia. Pierwsze polega na bezkrytycznym przenoszeniu uzyskanych
UH]XOWDWyZ QD VIHU
ZGUD*DQHJR V\VWHPX GUXJLH ] NROHL SROHJD QD FDáNRZLW\P QHJRZDQLX LFK
ZDUWRFL
/LF]E\MDNWROLF]E\Z\PDJDMLQWHUSUHWDFML,PEDUG]LHMFKDUDNWHU\VW\NDU]HF]\ZLVWHMDSOLNDFML
E\áDE\ ]EOL*RQD GR DSOLNDFML 73& W\P EDUG]LHM Z\QLNL WHVWyZ E\á\E\ PLDURGDMQH GOD RNUHOHQLD
SODQRZDQHJR REFL*HQLD 1LHVWHW\ U]HF]\ZLVWH DSOLNDFMH LVWRWQLH Uy*QL VL
PL
G]\ VRE L SUDZLH
wQLF]\PQLHFKFSU]\SRPLQDüDSOLNDFMLX*\ZDQ\FKZWHVWDFK73&FKRüE\GODWHJR*HV]UHJXá\
GX*R EDUG]LHM VNRPSOLNRZDQH 1LH VSRVyE WH* ]QDOH(ü ZLDU\JRGQHM IRUPXá\ SR]ZDODMFHM
naSU]HáR*HQLH REFL*HQLD VWRVRZDQHJR Z WHVWDFK QD REFL*HQLH Z\VW
SXMFH Z U]HF]\ZLVW\P
systemie.
3RPLPR WR Z\QLNL X]\VNDQH Z WHVWDFK 73&&73&' SRVLDGDM ZDUWRü LVWRWQ SU]\
VNDORZDQLXV\VWHPyZL]DU]G]DQLXZ\GDMQRFL
• =UHJXá\VWDQRZLGRüGREUHRV]DFRZDQLHgórnych JUDQLFPR*OLZRFLVNDORZDQLDV\VWHPX
• 3R]ZDODMQDSRUyZQDQLHPR*OLZRFLVSU]
WXLRSURJUDPRZDQLDV\VWHPRZHJR'RWHJRFHOX
]RVWDá\VWZRU]RQH
=H Z]JO
GX QD IDNW *H QD SRGVWDZLH Z\QLNyZ VWDQGDUGRZ\FK WHVWyZ QLH VSRVyE RNUHOLü
Z\GDMQRFL U]HF]\ZLVW\FK DSOLNDFML NRQLHF]QH MHVW VDPRG]LHOQH SURZDG]DQLH EDGD Z\GDMQRFL
1DMF]
FLHMREVHUZRZDQHMHVWREFL*HQLHV\VWHPXLF]DV\UHDNFMLZ\EUDQ\FKIXQNFMLDSOLNDFML
1DMF]
FLHM VSRW\NDQH SUREOHP\ ]ZL]DQH ] PHWRG EDGDQLD Z\GDMQRFL U]HF]\ZLVWHM DSOLNDFML
REHMPXMPLQ
1. ,QQ\FKDUDNWHUREFL*HQLDV\VWHPXSU]\U]HF]\ZLVWHMSUDF\MDNZF]DVLHWHVWyZ
2. 1LHXZ]JO
GQLHQLH FKDUDNWHU\VW\NL REFL*HQLD ]ZL]DQHM ] XUXFKRPLHQLHP GX*HM OLF]E\ VHVML
naSUDZDFKUy*Q\FKX*\WNRZQLNyZSRUSUREOHP\RSLVDQHZSXQNFLH
8]\VNDQDFKDUDNWHU\VW\NDZ\GDMQRFLFKRüE\REFL*RQDQLHGRNáDGQRFLDPLVWDQRZLQDMOHSV]
SRGVWDZ
GR RNUHOHQLD GRFHORZ\FK Z\PDJD VSU]
WRZ\FK V\VWHPRZ\FK RUD] GRFHORZHM
SU]HSXVWRZRFLV\VWHPX'RGDWNRZNRU]\FLZ\QLNDMF]SURZDG]HQLDWHVWyZZ\GDMQRFLRZ\FK
DSOLNDFMLMHVWPR*OLZRüZ\FKZ\FHQLDSUREOHPyZDSOLNDFMLSU]HGRGGDQLHPMHMGRHNVSORDWDFML
Wniosek:
/HSV]HQLHGRVNRQDáHEDGDQLHZ\GDMQRFLU]HF]\ZLVWHMDSOLNDFMLQL**DGQH
4. Cudowne lekarstwa?
1DWXUDOQUHDNFMQDZ\VWSLHQLHSUREOHPyZZ\GDMQRFLRZ\FKZID]LHZGUR*HQLDV\VWHPXEG(
MHJR HNVSORDWDFML MHVW SRV]XNLZDQLH URGNyZ ]DUDGF]\FK 1LHVWHW\ ] UHJXá\ QLH LVWQLHM áDWZH
UR]ZL]DQLD JG\ SUREOHP Z\GDMQRFLRZ\ MHVW Já
ERNR ]DNRU]HQLRQ\ Z QDWXU]H DSOLNDFML QS
SURMHNFLHVWUXNWXU\ED]\GDQ\FKSU]\M
W\FKNRQZHQFMDFKLWG
Wojciech .DUZRZVNL3LRWU.RáRG]LHM
42
3U]\M
FLHGRZLDGRPRFL*HG]LHáRZNWyUHZáR*\áRVL
ZLHOHZ\VLáNXLF]
VWRZLHOHVHUFDPR*H
Z\PDJDü F]DVRFKáRQQ\FK SRSUDZHN EG( JUXQWRZQHM SU]HEXGRZ\ ] UHJXá\ MHVW EDUG]R WUXGQH
i budzi PQLHMOXEEDUG]LHMZLDGRP\RSyU-HVWWRQLHRPDOQLHPR*OLZHZDWPRVIHU]H]DJUR*HQLD±
np. w przypadkach QLHNRQVWUXNW\ZQHJR IRUPXáRZDQLD NZHVWLL RGSRZLHG]LDOQRFL QDSL
W\FK
KDUPRQRJUDPyZQLHUHDOLVW\F]Q\FKZ\PDJDEG(]RERZL]DRUD]RVWU\FKNRQIOLNWyZ
7HJRURG]DMXV\WXDFMHVSU]\MDM]DFKRZDQLRPXFLHF]NRZ\P±w sferzeWHFKQLF]QHMSU]HMDZLDM
VL
VNXSLHQLHPQDSRV]XNLZDQLDFKVSRVREXZZ\QLNXNWyUHJRSUREOHP\]QLNQMDN]DGRWNQL
FLHP
F]DURG]LHMVNLHM Uy*G*NL 3RV]XNLZDQLH XGRVNRQDOH VDPR Z VRELH MHVW U]HF] EDUG]R SR]\W\ZQ
-HGQDN ]QDOH]LHQLH UR]ZL]DQLD SUREOHPX MHVW PDáR SUDZGRSRGREQH JG\ ZLDGRPLH EG(
QLHZLDGRPLHXFLHNDVL
SU]HGSR]QDQLHPMHJRJHQH]\RUD]]ZL]DQ\FK]QLPPHFKDQL]PyZ
3U]\NáDGHPVGHF\]MHRUR]EXGRZLHVSU]
WXZV\WXDFMLJG\QDWXUDSUREOHPXMHVWQLHGRNRFD
]QDQD : SXQNFLH SRND]DQR *H LFK HIHNW\ PRJ E\ü SU]HFLZQH GR ]DPLHU]RQ\FK ,QQ\P
QLHU]DGNR VSRW\NDQ\P SU]\NáDGHP V SUyE\ SUDNW\F]QHM UHDOL]DFML SRJOGX *H Z\VWDUF]\
]EXIRURZDüFDáED]
GDQ\FKZSDPL
FLE\Z\HOLPLQRZDüSUREOHP\]ZL]DQHGáXJLPF]DVHP
UHDOL]DFML ]DS\WD 64/ 3RPLMDMF IDNW *H QDZHW GOD QLHGX*\FK V\VWHPyZ SRVWXODW WHQ MHVW ZFL*
WUXGQ\ GR VSHáQLHQLD WR ]ZL
NV]HQLH SU
GNRFL WUDQVPLVML GR SURFHVRUyZ GX*\FK LORFL GDQ\FK
NRQVHNZHQFMD ]áHM RSW\PDOL]DFML SRZRGXMH ]QDF]QH ]ZL
NV]HQLH LFK ]DM
WRFL RUD] REFL*HQLH
szyn systemowych. W takim przypadku mR*QD VL
VSRG]LHZDü *H Z V\VWHPLH SRZVWDQLH ZVNLH
JDUGáRZSRVWDFLQLHGRVWDWNXPRF\REOLF]HQLRZHM,QQ\PSUREOHPHPVWDQVL
OLF]QHRF]HNLZDQLD
Z ]ZL]NX ] V\QFKURQL]DFM GRVW
SX GR ZVSyáG]LHORQHJR EXIRUD ED]RZHJR L ]DU]G]DQLHP
kolejkami LRU.
-DN ND*GD XFLHF]ND RG SUREOHPX ]DFKRZDQLH WR QLH SU]\QRVL SR*GDQ\FK HIHNWyZ ± SUREOHP
]D]Z\F]DM SRZUDFD F]
VWR ]H ]GZRMRQ VLá 6\WXDFMD ] UHJXá\ VWDMH VL
GX*R WUXGQLHMV]D ±
QLHHIHNW\ZQLHZ\NRU]\VWDQRVSRURFHQQHJRF]DVXSRQLHVLRQH]RVWDá\QLHHIHNW\ZQHQDNáDG\EXG*HW
]RVWDMHQDGV]DUSQL
W\FLHUSOLZRüX*\WNRZQLNDWH*
Wniosek:
5HDOQ V]DQV
QD WUZDáH L VDW\VIDNFMRQXMFH UR]ZL]DQLH SUREOHPX GDMH SR]QDQLH
i RGG]LDá\ZDQLHQDjego przyczyny.
8F]QLRZLHF]DUQRNVL
*QLND
5R]ZyM VSU]
WX L RSURJUDPRZDQLD GDMH PR*OLZRFL WZRU]HQLD UR]ZL]D FRUD] EDUG]LHM
Z\GDMQ\FK L VNDORZDOQ\FK 1RZH VSHF\ILF]QH FHFK\ VWDQRZL PLQ RGSRZLHG( QD ]QDQH
zQLHNWyU\FKZF]HQLHMV]\FKGRZLDGF]HEDULHU\IXQNFMRQDOQHLZ\GDMQRFLRZH
%DUG]RVLOQLH]DNRU]HQLRQ\PLF]
VWRZ\VW
SXMF\P]DFKRZDQLHP]FDáSHZQRFLZ\NUDF]D
WR SR]D VIHU
PLWX MHVW ZHZQ
WU]Q\ SU]\PXV GR Z\NRU]\VWDQLD FHFK RZLDQ\FK IDVF\QXMF\P
QLPEHP QRZRFL EG( WDMHPQLFy QLH]DOH*QLH RG WHJR F]\ U]HF]\ZLFLH LVWQLHMH potrzeba
]DVWRVRZDQLD QRZHM IXQNFMRQDOQRFL 'DMH VL
]DXZD*\ü V\QGURP XF]QLD F]DUQRNVL
*QLND ± áDWZH
wprawianie w ruch coraz bardziej ]áR*RQ\FK PHFKDQL]PyZ QDG którymi áDWZR WUDFL VL
NRQWURO
wskutek braku ZLHG]\LXPLHM
WQRFL, do których zdobycia konieczny jest czas i odpowiedni zbiór
GRZLDGF]H. 1LHPQLHMLVWRWQHZ\GDMHVL
QDEUDQLHZáDFLZHJRVWRVXQNXGR QRZ\FKPR*OLZRFL,
SR]ZDODMFH QD dokonanie Z SHáQL ZLDGRPHJR Z\ERUu XZ]JO
GQLDMFHJR ]DáR*RQ\ cel,
spodziewane zyski jak i PR*OLZH koszty. Wbrew zamierzeniom, QLHSU]HP\ODQH
i nieskoordynowane zastosowanie QRZHM IXQNFMRQDOQRFL PR*H VSRZRGRZDü SRZD*QH SUREOHP\
]ZL]DQH]Z\GDMQRFLLVWDELOQRFLV\VWHPX
3U]\NáDG\RSLVDQ\FKZ\*HMG]LDáDVF]
VWRLGHQW\F]QHMDNG]LDáDQLDRSLVDQHZSXQNtach 2 i 4.
3RQDGWRGRWHMNDWHJRULLPR*QD]DOLF]\üQS
• Uruchamianie parallel query i parallel execution QD PDV]\QDFK QLH SRVLDGDMF\FK
stosownych zasobów – np. jednoprocesorowych, w systemach z niedoborem mocy
REOLF]HQLRZHM]QLHGRVWDWHF]QZ\GDMQRFLG\VNyZ
3UREOHPDW\NDPDVRZHJRGRVW
SXGRED]GDQ\FK±PLW\ i fakty
43
• 3UyE\ ]ZL
NV]HQLD Z\GDMQRFL systemu poprzez zastosowanie Oracle Parallel Server bez
SRGM
FLD SUDF Z NLHUXQNX PLQLPDOL]DFML QDU]XWX ]ZL]DQHJR ] V\QFKURQL]DFM Z
]áyZ RUD]
w sytuacji, gdy SUREOHP\ Z\GDMQRFLRZH wynikaM przede wszystkim ze skali problemów
w V\QFKURQL]DFML GRVW
SX GR ZVSyáG]LHORQ\FK obszarów serwera bazy – przede wszystkim
buffer cache i row cache.
• Nadmierne partycjonowanie tabel ± QS VWRVRZDQLH GX*HM QLH GDMFHM VL
QLF]\P X]DVDGQLü
OLF]E\SDUW\FMLEG(subpartycji.
• Stosowanie MTS (Multithreaded ServerZZDUXQNDFKGX*HMUH]HUZ\SDPL
FLEG(]QDF]QHM
]DM
WRFLVHVMLSU]H]Z\NRQ\ZDQHSROHFHQLD64/
• Stosowanie 64-bitowych wersji oprogramowania w celu skonfigurowania bardzo wielkich
obszarów buffer cache i shared pool bez uprzedniego zbadania sposobu wykorzystania ich
SU]H]DSOLNDFM
• Stosowanie
mechanizmów typowych dla systemów DSS oraz data warehouse
do optymalizowania]DS\WDZ\VW
SXMF\FKZDSOLNDFMDFK2/73±QS]DS\WDQLDJZLD(G]LVWH
(star queries]áF]HQLDW\SXhash (hash joins).
• Stosowanie indeksów ELWPDSRZ\FKZF]
VWRPRG\ILNRZDQ\FKWDEHODFK
2PDZLDQH G]LDáDQLD QLH V ] UHJXá\ Z VWDQLH UR]ZL]Dü SUREOHPyZ Z\GDMQRFLRZ\FK JG\*
zazwyczaj nie G]LDáDM na ich przyczyny. Negatywnym skutkiem podejmowania tego rodzaju
SU]HGVL
Z]L
ü jest przede wszystkim stworzenie nowych problemów, odwrócenie uwagi od
SUREOHPXSRGVWDZRZHJRRUD]SRFKáDQLDQLHVLáLURGNyZNRQLHF]Q\FKGR]UHDOL]RZDQLDG]LDáDQLH
SU]\QRV]F\FKZHIHNFLHVSRG]LHZDQHMSRSUDZ\Z\GDMQRFL
1.
2.
3.
4.
Wnioski:
.RQVWUXRZDQLH ]áR*RQ\FK L VNDORZDOQ\FK V\VWHPyZ Z ZL
NV]RFL SU]\SDGNyZ Z\PDJD
PLVWU]RZVNLHJRVWRVRZDQLDPR*OLZLHSURVW\FKURGNyZ
=DVWRVRZDQLH UR]ZL]D ]DDZDQVRZDQ\FK SRZLQQR VWDQRZLü ZLDGRP GHF\]M
PDMF
naFHOX RVLJQL
FLH GREU]H RNUHORQ\FK FHOyZ GR NWyU\FK RVLJQL
FLD SURVWH L VWDQGDUGRZH
UR]ZL]DQLDVQLHZ\VWDUF]DMFH
:L
NV]DOLF]EDÄFLHNDZ\FK´UR]ZL]DQLHPXVLVL
SU]HNáDGDüQDOHSV]Z\GDMQRüLZL
NV]
VWDELOQRü.
:LHOHSUREOHPyZ]ZL]DQ\FK]Z\GDMQRFLPR*HPLHü bardzo proste pRGáR*HOH*FHZ sferze
projektu lub konfiguracji systemu 'R LFK UR]ZL]DQLD QLH MHVW NRQLHF]QLH VWRVRZDQLH
zaawansowanych technologii.
:L
NV]DVNDODZ\PDJDZ\*V]HMNXOWXU\HNVSORDWDFML
1LH]DOH*QLHRGGRVW
SQ\FK]DVREyZX]\VNDQLHGREUHMZ\GDMQRFLZ\PDJDRSUDFRZDQLDFKRüE\
najprostszego programu obserwacji i ]DU]G]DQLD REFL*HQLHP V\VWHPX -HJR FHOHP MHVW
]DSHZQLHQLHZPLDU
UyZQRPLHUQHJRUR]áR*HQLDREFL*HQLDV\VWHPXZF]DVLHMHJRHNVSORDWDFMLoraz
niedopuszczanie doZ\VWSLHQLD VSL
WU]H ]DGD SURZDG]F\FK GR Z\F]HUSDQLD UH]HUZ\ PRF\
obliczeniowej i]DVREyZ V\VWHPRZ\FK 1LH PQLHM LVWRWQH MHVW XQLNDQLH V\WXDFML JG\ UyZQROHJáH
Z\NRQDQLH ]DGD SRZRGXMH SRZD*QH SUREOHP\ Z V\QFKURQL]RZDQLX GRVW
SX GR ZVSyáG]LHORQ\FK
zasobów naSR]LRPLH ORJLF]Q\P EG( QD SR]LRPLH MGUD VHUZHUD ED]\ 2UDFOH SRU SXQNW WV]F]HJyOQRFLNRQLHF]QHMHVWZ\G]LHOHQLHF\NOLXUXFKDPLDQLDV]F]HJyOQLHREFL*DMF\FK]DGD
oraz cykli utrzymania systemu – m.in. backup’u, konserwacji oprogramowania, utrzymania
obiektów oraz przestrzeni bazy danych.
Wojciech .DUZRZVNL3LRWU.RáRG]LHM
44
6.1. Niewinne z pozoru operacje
: SU]\SDGNX GX*HM VNDOL V\VWHPX QS Z ZDUXQNDFK SUDF\ EDUG]R ZLHOX X*\WNRZQLNyZ
Z\NRQDQLH SHZQ\FK Z\JOGDMF\FK QD QHXWUDOQH GOD Z\GDMQRFL V\VWHPyZ RSHUDFML PR*H
VSRZRGRZDüGRWNOLZHNRQVHNZHQFMH
3U]\NáDGRZRV]F]HJyOQHMXZDJLZ\PDJDMDSOLNDFMHLQWHQV\ZQLHNRU]\VWDMFH]NRGX3/64/
VNáDGRZDQHJR Z ED]LH GDQ\FK QS VHUZLV\ LQWHUQHWRZH RSDUWH R NDUWU\G*H 3/64/ QLHNWyUH
aplikacje Oracle Forms). Istotne znaczenie ma unikanie kompilacji PL/SQL podczas
HNVSORDWRZDQLD V\VWHPX SU]H] ZLHOX X*\WNRZQLNyZ RUD] V\WXDFML SURZDG]F\FK GR MHJR
XQLHZD*QLHQLD invalidation QD VNXWHN ]DU]G]DQLD ]DOH*QRFLDPL object dependency
management 8QLHZD*QLHQLH 3/64/ VNáDGRZDQHJR Z ED]LH GDQ\FK SRZRGXMH ] NROHL
NRQLHF]QRüMHJRUHNRPSLODFMLSU]\kolejnej próbie jego wykonania [3].
.RPSLODFMD 3/64/ EG( UHNRPSLODFMD Z\ZRáDQD MHJR XQLHZD*QLHQLHP PR*H E\ü SU]\F]\Q
EDUG]R SRZD*Q\FK SUREOHPyZ Z\GDMQRFLRZ\FK ]ZL]DQ\FK ] V\QFKURQL]RZDQLHP GRVW
SX
do obszaru library cache. :\VW
SXMFH ZyZF]DV OLF]QH ]DQL
FLD VHVML SU]\ RF]HNLZDQLX
na zdarzenia ‘library cache pin’ oraz ‘library cache lock’ PRJ VSRZRGRZDü LFK SUDNW\F]QH
zawieszenie.
8QLHZD*QLDQLHNRGX3/64/SRZRGRZDQHMHVWSU]H]LQVWUXNFMHALTER, REVOKE, GRANT,
CREATE OR REPLACE Z\NRQDQH QD RELHNWDFK ED]RZ\FK GR NWyU\FK WHQ NRG VL
RGZRáXMH
-HVW WR RSLVDQ\ Z >@ HIHNW NDVNDGRZ\ ]ZL]DQ\ ] PHFKDQL]PHP ]DU]G]DQLHP ]DOH*QRFLDPL
PL
G]\ RELHNWDPL :Z SUREOHP PR*H VL
SRQDGWR REMDZLDü Z\VW
SRZDQLHP Eá
GyZ 25$-4020
]DNOHV]F]HQLHSU]\SUyELHX]\VNDQLDZ\áF]QRFLGRVW
SXGRRELHNWX25$-4021 (przekroczenie
OLPLWX F]DVX RF]HNLZDQLD SU]\ SUyELH X]\VNDQLD Z\áF]QRFL GRVW
SX GR RELHNWX RUD] 25$-600,
QDMF]
FLHM ] DUJXPHQWHP >@ ZUD] ] WRZDU]\V]F\PL Eá
GDPL 25$ VWDQ RELHNWX
3/64/ ]RVWDá XQLHZD*QLRQ\ 25$ ]PLHQLRQ\ OXE XVXQL
W\ SRGSURJUam PL/SQL)
i ORAEUDNPR*OLZRFLZ\ZRáDQLDSRGSURJUDPX3/64/
3U]\WRF]RQ\ Z\*HM SUREOHP VWDQRZL jeden z SU]\NáDGów ZLDGF]F\FK R NRQLHF]QRci
wprowadzenia cykli utrzymania systemu. Ponadto konstrukcja, konfiguracja i praktyka ELH*FHM
konserwacji V\VWHPX SRZLQQ\ PR*OLZLH VNXWHF]QLH ]DSRELHJDü wykonaniu RSHUDFML ]ZL]DQ\FK
utrzymywaniem bazy danych w czasie jego ZL
NV]HJRREFL*HQLD
6.2. Dobra praktyka administrowania
:UD] ]H Z]URVWHP VNDOL V\VWHPX FRUD] ZL
NV]HJR ]QDF]HQLD QDELHUD WDN*H VWRVRZDQLH SUDNW\N
DGPLQLVWURZDQLD ED] GDQ\FK SR]ZDODMF\FK QD ]PLQLPDOL]RZDQLH QDU]XWX VHUZHUD ED]\ 2UDFOH
SU]\ ]DU]G]DQLX SU]HVWU]HQL 5HGXNRZDQLH OLF]E\ UHNXUV\ZQ\FK RSHUDFML 64/ RUD] RSHUDFML
ZHMFLDZ\MFLD SR]ZDOD QD XGRVW
SQLHQLH PDNV\PDOQ\FK ]DVREyZ V\VWHPRZ\FK QD SRWU]HE\
wykonywanych aplikacji. =DOHFDQH SUDNW\NL DGPLQLVWURZDQLD ED] GDQ\FK, PDMFH QD FHOX
XQLNQL
FLHG\QDPLF]QHJR]DU]G]DQLDSU]HVWU]HQLREHMPXMPLQ
1. 8VWDZLDQLHVWRVRZQLHGX*\FKZDUWRFLSDUDPHWUyZ,1,7,$/1(;7GODVHJPHQWyZ4.
2. 3UHDORNDFM
ekstentów w intensywnie modyfikowanych tabelach w chwilach ich mniejszego
REFL*HQLD
3. 3UHDORNDFM
SU]HVWU]HQLWDEHOZWUDNFLHPQLHMV]HJRREFL*HQLDV\VWHPX
Celem MHVW]DUyZQRXQLNQL
FLHQDU]XWX ]ZL]DQHJR ] G\QDPLF]Q\P ]DU]G]DQLHP SU]HVWU]HQL
jak i PR*OLZRFL Z\VWSLHQLD Eá
GyZ ]ZL]DQ\FK ] niePR*nRFL rozszerzenia segmentów (np.
tabel i indeksów) o kolejne ekstenty.
Grzechem GRüSRZV]HGQLPELRUFSRGXZDJ
MHJRF]
VWRü]DFL
*NLPELRUFSRGXZDJ
MHJRVNXWNL
jest stoVRZDQLH EDUG]R GX*HM OLF]E\ drobnych ekstentów GR VNáDGRZDQLD segmentów, np. NRQILJXUXMF
parametry typu: STORAGE (INITIAL 10K NEXT 10K PCTINCREASE 0 MAXEXTENTS UNLIMITED).
4
3UREOHPDW\NDPDVRZHJRGRVW
SXGRED]GDQ\FK±PLW\ i fakty
45
1DVW
SQ\P SU]\NáDGHP MHVW NRQLHF]QRü SUDZLGáRZHM NRQILJXUDFML VHJPHQWyZ Z\FRIDQLD
w systemach FKDUDNWHU\]XMF\FK VL
GX*\P rozmiarem wykonywanych zmian w danych oraz
uruchamianiem GáXJRWUZDá\FK ]DS\WD, np. w systemach REFL*RQych równoczesn SUDF
o charakterze OLTP, zadaniami wsadowymi oraz raportowaniem =E\W PDá\ UR]PLDU SU]HVWU]HQL
zaalokowanej w segmentach wycofania powoduje F]
VWH Z\VW
SRZDQLH Eá
GyZ 25$
ÄSU]HVWDU]DáDPLJDZND´SU]\Z\NRQ\ZDQLXGáXJRWUZDá\FKi kosztowQ\FK]DS\WD. Wspomniany
EáG MHVW VSRZRGRZDQ\ EUDNLHP PR*OLZRFL uzyskania spójnego obrazu danych, które ulegaá\
zmianom RG FKZLOL XUXFKRPLHQLD WUZDMFHJR ZLHOH JRG]LQ ]DS\WDQLD (mechanizm read
consistency).=PLDQ\PRJE\üwykonywane przez zatwierdzone jak i wycofane transakcje.
:Sá\ZEá
GyZ25$RUD]Eá
GyZ]ZL]DQ\FK]G\QDPLF]Q\P]DU]G]DQLHPSU]HVWU]HQL
QDZ\GDMQRüV\VWHPX, V]F]HJyOQLHGRWNOLZ\ZSU]\SDGNXQDSL
WHJRKDUPRQRJUDPXSU]HWZDU]DQLD
polega przede wszystkim na zQDF]F\PZ\GáX*HQLXF]DVXSRWU]HEQHJRGRSRP\OQHJR]DNRF]HQLD
operacji. .RQLHF]QRü wznawiania kosztownych operacji, np. ]DGD ZVDGRZ\FK GáXJRWUZDá\FK
]DS\WDpowoduje ]QDF]Fe zwL
NV]HQLH REFL*HQLa systemu w stosunku do rzeczywistych potrzeb,
czego wtórnym efektem bywa SRVW
SXMFHpogarszanie efektywnRFLSR]RVWDá\FKoperacji.
Wnioski:
1. Wraz ze wzrostem skali systemu, ND*G\ problem NRQILJXUDF\MQ\ EG( ]ZL]DQ\ ] NRQVHUZDFM
V\VWHPX PR*H VSRZRGRZDü QDUDVWDMF ODZLQ
QLHNRU]\VWQ\FK HIHNWyZ – ZáF]QLH ] UR]OHJá
XWUDWPR*OLZRFLefektywnego wykonywania przetwarzania(efekt domina).
2. :DUXQNLHP NRQLHF]Q\P GR RVLJQL
FLD Z\PDJDQHM Z\GDMQRFL MHst stworzenie konfiguracji
i zapewnienie konserwacji systemuNWyUHV dostosowane do planowaneJRREFL*HQLD
6áRZRNRFRZHFKRFLD*QLHRVWDWQLH
8UXFKRPLHQLHV\VWHPX]HVWURMHQLHRVLJQL
FLHZ\PDJDQHMZ\GDMQRFL±F]\WRZV]\VWNR"1LF
z tego. URGRZLVND U]HF]\ZLVWH SRGOHJDM FLJá\P ]PLDQRP ± MHVW WR UHDNFMD QD ]PLHQLDMFH VL
SRWU]HE\ L Z\PDJDQLD 1DVW
SXMH Z]URVW UR]PLDUX ED]\ GDQ\FK GR DSOLNDFML V ZSURZDG]DQH
]PLDQ\ SRV]HU]DMFH IXQNFMRQDOQRü ]PLHQLD VL
FKDUDNWHU\VW\ND REFL*HQLD V\VWHPX SU]H]
Z\NRQ\ZDQH RSHUDFMH =PLDQD ZDUXQNyZ SUDF\ V\VWHPX SU
G]HM F]\ Sy(QLHM SRFLJD ]D VRE
NRQLHF]QRü SRQRZQHJR VWURMHQLD 6WURMHQLH L ]DU]G]DQLH Z\GDMQRFL QLH V F]\QQRFLDPL
MHGQRUD]RZ\PL OHF] SURFHVDPL >@ ,FK ]DNRF]HQLH PR*H QDVWSLü ZUD] ] Z\FRIDQLHP V\VWHPX
z eksploatacji.
=DSHZQLHQLH VWDáHJR SR]LRPX Z\GDMQRFL Z\PDJD VWDáHJR REVHUZRZDQLD L ]DU]G]DQLD
REFL*HQLHP .RQLHF]QH MHVW FLJáH ]DU]G]DQLe ]DVREDPL GLDJQR]RZDQLH L UR]ZL]\ZDQLH
problemów najlepiej SU]HGZ\VWSLHQLHPSRZD*QLHMV]\FKVNXWNyw.
&]\ W\P UD]HP WR MX* QDSUDZG
ZV]\VWNR FR PR*QD SRZLHG]LHü QD WHPDW VNDORZDQLD
i ]DU]G]DQLD Z\GDMQRFL V\VWHPyZ" OSUDFRZDQLX ] SHZQRFL QLH SU]\ZLHFDá FHO
zaprezentowania syntezy, FKRüE\ PLNURVNRSLMQHgo wydania „Summy Z\GDMQRFLRZHM Z SLJXáFH”,
celem raczej E\áRzasygnalizowanie pewnej problematyki.
Przede wszystkim, VIHUD WHFKQRORJLL MHVW QD W\OH ]áR*RQD *H EH]NU\W\F]QH przyjmowanie
RELHJRZ\FK SRJOGyZ, jedynie powierzchowna jej ]QDMRPRü L zaniechanie VWDáHJR ]Já
ELDQLD MHM
WDMQLNyZ áDWZR PR*H VSURZDG]Lü QD PDQRZFH 7HFKQRORJLD MHVW MHGQDN MHGQ ] wielu warstw
omawianej problematyki – jest ona NV]WDáWRZDQD SU]H] OXG]L SRGREQLH MDN UHDOL]RZDQH ]D MHM
SRPRF SURMHNW\ L eksploatowane systemy. Projektom i systemom NV]WDáW QDGDM ZV]\VF\
]DDQJD*RZDQL OXG]LH ± SRF]ZV]\ RG operatorów, poprzez administratorów, programistów
i projektantów, na V]HIDFKSURMHNWyZF]\ILUPVNRF]\ZV]\. KV]WDáWQDGDMLFKSUDJQLHQLD i emocje,
ambicje i problemy, PRW\ZDFMH RUD] FHOH MDNLH UHDOL]XM QLH]DOH*QLH od tego, czy GRW\F] one
]ELRURZRFL F]\ SRMHG\QF]\FK RVyE 1LH VSRVyE W\FK VIHU UR]G]LHOLü L nie sposób którejkolwiek
SRPLQüWarto im SRZL
FLüod czasu do czasu FKRüE\FKZLO
Já
EV]HMrefleksji.
Wojciech .DUZRZVNL3LRWU.RáRG]LHM
46
Bibliografia
1.
Aronoff E., Loney K., Sonawalla N., Oracle8 Advanced Tuning & Administration, Osborne McGraw-Hill,
1998, ISBN 0-07-882534-2
2.
Gunther N., The Practical Performance Analyst, McGraw-Hill, 1998
3.
Oracle8i Release 8.1.5 Application Developer’s Guide

Podobne dokumenty