Môc lôc 2
Lêi giíi thiÖu 4
Ch¬ng I HÖ c¬ së d÷ liÖu quan hÖ vµ ng«n ng÷ hái cã cÊu tróc sql 6
A - HÖ c¬ së d÷ liÖu quan hÖ 6
1. Quan hÖ vµ c¸c phÐp to¸n ®¹i sè quan hÖ 6
2. C¬ së d÷ liÖu 8
3. M« h×nh c¬ së d÷ liÖu quan hÖ 9
4. HÖ qu¶n trÞ c¬ së d÷ liÖu 9
5. HÖ tiªn ®Ò phô thuéc hµm 9
6. C¸c d¹ng chuÈn trong CSDL quan hÖ 11
B. Giíi thiÖu vÒ Ng«n ng÷ hái cã cÊu tróc SQL 13
1. Kh¸i niÖm vÒ ng«n ng÷ SQL 13
2. C¸c ®Æc ®iÓm cña ng«n ng÷ SQL 14
3. C¸c lo¹i c©u lÖnh SQL thao t¸c víi d÷ liÖu cÇn quan t©m khi tèi u 15
Ch¬ng II CSDL ph©n t¸n theo m« h×nh Client - Server cña Oracle 17
A. Kh¸i niÖm vÒ CSDL ph©n t¸n 17
B. M« h×nh xö lý Client-Server 19
C. HÖ qu¶n trÞ CSDL Oracle 21
Ch¬ng III Ph¬ng ph¸p tèi u ho¸ trong HÖ CSDL Oracle 26
A. C¸c kh¸i niÖm cÇn biÕt ®Ó tèi u ho¸ 26
1. Kh¸i niÖm vÒ tèi u ho¸ 26
2. ChiÕn lîc tèi u trªn c¸c trªn c¸c biÓu thøc quan hÖ 27
3. C¸c kiÓu ph©n líp trong CSDL Oracle 28
4. C¸c kiÓu kÕt nèi trong Oracle 32
5. C¸c ph¬ng thøc truy nhËp d÷ liÖu 34
6. C¸c luËt tèi u 42
B. Ph©n tÝch c¸ch thi hµnh c©u lÖnh SQL 46
C. C¸c bíc tèi u ho¸ 48
1. §Þnh gi¸ biÓu thøc hoÆc ®iÒu kiÖn 49
2. ChuyÓn d¹ng c©u lÖnh 53
3. Tèi u ho¸ c©u lÖnh truy nhËp trªn VIEW 55
4. Chän luËt ®Ó tèi u ho¸ 57
5. Chän ph¬ng thøc truy nhËp tíi hµng 58
6. Chän thao t¸c kÕt nèi 58
D. KÕt luËn vÒ ph¬ng ph¸p tèi u trong Oracle 60
1. Tèi u b»ng viÖc thay ®æi c¸c thùc thÓ 60
2. Tèi u c¸c Table space 63
3. Tèi u vïng nhí hÖ thèng SGA 64
4. Tèi u ho¸ sö dông Index 66
5. Tèi u b»ng thay ®æi c©u lÖnh SQL 67
6. Thªm c¸c chØ thÞ thùc hiÖn vµo trong c©u lÖnh 68
Ch¬ng IV Giíi thiÖu vµ tèi u hãa c©u lÖnh SQL trong hÖ tÝnh ho¸ ®¬n vµ qu¶n lý kh¸ch hµng c«ng ty cÊp níc Thµnh phè Hå chÝ minh 73
A. Giíi thiÖu vÒ hÖ ch¬ng tr×nh TÝnh ho¸ ®¬n vµ qu¶n lý kh¸ch hµng 73
1. §Æt vÊn ®Ò 73
2. Ph©n tÝch bµi to¸n 75
3. Gi¶i quyÕt bµi to¸n 82
B. C¸ch thøc t×m ra nh÷ng lÖnh cÇn tèi u trong phÇn mÒm 83
C. Thùc hiÖn tèi u phÇn mÒm Qu¶n lý ho¸ ®¬n níc 85
1. Tèi u b»ng sö dông Index 85
2. Tèi u b»ng thªm chØ thÞ thùc hiÖn vµ thay ®æi c©u lÖnh SQL 89
KÕt luËn 91
Tµi liÖu tham kh¶o 93
Phô lôc 94
Phô lôc A C¸c lÖnh ph©n tÝch ®èi tîng vµ ph©n tÝch c©u lÖnh 94
Phô lôc B Tèi u c©u lÖnh trªn view Trong phÇn mÒm tra cøu v¨n b¶n ph¸p qui 95
Phô lôc C giíi thiÖu qu¸ tr×nh tèi u c©u lÖnh kÕt nèi trong phÇn mÒm tra cøu v¨n b¶n ph¸p qui. 102
Phô lôc D Tèi u ho¸ b»ng sö dông Index kÕt hîp víi Hint Text Trong phÇn mÒm Tra cøu V¨n b¶n Ph¸p qui 106
Trong t×nh h×nh hiÖn nay c¸c doanh nghiÖp cã nhiÒu chi nh¸nh ®Æt ë nhiÒu n¬i víi khèi lîng d÷ liÖu lín, ®a ngêi dïng, thêng sö dông c¬ së d÷ liÖu ph©n t¸n. Do ®ã c¸c phÇn mÒm m¸y tÝnh hç trî nghiÖp vô kinh doanh cña c¸c doanh nghiÖp còng ph¶i ®îc tæ chøc vµ sö dông hÖ ph©n t¸n mét c¸ch hîp lý.
Tuy nhiªn tèc ®é xö lý cña c¸c phÇn mÒm qu¶n lý cã khèi lîng d÷ liÖu lín n»m ph©n t¸n sÏ trë nªn v« cïng chËm, kh«ng ®¸p øng ®îc c¸c yªu cÇu cña ngêi sö dông. §iÒu nµy ®ßi hái c¸c nhµ ph¸t triÓn phÇn mÒm kh«ng nh÷ng ph¶i x©y dùng ®îc nh÷ng phÇn mÒm lín, ®a ngêi dïng mµ cßn ph¶i kh«ng ngõng nghiªn cøu vµ ®a ra c¸c gi¶i ph¸p tèi u ho¸ c©u lÖnh, nh»m tõng bíc n©ng cao tèc ®é xö lý vµ gi¶m gi¸ thµnh cña phÇn mÒm.
Qua t×m hiÓu vµ nghiªn cøu qu¸ tr×nh x©y dùng mét sè phÇn mÒm lín ë ViÖt Nam th× qu¸ tr×nh tèi u ho¸ c©u lÖnh cña c¸c HÖ ch¬ng tr×nh rÊt cã ý nghÜa v× kinh phÝ ®Çu t cña c¸c doanh nghiÖp cho c¸c thiÕt bÞ phÇn cøng bíc ®Çu cßn rÊt h¹n chÕ. Cho nªn gi¶i ph¸p tèi u ho¸ ®Õn tõng c©u lÖnh cµng trë nªn quan träng h¬n trong viÖc ®¶m b¶o sù tån t¹i vµ ph¸t triÓn cña phÇn mÒm. §iÒu nµy lu«n lu«n cã ý nghÜa lín ngay c¶ khi c¸c yªu cÇu vÒ phÇn cøng ®îc ®¸p øng v× chØ cÇn mét c©u lÖnh kh«ng ®îc tèi u sÏ lµm t¨ng thêi gian ch¹y rÊt nhá nhng khi trong hÖ ch¬ng tr×nh lín, ®a ngêi dïng th× c©u lÖnh ®ã cã thÓ ®îc thùc hiÖn lÆp l¹i nhiÒu lÇn vµ thêi gian t¬ng øng chung cña c¶ hÖ thèng sÏ t¨ng lªn rÊt nhiÒu.
Trong qu¸ tr×nh tèi u ®èi víi mét phÇn mÒm, vÊn ®Ò ®Æt ra lµ lµm sao cã thÓ c¶i thiÖn hiÖu suÊt cña phÇn mÒm trong ®iÒu kiÖn hiÖn cã vµ thêi gian thùc thi kh«ng t¨ng lªn qu¸ nhanh khi d÷ liÖu t¨ng lªn nhiÒu (cã thÓ tõ hµng chôc ngµn ®Õn hµng triÖu b¶n ghi).
§Ò tµi cña luËn v¨n lµ “Ph©n tÝch vµ tèi u ho¸ c©u lÖnh SQL trªn HÖ CSDL ORACLE”
1. HÖ CSDL vµ ng«n ng÷ SQL.
2. KiÕn tróc CSDL Oracle.
3. T×m hiÓu qu¸ tr×nh thùc hiÖn c©u lÖnh SQL vµ ®a ra mét sè nguyªn nh©n lµm c©u lÖnh thùc hiÖn kÐm hiÖu qu¶.
4. C¸c ph¬ng ph¸p tèi u ho¸ c©u lÖnh SQL trªn CSDL Oracle.
5. Thùc hiÖn tèi u trªn HÖ tÝnh ho¸ ®¬n vµ qu¶n lý kh¸ch hµng cña c«ng ty cÊp níc TP HCM, HÖ tra cøu V¨n b¶n ph¸p qui trªn Web.
Träng t©m cña luËn v¨n lµ ®Ò xuÊt c¶i tiÕn c¸c ph¬ng ph¸p tèi u ho¸ c©u lÖnh SQL vµ c¸c c©y ph©n tÝch c©u lÖnh SQL nh»m ®a ra c¸c chØ môc (Index) thÝch hîp, t¸c ®éng ®Õn qu¸ tr×nh thùc hiÖn lÖnh lµm t¨ng tèc ®é ch¬ng tr×nh.
Bíc ®Çu nh÷ng c¶i tiÕn mµ luËn v¨n ®Ò xuÊt ®· thu ®îc nh÷ng kÕt qu¶ ®¸ng khÝch lÖ nh t¨ng tèc ®é thùc hiÖn lªn kho¶ng ba lÇn víi phÇn mÒm TÝnh ho¸ ®¬n vµ t¨ng lªn hµng chôc lÇn ®èi víi phÇn mÒm tra cøu V¨n b¶n ph¸p qui. H¬n thÕ nh÷ng kÕt qu¶ nghiªn cøu cña luËn v¨n vÒ ph¬ng ph¸p tèi u cã thÓ dÔ dµng ¸p dông cho c¸c phÇn mÒm CSDL kh¸c.
Cuèi cïng em ch©n thµnh c¶m ¬n sù hç trî vµ híng dÉn tËn t×nh cña thÇy gi¸o Hµ Quang Thôy, thÇy TrÇn Xu©n ThuËn, anh Lª Huy, anh Vò M¹nh Cêng, chÞ Hoµng A Na cïng toµn thÓ c¸c thÇy gi¸o, c« gi¸o khoa C«ng NghÖ Th«ng Tin, c¸c anh chÞ nh©n viªn C«ng ty CSE vµ c¸c b¹n ®· gióp ®ì em rÊt nhiÒu trong qu¸ tr×nh thùc tËp, nghiªn cøu vÒ ®Ò tµi vµ hoµn thµnh luËn v¨n nµy.