AP»PDBMakerªº·f°t ¡V Performance Tuningªì±´

1.      «e´£°²³]

§A¬°¹Ï®ÑÀ]ªººÞ²z­û¡A¯à¦b³Ì§Öªº³t«×§ä¨ìÅU«È©Ò­nªº¸ê®Æ¡A¤]¯à»á¨ã¥©«ä¦a³]­p¤@¨Ç¤èªk¡A¥[§Ö§ä®Ñªº³t«×¡C

(1)   ¤u§@ªºÀô¹Ò¡G

  • ¹Ï®ÑÀ]¤º¦@¦³¤T¼h¼Ó¡A¨C¼Ó³£¦³¤@¤j°ïªº®Ñ¬[¡AÂîѭp¦³500¸U¥»¡C
  • ÅU«È¸ß°Ýªº°ÝÃD¤d©_¦Ê©Ç¡A±q¡u§Ú­n­É­Ê¤Ñ±OÀs°O¡v¡A¨ì¡u¦³¤@¥»®Ñ¡A§@ªÌ©m¶À¡A¦³ÂI¹³¬O°¸¹³¦Û¶Ç¤@Ãþªº¡v¡F¦³¤H¹ï©ó¦Û¤v­n­Éªº®Ñ«Ü²M·¡¡A¦³¤H«h¬O¤°»ò³£«ÜÁU½k¡C
  • ¦³¤@­Ó¤u§@¥­¥x¡A¥ô¦ó¸ê®Æ¤Wªº¬d¸ß°Ê§@©Î¥æ¥Iµ¹«È¤áªº®ÑÂÇ¡A³£¥²¶·¥ý©ñ¦b¤u§@¥­¥x¤W¡A³o­Ó¥­¥x³Ì¤j´N¥u¯à°ï©ñ3000¥»®Ñ¡C
  • ¨C¥»®Ñªº­¶¼Æ³£¬O500­¶¡C
  • ¨C¤@¥»®Ñ¡A¤£½×ÅU«È­n¨Dªº¦h»ò¤£©ú½T¡A¤@©w³£­n§ä¨ì¡C

¸Õ¥Î¤èªk¡A¥i¥H¦b³o¼ËªºÀô¹Ò¤U¡A¨Ó´£ª@·j´M®ÑÂǪº®Ä²v¡C

Databaseªº­ì²z¡A»P¤W­zªº±¡§Î»á¬°Ãþ¦ü¡A¨ä¤¤©Ò¿×ªº¤T¼hÀ]ÂáA«üªº¬O¹ê»Ú¦s©ñ¸ê®ÆªºµwºÐ©Î¨ä¥LÀx¦s´CÅé¡A¡u¤u§@¥­¥x¡v«üªº¬O°O¾ÐÅé¡C©Ò¦³¸ê®Æ®wªº·j´M©Î¶Çµ¹«È¤áºÝªº¸ê®Æ¡A³£¥²¶·¤@©w­n¥ý©ñ¦b°O¾ÐÅé¡A·j´M°Ê§@·|·l¯ÓCPU¸ê·½¡A¦ý¸ê®Æªº³B²z¡B·j´M³£¥²¶·¥ý©ñ¦b°O¾ÐÅ餤¡A¦¹³B·N«ü°O¾ÐÅ馳3000­Ó³æ¦ì(pages)¡C

©Ò¿×¡u«È¤á¸ß°Ý¡v¡A«üªº«K¬O¥Ñ«È¤áºÝ¨Óªº¦U¦¡¦U¼Ëªºquery¡A¦ÓµL½×«È¤áºÝªºquery¦p¦ó¡A¸ê®Æ®w¤@©w±o±N¸ê®Æ§ä¨ì¡A¨Ã¶Ç¦^«È¤áºÝ¡C

 

(2)   «Ø¥ß¯Á¤Þ¡G

