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