Automatyczne generowanie zawartości bazy danych

Transkrypt

Automatyczne generowanie zawartości bazy danych
XIII Konferencja PLOUG
.RFLHOLVNR
3D(G]LHUQLN
$XWRPDW\F]QHJHQHURZDQLH]DZDUWRFL
bazy danych
Sebastian Wajrych, Adam Pelikant
3ROLWHFKQLNDàyG]ND,QVW\WXWMechatroniki i Systemów Informatycznych
[email protected],
[email protected]
Abstrakt. Wszystkie projekty (internetowe, GHVNWRSRZHLWG]DZLHUDMFHED]
GDQ\FKERU\NDMVL
QD SHZQ\P HWDSLH ] SUREOHPHP
braku danych. Zarówno SURJUDPLVWDGHYHORSHU MDN L WHVWHU FKFLDáE\ VSUDZG]Lü G]LDáDQLH QRZR GRGDQHM IXQNFMRQDOQRFL 2F]\ZLFLH
SUDZGRSRGREQLHREDME
G]PXV]HQLX]XSHáQLüED]
SRUFMGDQ\FKSRWU]HEQ\FKGRVSUDZG]HQLDIUDJPHQWXSURJUDPXNWyU\PDNWXDOQLH
VL
]DMPXM7DNLHUR]ZL]DQLHPDGZDSRZD*QHPLQXV\3RSLHUZV]H]GX*\PSUDZGRSRGRELHVWZHPSURJUDPLVWDQLHXF]HVWQLF]\á
wSURFHVLHDQDOL]\LZ\JHQHURZDQHSU]H]QLHJRGDQHZZL
NV]RFLQLHE
GRGSRZLDGDá\GDQ\PGRFHORZ\PREVáXJLZDQHJREL]QHVX
QS 2UGHU 2UGHU 2UGHU 'UXJLP UyZQLH SRZD*Q\P SUREOHPHP MHVW EUDN VSyMQRFL GDQ\FK W]Q *H Johna Smitha znajdziemy
w jednym module jako konsultanta Call &HQWHUDZGUXJLPMDNRG\UHNWRUDWHMVDPHMMHGQRVWNL7DNLHGDQHNRPSOHWQLHQLHQDGDMVL
GR
SUH]HQWDFMLDSOLNDFMLNOLHQWRZL1LHPR*HRQ]REDF]\üG]LDáDQLDV\VWHPXZVZRLPNRQWHNFLHDFR]DW\PLG]LHPR*HRGF]Xü*HQLH
UR]XPLHP\MHJREL]QHVX]DWHPQLHE
G]LHP\ZVWDQLHVSHáQLüMHJRZ\PDJD'RGDWNRZRVWUDFLOLP\FHQQH]DVRE\GODZ\JHQHURZDQLD
EH]X*ytecznych danych.
Informacja o autorach. 0JU LQ* 6HEDVWLDQ :DMU\FK DEVROZHQW :\G]LDáX (OHNWURWHFKQLNL (OHNWURQLNL ,QIRUPDW\NL L $XWRPDW\NL
3ROLWHFKQLNLàyG]NLHMNLHUXQNX,QIRUPDW\NDVSHFMDOQRü%D]\GDQ\FKLV\VWHP\HNVSHUWRZH
Profesor QDG]ZGUKDELQ*$GDP3HOLNDQWMHGQD]QDMEDUG]LHMGRZLDGF]RQ\FKRVyEZDGPLQLVWUDFMLLREVáXG]HV\VWHPyZbazodanoZ\FKQD3ROLWHFKQLFHàyG]NLHM3U]HZRGQLF]F\L]DáR*\FLHONRáDQDXNRZHJRRWHPDW\FHED]GDQ\FK]U]HV]DMFHJRVWXGHQWyZFKFF\FK
UR]ZLMDüVZRMHXPLHM
WQRFLL]DLQWHUHVRZDQLDQDW\PSROX%DUG]R*\F]OLZDRVREDNWyUDF]
VWREDUG]LHMZLHU]\ZXPLHM
WQRFLVZ\FK
SRGRSLHF]Q\FKQL*RQLVDPL=DZV]HVNRU\GRSRPRF\SU]\UR]ZL]\ZDQLXQRZ\FKSUREOHPyZVWXGHQWyZ]ZL]DQ\FK]ED]DPLGDQ\FK
=DZV]HSU]HGVWDZLDMDVQRVZRMHFHOHLRF]HNLZDQLDZ]JO
GHPGDQHMSUDF\SRPLPR*HF]
VWRVWRWUXGQH]DJDGQLHQLD1DVWDZLRQ\QD
SUDNW\F]QH VWRVRZDQLH QRZ\FK QDU]
G]L L WHFKQRORJLL LQIRUPDW\F]Q\FK -HJR GHZL] V VáRZD $OEHUWD (LQVWHLQD 5R]ZL]XM ZV]\VWNR
SURVWRDOHQLHSURFLHM
Automatyczne generowanie zawartRFLED]\GDQ\FK
277
Wszystkie projekty (internetowe, GHVNWRSRZHLWG]DZLHUDMFHED]
GDQ\FKERU\NDMVL
na pewnym etapie z problemem braku danych. Zarówno programista-developer jak i tester
FKFLDáE\ VSUDZG]Lü G]LDáDQLH QRZR GRGDQHM IXQNFMRQDOQRFL 2F]\ZLFLH SUDZGRSRGREQLH
REDM E
G ]PXV]HQL X]XSHáQLü ED]
SRUFM GDQ\FK SRWU]HEQ\FK GR VSUDZG]HQLD NDZDáND
SURJUDPXNWyU\PDNWXDOQLHVL
]DMPXM
7DNLH UR]ZL]DQLH PD GZD SRZD*QH PLQXV\ 3R SLHUZV]H ] GX*\P SUDZGRSRGRELHVWZHP
SURJUDPLVWDQLHXF]HVWQLF]\áZSURFHVLHDQDOL]\LZ\JHQHURZDQHSU]H]QLHJRGDQHZZL
NV]RFL
QLH E
G RGSRZLDGDá\ GDQ\P GRFHORZ\P REVáXJLZDQHJR EL]QHVX QS 2UGHU 2UGHU 2UGHU
'UXJLP UyZQLH SRZD*Q\P SUREOHPHP MHVW EUDN VSyMQRFL GDQ\FK W]Q *H Johna Smitha znajdziemy w jednym module jako konsultanta Call Center, a w drugim jako dyrektora tej samej jedQRVWNL7DNLHGDQHNRPSOHWQLHQLHQDGDMVL
GRSUH]HQWDFMLDSOLNDFMLNOLHQWRZL1LHPR*HRQ]REaF]\ü G]LDáDQLD V\VWHPX Z VZRLP NRQWHNFLH D FR ]D W\P LG]LH PR*H RGF]Xü *H QLH UR]XPLHP\
MHJREL]QHVX]DWHPQLHE
G]LHP\ZVWDQLHVSHáQLüMHJRZ\PDJD'RGDWNRZRVWUDFLOLP\FHQQH
]DVRE\GODZ\JHQHURZDQLDEH]X*\WHF]Q\FKGDQ\FK
.ROHMQ\PSUREOHPHPMHVWEUDNPR*OLZRFLZ\NU\FLDLXVXQL
FLDZLHOXEá
GyZ]DUyZQRQDHWapie GHYHORSPHQWXMDNLQDHWDSLHWHVWyZ,ZW\PSU]\SDGNXUyZQLH*WUDFLP\FHQQH]DVRE\
5R]ZL]DQLH PyJáE\ E\ü V\VWHP DXWRPDW\F]QHM JHQHUDFML GDQ\FK $E\ PyJá RQ ]DVSRNRLü
wSHáQLQDV]HSRWU]HE\SRZLQLHQVSHáQLüNLONDSRGVWDZRZ\FK]DáR*H
'DQHZMDNQDMZL
NV]\PVWRSQLXPXV]RGSRZLDGDüGDQ\PUHDOQ\P
3U]\NáDGRZRMH*HOLSU]\JRWRZXMHP\SROVNZLWU\Q
]DMPXMFVL
VSU]HGD*ÄWRSRZHM´PX]yNLWRUHGQLDZLHNXMHMX*\WNRZQLNyZZ\QLHVLHODW]RGFK\OHQLHPVWDQGDUGRZ\PODWDX*\tkownicy o nazwisku 1RZDNE
GVWDQRZLüD.RZDOVNLZV]\VWNLFKX*\WNRZQLNyZVHUZiVX7DNLHLQIRUPDFMHPR*HP\X]\VNDüEH]SRUHGQLRRGNRQVXOWDQWyZQDSRGVWDZLHEDGDU\QNX
OXEZ\NRU]\VWXMFLVWQLHMFHED]\GDQ\FKNOLHQWD
6\VWHPPXVLE\üZ\GDMQ\
*HQHUDFMDGX*HMLORFLGDQ\FKMHVWF]DVRFKáRQQD'ODWHJRQDOH*\WDNRSUDFRZDüDOJRU\WP\LLFK
LPSOHPHQWDFM
DE\ ]PLQLPDOL]RZDü F]DV JHQHUDFML 3RQDGWR SRZLQLHQ RQ E\ü PR*OLZ\ GR REOiF]HQLDLZQDMJRUV]\PSU]\SDGNX]DOH*HüOLQLRZRRGOLF]E\JHQHURZDQ\FKGDQ\FK
6\VWHPPXVLXPR*OLZLDüáDWZUR]EXGRZ
: SU]\SDGNX WZRU]HQLD WHJR W\SX V\VWHPX QLH MHVW PR*OLZH QD HWDSLH DQDOL]\ SU]HZLG]HQLH
ZV]\VWNLFKW\SyZRUD]VSRVREyZJHQHURZDQLDGDQ\FK5R]EXGRZDPR*HSROHJDüQDSU]\NáDGQD
GRGDQLX WDN SURVWHM IXQNFMRQDOQRFL MDN QRZ\ W\S UR]NáDGX VWDW\VW\F]QHJR REVáXJLZDQ\ SU]H]
V\VWHP -H*HOL FKFLHOLE\P\ GR JHQHUDFML GDQ\FK Z\NRU]\VWDü ED]
GDQ\FK NOLHQWD EG( VHUZLV
]HZQ
WU]Q\V\VWHPUyZQLH*PXVLGDZDüPR*OLZRüáDWZHJRGRGDQLDWDNLHJRUR]ZL]DQLD
6\VWHPPXVLZ\VWDZLDü$3,
:FHOXOHSV]HMLQWHJUDFML]QDU]
G]LDPLdeveloperskimi takimi jak np. Eclipse system musi wyVWDZLDü $3, XPR*OLZLDMFH Z\NRQDQLH ZL
NV]RFL RSHUDFML 1D MHJR SRGVWDZLH E
G]LH PR*QD
VWZRU]\üRGSRZLHGQLHZW\F]NL
6áRZQLNVWUXNWXU\±Structure Dictionary
1DOH*\VRELHRGSRZLHG]LHüQDS\WDQLHMDNLHGDQHZHMFLRZHVQDPSRWU]HEQHDE\P\PRJOL
Z\JHQHURZDü GDQH VSHáQLDMFH SRZ\*V]H Z\PDJDQLD $QDOL]XMF SU]\SDGNL X*\FLD L SLHUZV]H
278
Sebastian Wajrych, Adam Pelikant
Z\PDJDQLH V\VWHPX áDWZR ]DXZD*\ü *H SRWU]HEXMHP\ ]ZL
]áHJR RSLVX FKDUDNWHU\VW\NL GDQ\FK
0R*HP\ZW\PFHOXZ\NRU]\VWDüSRSXODUQHUR]NáDG\ VWDW\VW\F]QH L LFK VXSHUSR]\FM
3RWU]HEuMHP\UyZQLH*ÄSRMHPQLND´QD]DSLVDQLHPRGHOXGDQ\FK0DMFFDá\F]DVZSDPL
FLGUXJLHZ\PaJDQLH GRW\F]FH áDWZRFL UR]EXGRZ\ RUD] HODVW\F]QRFL V\VWHPX PR*HP\ ]DXZD*\ü *H MHGQ
z podVWDZRZ\FKVWUXNWXUVSHáQLDMF\FKWH]DáR*HQLDVVáRZQLNL3URSRQXM
]DVWRVRZDQLHVáRZQLND
XPR*OLZLDMFHJRXWZRU]HQLHKLHUDUFKLL3U]\NáDGRZVWUXNWXU
SU]HGVWDZLDWDEHOD
7DEHOD6WUXNWXUDVáRZQLND
Id kolumny
Nazwa kolumny
Typ danych
:DUWRü
GRP\OQD
NULL
1
DIC_ID
NUMBER
Brak
NOT NULL
2
DIC_PARENT_ID
NUMBER
Brak
NOT NULL
3
DIC_TYPE
VARCHAR2(255
BYTE)
Brak
NOT NULL
DIC_DESCRIPTION
VARCHAR2(255
BYTE)
Brak
NULL
5
DIC_DATA_TYPE
CHAR(1 BYTE)
Brak
NULL
DIC_NUMBER_VAL
UE
NUMBER
Brak
NULL
6
DIC_STRING_VALU
E
VARCHAR2(4000
BYTE)
Brak
NULL
7
8
DIC_DATE_VALUE
DATE
Brak
NULL
4
DIC_ID±LGHQW\ILNDWRUSR]\FMLVáRZQLND.ROXPQDNOXF]DJáyZQHJR
DIC_PARENT_ID±LGHQW\ILNDWRUURG]LFDZLHUV]HZVáRZQLNXPRJWZRU]\üKLHUDUFKLH
DIC_TYPE ± W\S VáRZQLND MHVW WR XQLNDWRZ\ áDFXFK WHNVWRZ\ QLH ZL
NV]\ QL* ELWyZ
RNUHODMF\W\SGDQHJRVáRZQLNDQS67RNUHODW\SVáRZQLNDGHILQLXMF\Z
]HáWDEHOL
DIC_DESCRIPTIONRSLVVáRZQLNDMHVWWRáDFXFKWHNVWRZ\GRELWyZVWDQRZLF\RSLV
]QDF]HQLDGDQHJRVáRZQLND3DUDPHWUQLHRERZL]NRZ\
DIC_DATA_TYPE W\S GDQ\FK VáRZQLND MHVW WR SROH W\SX FKDU ZLHONRFL MHGQHJR ]QDNX
0R*HSU]\MPRZDüMHGQ]SRQL*V]\FKZDUWRFL
•
V – dane typu znakowego
•
N – dane typu numerycznego
•
D – dane typu datowego
•
O – dane innego typu;
DIC_NUMBER_VALUE±GDQHW\SXQXPHU\F]QHJRZSU]\SDGNXJG\W\SGDQ\FKVáRZQLND
MHVWXVWDZLRQ\QD
1
EG(
2
SU]HFKRZXMHGDQHQXPHU\F]QHVáRZQLND-HVWWRSDUDPHWUQLHREoZL]NRZ\DOH]DOH*Q\RGZ\EUDQHJRW\SXVáRZQLND
DIC_STRING_VALUEGDQHW\SX]QDNRZHJRZSU]\SDGNXJG\W\SGDQ\FKVáRZQLNDMHVW
XVWDZLRQ\QD
9
EG(
2
SU]HFKRZXMHGDQH]QDNRZHGRELWyZ-HVWWRSDUDPHWUQLHRERZLzNRZ\DOH]DOH*Q\RGZ\EUDQHJRW\SXVáRZQLND
Automatyczne generowanie zawartRFLED]\GDQ\FK
279
DIC_DATE_VALUEGDQHW\SXGDW\ZSU]\SDGNXJG\W\SGDQ\FKVáRZQLNDMHVWXVWDZLRQ\
QD
'
EG(
2
SU]HFKRZXMHGDQHGDW\VáRZQLND-HVWWRSDUDPHWUQLHRERZL]NRZ\DOH]DOH*Q\RG
Z\EUDQHJRW\SXVáRZQLND
3U]\NáDGRZD VWUXNWXUD ]DZLHUDMFD GHILQLFM
WDEHOL &8672056 GOD NWyUHM E
G]LH RGE\ZDáD
VL
JHQHUDFMDLGHILQLFM
JHQHUDFMLGODNROXPQ\%,57+B'$7(SU]HGVWDZLDGLDJUDP
Diagram 1. Definicja podstawowej strukutry w SD
6WRVXMFWHJRW\SXVWUXNWXU
GRGDQLHQRZHJRUR]NáDGXQLHVWDQRZL*DGQHJRSUREOHPX:\VWDrF]\]GHILQLRZDüQRZ\W\SVáRZQLNDLMHJRZ
]á\SRGU]
GQH:GDOV]HMF]
FLDUW\NXáXVWRVRZDá
E
G
VNUyW6'Structure GLFWLRQDU\ZRGQLHVLHQLXGRSRZ\*V]HJRVáRZQLNDVWUXNWury.
6áRZQLNGDQ\FK±'DWDDictionary
.ROHMQ\P ZD*Q\P HOHPHQWHP MHVW PLHMVFHJG]LHSU]HFKRZXMHP\GDQH HZLGHQF\MQH WDNLH MDN
HOHPHQW\DGUHVXLPLRQDQD]ZLVNDLWG3R*GDQ\PMHVWDE\GDQHWDNLHGDZDá\VL
UyZQLH*KLHUDrFKL]RZDüQSSDVWZDÆ miasta Æ ulice.
280
Sebastian Wajrych, Adam Pelikant
Diagram 2. Definicja podstawowej strukutry w DD
:FHOXSU]HFKRZ\ZDQLDWHJRW\SXGDQ\FKPR*HP\UyZQLH*Z\NRU]\VWDüVWUXNWXU\VáRZQLNowe. Wykorzystamy rozbudowany o pola trzech atrybutów SD.
:\VWDUF]\WRMHGQDNGOD]DSLVDQLDZDUWRFLSR]\FMLVáRZQLND]F]
VWRWOLZRFLZ\VW
SRZDQLDL
VXPVNXPXORZDQGODGDQHJRW\SX-H*HOLFKFLHOLE\P\QS]DSLVDüF]
VWRWOLZRüZ\VW
SRZDQLD
SRV]F]HJyOQ\FKQD]ZLVNZND*G\P]ZRMHZyG]WZ]DVDGQ\PE\áRE\XWZRU]HQLHRVREQHMWDEHOLQD
DWU\EXW\ EG( X*\FLH PDFLHU]\ 7DN SRZVWDá VWUXNWXU
E
G]LHP\ RNUHODü PLDQHP VáRZQLND Ganych (Data Dictionary) w skrócie DD.
Algorytm generacji danych
0DP\ MX*]DSLV PRGHOX GDQ\FK L GHILQLFM
JHQHURZDQ\FK GDQ\FK =DVWDQyZP\ VL
WHUD]QDG
DOJRU\WPHPJHQHUDFML3RZLQLHQVNáDGDüVL
]PLQLPXPWU]HFKID]
•
przygotowania
•
generacji danych
•
oczyszczenia struktury
Przygotowanie struktury
:WHMID]LHQDSRGVWDZLHGHILQLFMLPRGHOXGDQ\FKWZRU]RQDMHVWVWUXNWXUDQLH]DZLHUDMFDMHVzF]H *DGQ\FK GDQ\FK 'OD SyO GOD NWyU\FK ]GHILQLRZDQR ZDUWRü ] VHNZHQFML WZRU]RQH V RGSoZLHGQLHVHNZHQFMHLSURFHGXU\Z\]ZDODQH7ZRU]RQHVUyZQLH*WDEHOHSRPRFQLF]H
Generacja danych
:WHMID]LHRGE\ZDVL
ZáDFLZDJHQHUDFMDGDQ\FK(OHPHQWDUQ\P ]GDU]HQLHP MHVWJHQHUDFMD
GDQ\FKGODMHGQHJRSRODZMHGQ\PZLHUV]XGODGDQHMWDEHOL,WDNGODND*GHMWDEHOLn razy (gdzie n
281
Automatyczne generowanie zawartRFLED]\GDQ\FK
WR OLF]ED JHQHURZDQ\FK ZLHUV]\ ]RVWDMH Z\ZRáDQD JHQHUDFMD HOHPHQWDUQD GOD ND*GHM NROXPQ\
tabeli.
Start
Przygotowanie struktury
Oczyszczanie struktury
Utworzenie tabel
Usuwanie sekwencji
Utworzenie sekwencji
Usuwanie procedur wyzwalanych
Utworzenie procedur wyzwalanych
Usuwanie tabel pomocniczych
Utworzenie tabel pomocniczych
Koniec
Generacja danych
'ODND*GHMWDEHOLW
'ODND*GHJRZLHUV]DJHQHUDFMLQ
'ODND*GHMNROXPQ\NWyUDPDQLHXVWDZLRQ
ZDUWRüGRP\OQEG(]sekwencji
*HQHUXMZDUWRüSROD
6\VWHPXPR*OLZLDQDNáDGDQLHJHQHUDFMLW]Q*HPR*HP\Z\JHQHURZDüGDQH]NLONXUy*Q\FK
W\SyZ VáRZQLNyZ OXE UR]NáDGyZ VWDW\VW\F]Q\FK 3RZLHG]P\ *H SU]\WRF]RQD ZF]HQLHM MDNR
SU]\NáDG ZLWU\QD LQWHUQHWRZD UR]V]HU]D RIHUW
R PX]\N
URFNRZ ODW 3UDZGRSRGREQLH ]yVNDP\UyZQLH*NOLHQWyZRNRáRURNX*\FLD]DWHPPXVLP\QDáR*\üGUXJLUR]NáDGVWDW\VW\F]Q\
:W\PFHOX6'XPR*OLZLDGHILQLRZDQLHGODGDQHJRSRODWDEHOLNLONXURG]DMyZJHQHUDFMLJHQHUXMF\FK RF]\ZLFLH WHQ VDP W\S GDQ\FK 1DWRPLDVW VDP DOJRU\WP JHQHUDFML ]RVWDMH Z]ERJDFRQ\
o moGXá GHF\GXMF\ NWyU\ ]H ]GHILQLRZDQ\FK UR]NáDGyZ GOD GDQHJR ZLHUV]D JHQHUDFML Z n-tym
NURNXZ\EUDü
Oczyszczanie struktury
2VWDWQLID]MHVWRF]\V]F]DQLDVWUXNWXU\]H]E
GQ\FKGDQ\FKSRWU]HEQ\FKMHG\QLHGRSURFHVX
JHQHUDFML7DNLPLRELHNWDPLVQSWDEHOHSRPRFQLF]HF]\VHNZHQFMHLtriggery.
Testy prototypów
=DSURSRQRZDQH UR]ZL]DQLH ]RVWDáR VSUDZG]RQH Z SUDNW\FH Z\NRU]\VWXMF SODWIRUP
2UDFOH
J 3U]HSURZDG]RQR UyZQLH* WHVW\ Z\GDMQRFLRZH V\VWHPX RUD] ]EDGDQR ]DOH*QRü
czasu generacji od liczby generowanych rekordów.
282
Sebastian Wajrych, Adam Pelikant
Tabela 1. Konfiguracja URGRZNLVNDWHVWRZHJR
Parametr
:DUWRü
Baza danych
Oracle 10g (10.2.01) z Apache HTTP Server i mod_plsql
System operacyjny
Microsoft Windows XP Professional Wersja 2002 Dodatek Service
Pack 2
Procesor
AMD Athlon XP 2200+ (1.81GHz)
3DPL
üRSHUDF\MQD
1 GB
-DNR SU]\NáDG RPyZLRQD ]RVWDQLH JHQHUDFMD OLF]E ] UR]NáDGHP QRUPDOQ\P =DGDQLHP WHVWX
E\áR]REUD]RZDQLHSU]\URVWXF]DVXJHQHUDFMLOLF]E]UR]NáDGHPQRUPDOQ\PZ]DOH*QRFLRGOLF]E\
NROXPQLOLF]E\JHQHURZDQ\FKUHNRUGyZ:F]DVLHWHVWXZ\JHQHURZDQRáF]QLHUHNRrGyZGODLNROXPQ=DF]\QDMFRGUHNRUGyZQDNRF]F]NURNLHP3U]yEOL*RQ\F]DVWHVWXZ\QLyVáJRG]LQ\PLQXW\
Wykres 1=DOH*QRFLF]DVXJHQHUDFMLOLF]E]UR]NáDGHPQRUPDOQ\PGODNROXPQRGOLF]E\JHQHURZanych wierszy
=RWU]\PDQ\FKZ\QLNyZZLGDü*HF]DVJHQHUDFML]DOH*\ZSURVWSURSRUFMRQDOQLHRGOLF]E\Jenerowanych wierszy.
&LHNDZHZ\QLNLGDMREOLF]HQLDSURFHQWRZHJRSU]\URVWXF]DVXJHQHUDFML cNROXPQZ]JO
GHP
JHQHUDFMLGODMHGQHMNROXPQ\1DMSURFLHMZ\UD]LüWRZ]RUHP
Automatyczne generowanie zawartRFLED]\GDQ\FK
283
Gdzie:
– procentowa zmiana czasu generacji jednej kolumny przy generowaniu n wierszy z c
kolumQDPLZ]JO
GHPF]DVXJHQHUDFMLn wierszy jednokolumnowych.
– czas generacji n wierszy o c kolumnach.
– czas generacji n wierszy jednokolumnowych
Wykres 2=PLDQDF]DVXJHQHUDFMLMHGQHMNROXPQ\Z]DOH*QRFLRGOLF]E\NROXPQ
=DNRF]HQLH
Zbudowanie prototypu systemu PR*OLZLDMFHJRDXWRPDW\F]QJHQHUDFM
GDQ\FKVSHáQLDMFHJR
SRF]WNRZH ]DáR*HQLD SR]ZDOD ZQLRVNRZDü *H PR*OLZH MHVW VWZRU]HQLH SRáQRZDUWRFLRZHJR
V\VWHPXNWyU\SRVLDGDEDUG]RV]HURNLREV]DU]DVWRVRZDQLD1DOH*DáRE\SRVWDZLüQDFLVNQDVWZoU]HQLH PRGXáX XPR*OLZLDMFHJR LQWHJUDFM
] ]HZQ
WU]Q\PL V\VWHPDPL DQDOLW\F]Q\PL SRQLHZD*
SURFHV U
F]QHJR ZSURZDG]DQLD GHILQLFML VWUXNWXU\ MHVW SRQRZQLH SURFHVHP F]DVRFKáRQnym. SysWHPGRFHORZ\ZLQLHQXPR*OLZLDüSRGáF]HQLHGRV\VWHPXDQDOLW\F]QHJRLSREUDQLHRGSRwiednich
LQIRUPDFMLLQDLFKSRGVWDZLHZ\JHQHURZDüGHILQLFM
stuktury i generacji.
Bibliografia
Steven Feuerstein, Charles Dye, John Beresniewicz, 2000. Oracle Builtin Packages. O’REILLY,
http://www.unix.org.ua/orelly/oracle/bipack/index.htm
Joe Celko, 2005-2007. Morgan's Library. Pages Sound Oracle Users Group,
http://www.psoug.org/library.html
Eric W. Weisstein at MathWorld. Electronic doument, 2005
http://mathworld.wolfram.com
Oracle 10g Documentation, 2007
http://www.oracle.com/technology/documentation/index.html
,QWHUQHWRZ\SRGU
F]QLNVWDW\VW\NLStatSoft, Inc. 1984-2005
http://www.statsoft.pl/textbook/stathome.htm

Podobne dokumenty