¨Ó§ä®ÑªºÅU«È¡A¦h¹ï©ó­n§ä´Mªº®ÑÂÇ¡A¤j·§³£¦³­ÓÃСA©Ò¥H¦h¬Oª½±µ¥H¡u®Ñ¦W¡v¡B¡u§@ªÌ¡v¡A³oÃþªºÃöÁä¦r¨Ó¬d¸ß¡A¤[¦Ó¤[¤§¡A§A«K·Q¨ì¡A±N¤@¨Ç­«­nªºÃöÁä¦r¡A½s¿è¦¨¥U¡A·í§@¯Á¤Þ¡A¦p¦¹¤@¨Ó¡A±N¥i¥[³t¬d¸ßªº³t«×¡C¦p¤Uªí¡G

ªí¤@¡B®Ñ¦W¯Á¤Þªí

®Ñ¦W

©Ò©ñ¦ì¸m

§Ú¦b¦º¨cªº¤é¤l

²Ä¤@¼Ó¡BB®Ñ¬[¡B²Ä¤T¼h

­Ê¤Ñ±OÀs°O

²Ä¤G¼Ó¡BC®Ñ¬[¡B²Ä¤­¼h

¯º¶Æ¦¿´ò

²Ä¤T¼Ó¡BF®Ñ¬[¡B²Ä¤T¼h

DBAºÞ²z¤â¥U

²Ä¤T¼Ó¡BT®Ñ¬[¡B²Ä¤T¼h

©Ç³Õ¤h»P¾÷±ñ«½«½

²Ä¤G¼Ó¡BS®Ñ¬[¡B²Ä¤G¼h

²§°ì

²Ä¤@¼Ó¡BZ®Ñ¬[¡B²Ä¥|¼h

ªí¤G¡B§@ªÌ¯Á¤Þªí

§@ªÌ

©Ò©ñ¦ì¸m

§H¦W

²Ä¤@¼Ó¡BB®Ñ¬[¡B²Ä¤T¼h

ª÷±e

²Ä¤G¼Ó¡BC®Ñ¬[¡B²Ä¤­¼h

ª÷±e

²Ä¤T¼Ó¡BF®Ñ¬[¡B²Ä¤T¼h

DBMaker Support

²Ä¤T¼Ó¡BT®Ñ¬[¡B²Ä¤T¼h

®q¤s©ú

²Ä¤G¼Ó¡BS®Ñ¬[¡B²Ä¤G¼h

¬f·¨

²Ä¤@¼Ó¡BZ®Ñ¬[¡B²Ä¥|¼h

¥Ñ©ó¦³500¸U¥»ÂîѡA©Ò¥H§A¥²¶·¹ï¡u®Ñ¦W¯Á¤Þªí¡v¡B¡u§@ªÌ¯Á¤Þªí¡v¦U½s500¸Uµ§°O¿ý¡A°²³]¡u®Ñ¦W¯Á¤Þªí¡v¤@­¶¥i°O¸ü50µ§¡u®Ñ¦W-¦ì¸m¡v°O¿ý¡A500¸Uµ§°O¿ý´N­n¥Î¥h10¸U­¶(500¸U/50µ§)¡A¦Ó¦b«e´£¤¤¡A¤@¥»®Ñ¥u¯à¦³500­¶¡A³Ì«á«Ø¤F200¥»ªº¡u®Ñ¦W¯Á¤Þªí¡v(10¸U/500­¶)¡C

¦b¸ê®Æ®wªº·j´M¹Lµ{¤¤¡A¤]¬O±`¨Ï¥Î¡u¯Á¤Þ¡v¨Ó¥[³t¬d¸ß®Ä²v¡A¦p¤W­±¤Þ¿Ù¡A©Ò¸I¨ìªº°ÝÃD¡A¤]»P¤W­z¬Û¦P¡A¨Ò¦p¡A¯Á¤Þªí¤]¬O¤@ºØ¸ê®Æ¡A¤]¶·¦û¥ÎªÅ¶¡¡CDBMakerªº¯Á¤Þªí¨Ï¥ÎB+ Tree¬[ºc¡A·|¥ý±NÁä­È(key)±Æ§Ç¡A¦A±NÁä­È¤Î¸ê®ÆÀx©ñ¦ì¸m(oid)¦¨¹ï°O¿ý¤U¨Ó¡A¦bÅÞ¿è¬[ºc¤W¡A»P¤W­zªí®æ¤Q¤À¬Û¦ü¡C

¦b³oùØ¡A§Ú­Ì¥i¥H·Q¦¨¡A500¸U¥»ÂîÑ(pages)¡A°w¹ï¨ä¤¤¤@Äæ§@¯Á¤Þ¡A²£¥Íªº¯Á¤Þªí¬°200¥»(pages)

(3)   ª¬ªpºt½m

²{¦b¨Ó¬Ý·sªº§@·~¬yµ{¡A·í¦³¤H¸ß°Ý¡G¡u§Ú­n­Ê¤Ñ±OÀs°O¡v®É¡A§A­n¡G

  • ¨ì¤@¼Ó±N200¥»ªº¡u®Ñ¦W¯Á¤Þªí¡v®³¥X¨Ó¡A©ñ¨ì¤u§@¥­¥x¤W¡A
  • ¬d¸ß¡u­Ê¤Ñ±OÀs°O¡v©Ò¦b¦ì¸m¡A
  • ¦A¨ì©Ò©ñ¦ì¸m¤¤¡A±N¡u­Ê¤Ñ±OÀs°O¡v®³¥X
  • ¥æ¤©«È¤á¡C

¥Ñ©ó©Ò¦³ªº¬d¸ß¤u§@³£¥²¶·¦b¤u§@¥­¥x¤W¡A©Ò¥HÀ³¾¨¥i¯à±N®Ñ©ñ¦b¤u§@¥­¥x¤W¡A¥[³t¬d¸ß¡A¨Ò¡G·í¤U¤@­Ó«È¤á¦A°Ý¡G¡u©Ç³Õ¤h»P¾÷±ñ«½«½¡v®É¡A¦]¬°¤§«e¤w¸g¦³¤H¥Î¡u®Ñ¦W¡v¨Ó¬d¸ß¹L¤F¡A§A´N¥i¬Ù²¤¤W­z²Ä¤@­Ó¨BÆJ¡Aª½±µ±q¤u§@¥­¥x¤W¶}©l½¾\¡u®Ñ¦W¯Á¤Þªí¡v¡C

¯Á¤Þ¦p¦P¨ä¥L¸ê®Æ­¶¤@¼Ë¡A¥²¶·¥ý¸ü¤J¦Ü°O¾ÐÅé«á¡ACPU¤~¯à°w¹ï¨ä¤¤ªº¤º®e¡A¶i¦æ¡u¤ñ¸û¡v¹Bºâ¡F¦Ó¥Ñ©óºÏºÐ³t«×·¥ºC¡ADBMaker·|±N±`¥Îªº¸ê®Æ­¶(§t¯Á¤Þ­¶)¾¨¶q©ñ¦b°O¾ÐÅ餤¡A¦p¦¹¤@¨Ó¡A·í­n¦A·j´M¬Y¸ê®Æ­¶®É¡A´N¦³¬Û¹ï¸û¤jªº¥i¯à¡A¥i¥H¦b°O¾ÐÅ餤§ä¨ì¡A¦Ó¤£¶·¨ìºÏºÐ¤W¥h·j´M¡C

¤è¤~»¡©úªº¬O¥Î¡u®Ñ¦W¯Á¤Þªí¡v¨Ó§@¬d¸ß¡A°²³]²{¦b¦³­Ó«È¤á¡A­n´M§ä§@ªÌ¬°¡uª÷±e¡vªº©Ò¦³ÂîѡA»P¤W­z¬Û¦P¡A·|§Q¥Î¡u§@ªÌ¯Á¤Þªí¡v§ä¨ìª÷±e§@µÛªº©Ò¦³¤p»¡¡F¦ý­Y¬O«È¤á¸ß°Ý¡G¡u§Ú­n§äª÷±e©Ò§@¡A¤º®e¦³¡y¦¨¦N«ä¦½¡zªº®ÑÂÇ¡v©O??

³o®Éªº§@ªk·|Åܦ¨¡G

  • ¥ý¨ì¤@¼Ó±N200¥»ªº¡u§@ªÌ¯Á¤Þªí¡v®³¥X¨Ó¡A©ñ¨ì¤u§@¥­¥x¤W¡A
  • ¬d¸ß¡u§@ªÌª÷±e¡vªº®ÑÂǤΩҦb¦ì¸m
  • ¦A¨ì©Ò©ñ¦ì¸m¤¤¡A±N©Ò¦³ª÷±e©Ò§@ªº®ÑÂÇ®³¥X¡A©ñ¨ì¤u§@¥­¥x¤W
  • ¦b¤u§@¥­¥x¤W¬d¸ß©Ò¦³ªº®ÑÂÇ¡A§ä´M­þ¤@¥»¦³¡u¦¨¦N«ä¦½¡v¤º®e
  • ¥æ¤©«È¤á¡C

·í¤@­Óquery¬°¡G¡uselect * from books where §@ªÌ=¡¦ª÷±e¡¦ and ¤º®e contains ¡¥¦¨¦N«ä¦½¡¦¡v¡A­Y¬O¡u§@ªÌÄæ¦ì¡v¤w¦³¯Á¤Þ¡ADBMaker¤]·|¥ý¥Î¯Á¤Þ¡A§â²Å¦X¡u§@ªÌ=ª÷±e¡vªº¸ê®Æ¥ý¬D¥X¡C±µ¤U¨Ó¡A¹ï³o¨Ç³Q¬D¥Xªº¸ê®Æ­¶¡A¦A¤ñ¹ï¬O§_¦³¡ucontain ¦¨¦N«ä¦½¡v¡C

³oùØ­nª`·Nªº¬O¡A²Ä¤@¡B¦b±ø¥ó§PÂ_®É¡A¤£¬O¥u¦³·j´M¯Á¤Þ­¶¡A¯Á¤Þ­¶¯à¤j´T¨O°£¤£¶·­nªº·j´M°Ê§@¡A¬°¤F²Å¦X¡ucontain ¦¨¦N«ä¦½¡v¡AÁÙ¬O­n¹ê»Ú§ì¸ê®Æ­¶(´N¦p¤W¤å¥hÀ]Âî³¹ê»Úªº®ÑÂǤ@¼Ë)¡C

²Ä¤G¡B¦b§ì¨ú¸ê®Æ®É¡A¤@©w±o¦A¥h¹ê»Ú§ì¨ú¸ê®Æ­¶¡A©Ò¥H¤W­±ªºquery§¹¦¨«á¡A·|¥X²{ªºµ²ªG¥i¯à¬O¡G

§@ªÌ ¥Xª©¤é´Á ®Ñ¦W      ¥Xª©ªÀ        ºK­n ¡K
ª÷±e 1971/5/4 ¤jºz­^¶¯¶Ç »·¬y ¡K

¦pªG¤@­Óquery¬O¡uselect §@ªÌ from books where §@ªÌ like ¡¥ª÷%¡¦¡v

·íµM¤]·|¥ý±N§@ªÌ¯Á¤Þ¸ü¤J°O¾ÐÅé¡AµM«á¦b¯Á¤Þ­¶¤¤§ä´M²Å¦X±ø¥óªº¡A¦ý³o­Óquery´NµL¶·¦A¥h§ì¡u¸ê®Æ­¶¡v¡A­ì¦]¦b©ó³o­Óquery­nªº¥u¬O¡u§@ªÌ¡v¡A¦Ó¤£¬O¡u¥þ³¡Äæ¦ì¡v¡A¦Ó§@ªÌªº¸ê°T¤w°O¿ý¦b¯Á¤Þ­¶¤¤¤F¡C©Ò¥H¤£¶·²£¥Í§ì¨ú¸ê®Æ­¶ªº°Ê§@¡C

¤@­Óqueryªºµ²ºc¤¤¡Aselect [Projection] from table_name where [Predicate]¡AÀHµÛProjection¡BPredicateªº¤£¦P¡A«K·|³y¦¨¹ê»Ú§ì¨ú¸ê®Æ°Ê§@ªº¤£¦P¡C¨Ï¥ÎªÌµL¶·¬°¦¹¾á¤ß¡ADBMakerªº¤ÞÀº·|­t³d³oºØ·j´M°Ê§@ªº±±¨î¡A¦ý¨Ï¥ÎªÌ¶·¤F¸Ñ³oºØÆ[©À¡A¦b¹J¨ìquery¹LºC©Î¨t²Î®Ä¯à½Õ¾ã®É¡A¤è¯àª¾¹D±q¦ó³BµÛ¤O¡C

°Ê°Ê¸£¡A¸Ó«ç»ò¥h·j´M¥H¤UÅU«Èªº­n¨D¡G

(1)    «È¤á¸ß°Ý¡G¡u§Ú­nª÷±eªº¡i¤jºz­^¶¯¶Ç¡j¡v(§@ªÌ¡B®Ñ¦W)®É¡A·|«ç»ò§@?

(2)    «È¤á¸ß°Ý¡G¡u§Ú­n®Ñ¦W¦³¡y¤j¡z³o­Ó¦r¡A¦Ó§@ªÌ©m¡iª÷¡jªº®Ñ¡v

(3)    «È¤á¸ß°Ý¡G¡u§Ú­n®Ñ¦W¦³¡y¤j¡z³o­Ó¦r¡A§@ªÌ©m¡yª÷¡z¡A¬ù1960-1980¦~¶¡¥Xª©¡A®Ñªº¤º®e§t¦³¡u§º´Â¡v¡B¡u¦¨¦N«ä¦½¡vµ¥¦r¡A»ù¿ú¬ù¦b300¤¸¦Ü400¤¸¶¡¡v

ª`·N¡A²{¦b¤âÃä¤w¦³¡u§@ªÌ¯Á¤Þ¶°¡v¡B¡u®Ñ¦W¯Á¤Þ¶°¡v¨â®M¤â¥U¡A¦U­p200¥»¡A¦b¦¹«e´£¤U¡A¥i¦A½s¦¨¨ä¥L¯Á¤Þ¡A©Î¬O¨ä¥L¤èªk¡A¥Øªº´N¬O­n¾¨³t¦a§ä¨ì·Q­nªº®ÑÂÇ¡C

(1)    ª÷±eªº¡i¤jºz­^¶¯¶Ç¡j¡G¦b¦¹¸ß°Ý¤U¡A§A¥i¥H¥h§ä¡u§@ªÌ¯Á¤Þ¶°¡v¡A¤]¥i§ä¡u®Ñ¦W¯Á¤Þ¶°¡v¡A¥i¥H·Q¨£¡A±q¡u®Ñ¦W¯Á¤Þ¶°¡v¶}©l§ä´M°_¡A·|¤ñ¡u§@ªÌ¯Á¤Þ¶°¡v¨Ó±o¦n¡A¦]¬°¥i¯à±q®Ñ¦W¯Á¤Þ¶°¡A¥i¥Hª½±µ§ä¨ì10¥»¡u¤jºz­^¶¯¶Ç¡v¡A(ª`·N¡A®Ñ¦W¯Á¤Þªí¤¤¨Ã¥¼°O¿ý§@ªÌ¦W)¡A¦A¨ì¹Ï®Ñ¼Ó¼h¤¤§ä¨ì¬Û¹ïªº®ÑÂÇ¡A¬Ý¬Ý³o¨Ç®Ñªº§@ªÌ¬O§_¬°¡yª÷±e¡z¡A­Y¬O¡A«K§ä¨ì§¹¥þ²Å¦XÅU«È»Ý¨D(§@ªÌ¡B®Ñ¦W)ªº®ÑÂÇ¡C
¬Û¹ï¦a¡A­Y¬O¥h§ä¡u§@ªÌ¯Á¤Þªí¡v¡A¥i¯à·|§ä¥X200¦h¥»¥Ñª÷±e¼¶¼gªº¤p»¡¡A¦¹®É¥h¹Ï®Ñ¼Ó¼h¤¤¡A§ä¨ì¬Û¹ïªº®ÑÂÇ¡A¦A¥h¬Ý¬Ý®Ñ¦W¬O§_¬°¡u¤jºz­^¶¯¶Ç¡v¡A­Y¬O«h²Å¦X»Ý¨D¡C
¬Û¸û¨âªk¡A¦ÛµM¬O¥Î¡u®Ñ¦W¯Á¤Þ¶°¡v¸û¦n

¦b©w¸q¯Á¤Þ®É¡A¦ÛµM¤]¬O¥H¡u±Æ°£®ÄªG¡v(filter effect)¤jªº¬°¨Î¡A¦b±ø¥ó§PÂ_¹Lµ{¤¤¡A¨Ã¤£¬O¥u·j´M¯Á¤Þ­¶¡A¦Ó¬O¦³¥i¯à¶i¤@¨B·j´M¸ê®Æ­¶¡A©Ò¥H­n·Q¿ìªkÅý²Ä¤@¦¸·j´M¯Á¤Þ­¶®É¡A¾¨¥i¯à²Ä¤@®É¶¡±Æ°£©Ò¦³¡u¤£¥i¯à¡vªº¸ê®Æ¡A¤W­z¤¤¡A§@ªÌªº±Æ°£®ÄªGÅãµM´N¨S¦³®Ñ¦W¦n¡A¤]¥i¥H·Q§@¡A®Ñ¦W¤ñ¸û¡uunique¡v

(2)    ®Ñ¦W¡y¤j¡z¦r¡A§@ªÌ©m¡iª÷¡j¡G¨ä¹ê¤W­±ªº¼@¥»¤¤¡AÁÙ¦³¥t¥~¤@­Ó¤èªk¡A´N¬O¦A¥h«Ø¥ß¤@­Ó¡u®ÑÂÇ-§@ªÌ-¯Á¤Þ¶°¡v¡A¨º»ò³o­Óªí®æ·|¦p¤Uªí©Ò¥Ü¡G

ªí¤T¡B®Ñ¦W-§@ªÌ-¯Á¤Þªí

    ®Ñ¦W

    §@ªÌ

    ©Ò©ñ¦ì¸m

    §Ú¦b¦º¨cªº¤é¤l

    §H¦W

    ²Ä¤@¼Ó¡BB®Ñ¬[¡B²Ä¤T¼h

    ­Ê¤Ñ±OÀs°O

    ª÷±e

    ²Ä¤G¼Ó¡BC®Ñ¬[¡B²Ä¤­¼h

    ¯º¶Æ¦¿´ò

    ª÷±e

    ²Ä¤T¼Ó¡BF®Ñ¬[¡B²Ä¤T¼h

    DBAºÞ²z¤â¥U

    DBMaker Support

    ²Ä¤T¼Ó¡BT®Ñ¬[¡B²Ä¤T¼h

    ©Ç³Õ¤h»P¾÷±ñ«½«½

    ®q¤s©ú

    ²Ä¤G¼Ó¡BS®Ñ¬[¡B²Ä¤G¼h

    ²§°ì

    ¬f·¨

    ²Ä¤@¼Ó¡BZ®Ñ¬[¡B²Ä¥|¼h

    ¦P¼Ë¦a¡A³o­Óªí®æ±N¨â­Ó­«­nªºÃöÁä¦r¶°µ²¦¨¯Á¤Þªí¡A»P(1)¬Û¦Pªº¸ß°Ý(ª÷±eªº¡i¤jºz­^¶¯¶Ç¡j)¡A¦b³o­Ó³]©w¤U¡A¥u­n·j´M¤@¦¸¡A«K¥i§ä¨ì¥¿½Tªºµ²ªG¡A¦]¬°§A¤£»Ý§â¹ê»Ú®ÑÂÇ·h¨ì¤u§@¥­¥x¤W¡A¤~¨Ó¤ñ¹ï¡u§@ªÌ¡v¡B¡u®ÑÂÇ¡v¬O§_¥¿½T¡C
    ¦ý­ì¨Ó¤@¥»¯Á¤Þ¥u»Ý200¥»¡A²{¦b¦]¬°¤@µ§°O¿ýÅܦ¨­ì¨Óªº3/2­¿¡A©Ò¥H³o¥»¡u®Ñ¦W-§@ªÌ-¯Á¤Þªí¡v¡A²{¦b«h»Ý­n300¥»¡A·Q¤@·Q¡A¨Æ¹ê¤W¡A¨Ã¤£¬O·Q¹³¤¤¨º»ò¬Ù¨Æ¡A¦]¬°¨Ï¥Î¡u®ÑÂÇ-¯Á¤Þªí¡v¡A¥u­n®³¨ú200¥»(¯Á¤Þ)+10¥»(¹ê»Ú®ÑÂÇ)¡A¤]³\§ä´M³o10¥»«á¡A¯u¥¿²Å¦X§@ªÌ¬°¡uª÷±e¡vªº¡A¥u¦³7¥»¡F¦ý¨Ï¥Î¡u®ÑÂÇ-§@ªÌ-¯Á¤Þªí¡v¡A«h­n®³¨ú300¥»(¯Á¤Þ)+7¥»(¹ê»Ú²Å¦Xªº®ÑÂÇ)¡C

    ¦³³\¦hSA¡A¦b³]­p¤§ªì¡A±N©Ò¦³query¥i¯à¥Î¨ìªºÄæ¦ì¡A³£¤@¤@³]©w¦¨¯Á¤Þ¡C¥Ñ¤W­zªº±Àºt¥i¥H¬Ý¥X¡A³o¼Ëªº§@ªk¤£¨£±o©ú´¼¡A²z½×¤W¡ADBMaker·|±q³Ì²Å¦Xªº¯Á¤Þ¶}©l·j´M(¦p¤W­zªº®ÑÂÇ-§@ªÌ¯Á¤Þ)¡A¦ý·j´M©Òªáªº¤u¤Ò¡A«oÁÙ¤£¦p¥Î³æ¤@ªº§@ªÌ¯Á¤Þ¨Ó±o§Ö¡C¦b³]­p¯Á¤Þ®É¡A¥²¶·­n±N³o¨Ç¦]¯À¦Ò¶q¦b¤º¡A½Æ¦XÁ䦳®É·|³y¦¨¯Á¤ÞÅܤj¡A¬Æ¦Ü¹LªÎ¡A I/O¥[­«ªºµ²ªG¡A¤Ï¦Ó©ìºC¤Fperformance¡C

     

    (3)    ®Ñ¦W¦³¡y¤j¡z³o­Ó¦r¡A§@ªÌ©m¡yª÷¡z¡A¬ù1960-1980¦~¶¡¥Xª©¡A®Ñªº¤º®e§t¦³¡u§º´Â¡v¡B¡u¦¨¦N«ä¦½¡vµ¥¦r¡A»ù¿ú¬ù¦b300¤¸¦Ü400¤¸¶¡¡G¹³Ãþ¦ü½ÆÂøªº­n¨D¡A±`±`·|Åý§A¤£ª¾¦p¦ó¬O¦n¡F³Ì²Âªº¤èªk¡A«K¬O§âÀ]Âêº500¸U¥»®Ñ¡A¤T¤d¥»¡B¤T¤d¥»ªº®³¥X¨Ó(¦]¬°­n·j´M®Ñ¥»¤º®e¡A¥²¶·¥ý±N®Ñ©ñ¸m¦b¤u§@¥­¥x¤W¡A¦A¹ê»Ú¬d¸ß¨C¥»®Ñªº¹ê»Ú¤º®e¡A¦b³oºØ¤èªk¤W¡A¨Ã¨S¦³¨Ï¥Î¨ì¯Á¤Þªí¡C)
    ²Ä¤GºØ¤èªk¡A«h¬O±N¸ß°Ýªº©Ò¦³±ø¥ó¡G¡u®Ñ¦W-§@ªÌ-µo¦æ¦~¥÷-ºK­n-»ù¿ú¡v¦A½s¦¨¤@¥÷¯Á¤Þ¡A¨º»òÃþ¦ü«È¤á§@³o¼Ëªº¬d¸ß®É¡A«K¥u­n¬d¸ß³o¥÷¯Á¤Þªí¡A«K¥iª½±µ§ä¨ì²Å¦X»Ý­nªº®ÑÂÇ¡C
    ¦ý§O§Ñ¤F¦b«e­±ªº¨Ò¤l¤¤¡A¥H³o¼Ë¨Ó½s¿è¯Á¤Þªº¸Ü¡A¥i¯à§Aªº¯Á¤Þ­¶·|Åܱo«Ü«p«Ü¦h¡A(2)ªº¨Ò¤l¥Î¤F300¥»¡A¦b¦¹ªº¨Ò¤l¡A¥i¯à¥Î¨ì¤F1000¥»¡C
    ¥t¥~¤@ºØ§@ªk¡A«h¬O¥Î²{¦¨ªº¯Á¤Þ¡A²{¦b§Ú­Ìªº¤â¤W¦³¡u®Ñ¦W¯Á¤Þªí¡v¡A±q³oùØ¥i¥H¬d¥X¦³¡u¤j¡v¦rªº®Ñ¡A¥i¯à¥u¦³1¸U¥»¡A¦A§â³o1¸U¥»·h°Ê¨ì¤u§@¥­¥x¤¤¡A§@¶i¤@¨B¬d¸ß¡A³o¼Ëªº°Ê§@¤¶©ó¤W­z¨âªÌ¶¡¡C

    ¥Ñ¤W¬Ý¨Ó¡A¦A«Ø¥ß¤@­Ó·sªº¯Á¤Þªí¦ü¥G¬O³ÌÁo©úªº§@ªkÅo? ¨Ã¤£ºÉµM¡A¤W­zªº±Àºt¹Lµ{¡A¥u¦³½Í¨ì¡u¬d¸ß¡vªº³¡¥÷¡A¦Ó¨S¦³¹ï¡u·s¼W¡vªº³¡¥÷§@»¡©ú¡C¡u¯Á¤Þªí¡v±N©Ò¦³¡uÃöÁäªºÄæ¦ì¡v»P¡u¹ê»Ú¦s©ñ¦ì¸m¡v¦¨¹ï©ñ¦b¤@°_¡A©Ò¥H¤@¥¹¦³·s®Ñ¶i¨Ó¡A¶Õ¥²­n±N·sªº¸ê®Æ©ñ¶i¯Á¤Þªí¤¤¡A°²³]²{¦b·s¼W¤F¤@¥»®Ñ¡u­Ê¤Ñ±OÀs°O¡v¡A­Y¦b¡u®Ñ¦W¯Á¤Þªí¡v¡A¨º»ò§Aªº¤u§@«K¬O¦b¦¹¯Á¤Þªí¤¤¥[¤@µ§·sªº°O¿ý¡A°O¸ü®Ñ¦W¤Î©ñ¸mªº¦ì¸m¡A¦p¦¹§Y¥i¡C¦ý¬O­Y¦³¤W­zªº¡u®Ñ¦W-§@ªÌ-µo¦æ¦~¥÷-ºK­n-»ù¿ú¡v¯Á¤Þªíªº¸Ü¡A­n°O¸üªº¶µ¥Ø´NÅܦ¨«Ü¦h¤F¡C

    ·Q·Q¡A­Y¬O±z¤@¤Ñ¦³¤@¸Uµ§·s®Ñ¶i¨Ó¡A¤S¦³³o¡u®Ñ¦W-§@ªÌ-µo¦æ¦~¥÷-ºK­n-»ù¿ú¡v¯Á¤Þªíªº¸Ü¡A¤Ï¦Ó·|§óµh­W¤£³ô!

    ¦³¨Çquery¬O«ÜÃø¥h©w¸q¥X¤@­Ó¦nªºindex¡A³o®É¥u­n¬O¡uÁÙ¦n¡vªº¯Á¤Þ¡A¥i¯à´N°÷¤F¡A¤W­zªºquery¡A­Y±N¥þ³¡Äæ¦ì«Ø¥ß¦¨¯Á¤Þ¡A¥i¯à·|³y¦¨¯Á¤ÞªÎ¤j¡A¤£¨£±o¦n¡A«ØÄ³±N±Æ°£®ÄªGªºÄæ¦ì¥ý«Ø¥ß¦n¡A­Y¬O¯à±N©Ò¦³·j´Mªº¸ê®Æ­¶­°§C¨ì25%¥H¤U¡A´Nºâ¬O¤£¿ùªº¯Á¤Þ¡A¦³¨ÇSA¬Æ¦Ü·|©w¸q¡u¦å«¬¡v¡B¡u©Ê§O¡v¬°¯Á¤Þ¡A³oºØ¯Á¤Þªº±Æ°£®ÄªG³£¤£¬O¬Æ¨Î¡A°£«D¥²­n¡A³o¼Ëªº¯Á¤ÞÀ³¾¨¶qÁ×§K¡C

    ¥t¥~±`¨£ªº±¡§Î¡A«K¬O¤@­Ó±`³QÅܰʪºªí®æ¡A¥»¨­¸ê®Æ¶q¤]«Ü¤j¡A¤]±`³Q¬d¸ß¡Aªí®æ¥»¨­¥i¯à¦³¤Q­Ó¥H¤Wªº¯Á¤Þ¡A¦]¬°±`ÅܰʡA¥ô¦óªºÅܰʳ£·|³y¦¨¯Á¤Þ­È¶·³Q§ó·s¡A¤Q­Ó¥H¤Wªº¯Á¤Þ­¶¡A³£¶·³Q©ñ¤J°O¾ÐÅé¥H«K¶i¦æ¡u·s¼W¯Á¤Þ¡vªº°Ê§@¡A·Q·Q¡A³o·|³y¦¨¨t²Î®Ä¯à¦h¤jªº­t¾á?!

     

2.      ½Õ¾ã¤u§@¥­¥x¡G

©Ò¦³ªº¬d¸ß°Ê§@³£±o¦b¤u§@¥­¥x¤W°õ¦æ¡A­Y¬O¤u§@¥­¥x¥u¯à©ñ200¥»ªº¶q¡A¨º»ò·í¬d¸ß¡u§@ªÌ¯Á¤Þªí¡v®É¡A·|±N200¥»ªº§@ªÌ¯Á¤Þªí©ñ¸m¨ì¤u§@¥­¥x¤W¡A§ä¨ì­n¬dªº¸ê®Æ«á(ª÷±eµÛ)¡A¦A¥h§â²Å¦Xªº®ÑÂÇ®³¨Ó¡C
¦ý¬O­n¥æ¥Iµ¹«È¤áªº®ÑÂǤ]­n©ñ¦b¤u§@¥­¥x¤W¡A³o®É´Nµo¥Í¤F¤@­Ó°ÝÃD¡A¤u§@¥­¥x¤w¸gº¡¤F(©ñ¤F200¥»ªº¯Á¤Þªí)¡A¶Õ¥²¤@©w­n¥ý±N³¡¥÷¯Á¤Þªí®³¤U¨Ó¡AµM«á¦A±N§ä¨ìªº®ÑÂÇ©ñ¤W¨Ó¡C
­Y¬O²Ä¤G­Ó«È¤á¶i¨Ó¡A§A¥i¯à¥Ñ±o¥h§â­è®³¤U¨Óªº¯Á¤Þªí¦A®³¦^¨Ó¡A³o­Ó°Ê§@´NÅܦ¨«ÜµL¿×¡A­ì¦]«K¥X¦b¤u§@¥­¥x¤£°÷¤j¡C
¥Î·¥ºÝªº¨Ò¤l¨Ó¬Ý¡A­Y¬O¤u§@¥­¥x¤j¨ì¥i®e¯Ç©Ò¦³À]ÂáA¥Nªí©Ò¦³¸ê®Æ§A³£¥i¥Hª½±µ¬d¸ß¡A¤£¥Î¦A¦³¡u·h®Ñ¡vªº³o­Ó°Ê§@

°O¾ÐÅ骺¤j¤p½Õ¾ã¡A¬O©Ò¦³DBA¦b¨t²Î®Ä¯à½Õ¾ã®É¡A¥²¶·¥ý¦Ò¶qªº¡A¦³¨Çµû¤ñ³ø§i¡A±`±N¨â­Ó¤£¦P°O¾ÐÅé¤j¤pªº¸ê®Æ®w®Ä¯à¥[¥H¤ñ¸û¡A¦b¥ý¤Ñ¤W±N³y¦¨¤F¤£¤½¥­¡Aµû¤ñªºµ²ªG¦ÛµM¤]Åý¤H¦sºÃ¡A¦blinux journal¤¤¤åª©Âø»x2001¦~9¤ë¸¹¡A°w¹ï¬Y®a¸ê®Æ®wªº®Ä¯à½Õ¾ã¡A¥þ¤å³£¦b±´°Q¦p¦ó©ñ¤j°O¾ÐÅé¡A¥Ñ¦¹¥i¨£°O¾ÐÅé¤j¤p¹ïperformanceªº­«­n¡C
°O¾ÐÅé·íµM¯à©ñ¤j´N¾¨¶q©ñ¤j¡AÅý©Ò¦³¸ê®Æ¯à¾¨¶q¦b°O¾ÐÅ餤¡A´î¤ÖI/Oªº¦¸¼Æ¡C¦ý³o¼Ë¤]¶·¥I¥X¥N»ù¡A«K¬O·í¨t²Î·´·l®É¡AÅܰʪº¸ê®Æ³£¥i¯àÁÙ¦b°O¾ÐÅ餤¡AÁöµMDBMaker¦³LOG¥i°O¿ý©Ò¦³ÅܰʡA¦ýÁÙ¬O·|Åýrecoveryªº®É¶¡©Ôªø¡C¦³¨Ç­Ó®×¬Æ¦Ü³y¦¨¤F¸ê®Æ®wªº·´·l¡A©Ò¥H¦b³]­p¨t²Î®É¡A¥ç±N¦¹¦]¯À¤@¨Ö¦Ò¶q¡ADBMaker¦b4.0«á¡A·|°w¹ï¨t²Î¥i¥Îªº¸ê·½¡A¦Û°ÊÀ°¨Ï¥ÎªÌ¹º¦n¥i¥Î°O¾ÐÅé¡A¦ý­Y¨Ï¥ÎªÌ¥»¨­¦³¨ä¥L¦Ò¶q¡A·íµM¤]¥i¦Û¤v³]©w¡A¦Ó¤£¨Ì¿à¨t²Îªº½Õ¾ã¡FDBMaker­n½Õ¾ã°O¾ÐÅé¤j¤p¡A¬Û·í®e©ö¡A¥u­n¥h½Õ¾ãdmconfig.ini¤¤ªºDB_NBUFS§Y¥i¡A¸Ô²Ó¤º®e¡A½Ð°Ñ¾\Administrator Guide¡C

3.      °Ý²M·¡¤@ÂI¡G

¦³®É­Ô¡A§Y¨Ï§A«Ø¥ß¤F¼Æ­Ó¦³®Ä²v¯Á¤Þªí¡AµL½×·s¼W®ÑÂÇ¡B¬d¸ß®ÑÂÇ¡A³£¦³»á¨Îªº®Ä²v¡AÁÙ¬O°¸º¸·|¦³¤@¨Ç«È¤á¡A´£¥X¤F¤@¨Ç­ê¦i©Ò«äªº­n¨D¡C¥i¯à¬Y¦ì¤¯¥S¡A´£¥X¤F¡u§â©Ò¦³ªº®Ñ³£®³¥X¨ÓÁ@Á@¡v³oºØ­n¨D¡C§AÁÙ¬O±o§â¥þ³¡ªº®Ñ³£·h¥X¨Óµ¹¥L¡C¦³¨Ç«È¤Hªº­n¨D¤S¯ä¤Sªø¡A¨ä¹ê¥Lªº»Ý¨D«o¥i¯à«D±`ªºÂ²³æ¡C

³oºØ±¡§Î¤U¡A§Y¨Ï§A¤w¸g±N©Ò¦³¦]¯Àªº¦Ò¼{¶i¥h¡A¤´·|¹J¨ì³o¼Ëªº«È¤H¡A«h¥i¥H­n¨D«È¤H»¡±o©ú½TÂI¡A©ÎªÌ´«¤@­ÓÅ¥±oÀ´ªº¤è¦¡¨Ó°Ý¡C

Query»P¯Á¤Þ¬O¬Û¹ïÃö«Y¡Aquery¬O«È¤áºÝªº»Ý¨D¡A¦Óindex¬Oquery¥i¨Ï¥ÎªºÀô¹Ò¡F­Y¬O¯Ê¤Ö¦nªºindex¡Aquery¼g±o¦A¦n¡A®Ä¯à´£ª@ªº¤]¦³­­¡C¦ý¦³ªº®É­Ô¥¿¦n¬Û¤Ï¡A§Y¨Ïindex«Øªº¦A¦n¡Aquery­Y¤£ÅÜ¡A®Ä¯à¤]µLªk´£ª@¡C¥Ñ¨ä¦boptimizer¨M©wexecution plan®É¡A·|°w¹ï²{¦³Àô¹Òªºindexªº¸ê®Æ¡A¨M©w¨Ï¥Î­þ­Óindex¡A¥Îmerge join©Î¬Onest join¡A­Y¬Oquery¼g±o¤£¦n¡AÀô¹Ò¦A¦n¡AÁÙ¬O±o§@­W¤u¡C¨Ò¦p¡Gselect * from big_table¡A³o­Óquery´NµL¥iÁ×§KªºµLªk¨Ï¥Îindex¡C

¦³Ãöexecution plan¤Îoptimizerªº²Ó¸`¡A·|¦b¡uPerformance¦A±´¡v¤¤±´°Q¡C

4.      ¹ê¾Ôºt½m¡G

¦³¤@¸ê®Æ®w¡A°O¸üªºdmconfig.ini¦³¤U­±°O­z¡G

[DB]
¡K
DB_NBUFS=30000   ;120M°O¾ÐÅé

(1)   QueryÎSchema·j¶°

¦³¤@table schema¦p¤U¡G

create  index Qtc1 on SYSADM.Trans( RecePK asc ) fillfactor 100 ;

create  index X1 on SYSADM.Trans( GroupID asc , CustomerIDNo asc ) fillfactor 100 ;

create  index X2 on SYSADM.Trans( GroupID asc , SalItem asc ) fillfactor 100 ;

create  index X3 on SYSADM.Trans( Net asc ) fillfactor 100 ;

create  index X4 on SYSADM.Trans( PreReceNo asc ) fillfactor 100 ;

create  index X5 on SYSADM.Trans( TransNo asc ) fillfactor 100 ;

create  index X6 on SYSADM.Trans( CustomerIDNo asc ) fillfactor 100 ;

create  index idxchno on SYSADM.Trans( CheckNo asc ) fillfactor 100 ;

alter table SYSADM.Transprimary key ( PK) ;

­º¥ý´N¥H²Ä¤@­ÓINDEX X1(GroupID,CustomerIDNo)¤Î²Ä¤»­ÓINDEX X6(CustomerIDNo)¨Ó¬Ý¡A³o´N¦n¹³¤@¥»¦³¡u§@ªÌ-®Ñ¦W¡vªº¯Á¤Þ¡A¤S¦³¤@¥»¦³¡u®Ñ¦W¡vªº¯Á¤Þ¡A¨Æ¹ê¤W¡A³o¦hªº¤@¥»¡u®Ñ¦W¡v¯Á¤Þ¡A¥i¯à¨Ã¤£¬O¨º»Ý­n¡A¨º»ò¡A¬O¤£¬O­n§â¨ä¤¤¤@­Ó¯Á¤Þµ¹®³±¼©O?³o´N¥²¶·°Ñ°u©Ò¨Ï¥ÎªºQuery¬O¤£¬O¨º»ò»Ý­n³o­ÓGroupID¡A¦bºÊ±±serverºÝ©Ò¦¬¨ìªºquery(¡uselect SQL_CMD from SYSUSER;¡v)¤@­Ó¤p®É«á¡Aµo²{¨Ï¥Î¨ì¡GCustmerIDNo=?¦³15¦¸¡AGroupID=? and CustomerIDNo=? ¦³10¦¸¡AGroupID=?¬ù¦³3¦¸¡C

(2)   ¤ÀªR»P½Õ¾ã

¦A¨Ó¡A´N¬O¬Ý¬ÝGroupIDªº±Æ°£®ÄªG¦³¦h±j¡A¨Ï¥Î¡uselect count(*) from Trans;¡v¤Î¡uselect count(distinct GroupID) from Trans¡v¡Aµ²ªG¤À§O¬O50¸Uµ§¤Î1¸Uµ§¡A¤]´N»¡¥­§¡50µ§·|¹ï1­ÓGroupID¡A³oºØ±Æ°£®ÄªG­Ë¤]»á¨Î¡C

¦³³o¨âºØ¦]¯À¦Ò¶q¤U¡A­º¥ý§Ú­Ì¥i¬å±¼X6¡A¦]¬°¨Æ¹ê¤W¨Ï¥ÎX1¤]¦³¤@¼Ëªº®ÄªG¡A¥u¬OX1¥i¯àµy¤j¤FÂI(¦³¨â­ÓÄæ¦ì)¡A¦ýGroupIDªºÄæ¦ì«¬ºA¬°INT¡A¥u¦û4­Óbytes¡A¦]¦¹¦h¥X¨ÓªºsizeÀ³¸ÓÁÙ¦b¥i§Ô¨ü½d³ò¤º¡C

¦AªÌ¡A¹ï©óX1ªº¦¸§Ç¤]À³§@½Õ¾ã¡A«Ø¥ß¦¨(CustomerIDNo,GroupID)ªº¸Ü¡A¤@¤è­±¥iÅýCustomerIDNo=?ªºqueryÀò§Q¡A§Y¨ÏGroupID=?¡A¤´¥i¨Ï¥Î¦¹¯Á¤Þ¡C¦Ó¥B­Y¦¹table±`³Q§ó°Êªº¸Ü¡A¨º»ò¨C·s¼W¤@µ§¸ê®Æ¡AX1»PX6³£»Ý¦P¨B§ó·s¡A­Y¥u¯dX1¡A´N¥i¤Ö¥h¤@¦¸§ó·s°Ê§@¡C

§Q¥Îselect * from SYSINDEX;¡Aµo²{¨ä¤¤¡G

 

INDEX_NAME TABLE_NAME TABLE_OWNER NUM_COL NUM_PAGE NUM_LEVEL NUM_LEAF DIST_KEY NUM_PAGE_KEY CLSTR_COUNT
X3 Trans SYSADM 1 273 2 269 1031 250 4983
X4 Trans SYSADM 1 420 2 416 685 250 2577

­º¥ý¤S¬O±q©Ò·j¶°ªºQuery¨Ó¤ÀªR¡A¹ï©óNet=?¤ÎPreReceNo=?ªºquery¤À§O¬°¹s¤Î1­Ó¡C¸Õ·Q¡A§A«O¦³¤F³o¨Ç¯Á¤Þ¡A¦ý´X¥G³£¤£¥Î¡A¦ý§A·s¼W¥ô¦ó¤@µ§¸ê®Æ¡A³o¨Ç¯Á¤Þ«o¤S­n¦P¨B§ó·s¡A(¥ô¦ó§ó·s°Ê§@¡A¤S¤@©w­n¥ý¤W¸ü¨ì°O¾ÐÅé)¡A¨S¦³¨É¨ü¨ìindex©Ò±a¨Óªº¦n³B¡A¤Ï¦Ó³Q¥¦Àº¨î¡A¯u¬O±o¤£Àv¥¢¡AÅv¿Å¤§¤U¡A¨M©w±N³o¨â­ÓIndex Drop±¼¡C

5.      Á`µ²

³o¬O¥HÀRºASQL°Ñ°t¤@¨ÇQuery¨Ó¬ã¨sPerformance¡A·íµM¨ä¤¤ÁÙ¦³³\¦h¥i±´°QªºÄ³ÃD¡A¥]¬A¤FµwÅé¡BºÏºÐ¤À°t¡B¯Á¤Þ¤À°t¡A¥»¤å¥D­nµÛ­«¦b»P³nÅ骺·f°t¤W¡AAP¦p¦ó»PDB¶¡·f°t¡A°ÊºAªºQuery¤ÎExecution Plan¡A±N·|¦b«áÄòªº¡uPerformance¦A±´¡v¤¤±´°Q¡C

 

Copyright 2000 SYSCOM Computer Engineering Co. All rights reserved.