»ç¿ëÀÚ´Â »öÀÎÀÌ »ç¿ëµÇ´Â ½Ã±â¸¦ °áÁ¤ÇÏÁö ¾Ê´Â´Ù´Â Á¡À» ±â¾ïÇϽʽÿÀ. µ¥ÀÌÅÍ º£À̽º °ü¸® ÇÁ·Î±×·¥¿¡¼ »ç¿ë °¡´ÉÇÑ Å×ÀÌºí ¹× »öÀÎ Á¤º¸¿¡ ±Ù°ÅÇÏ¿© À̸¦ °áÁ¤ÇÕ´Ï´Ù. ±×·¯³ª »ç¿ëÀÚ°¡ ¼º´ÉÀ» Çâ»ó½Ãų ¼ö ÀÖ´Â ÇÊ¿äÇÑ »öÀÎÀ» »ý¼ºÇÏ´Â µ¥ Áß¿äÇÑ ¿ªÇÒÀ» ÇÕ´Ï´Ù. »öÀÎÀ» ÀÛ¼ºÇϰųª ÇÁ¸®ÆäÄ¡ Å©±â¸¦ º¯°æ(¾Õ¿¡¼ ¾ð±ÞµÇ¾úµíÀÌ)ÇÑ ÈÄ¿¡´Â »öÀο¡ ´ëÇÑ Åë°è¸¦ ¼öÁýÇϰí(RUNSTATS À¯Æ¿¸®Æ¼ »ç¿ë) ÇöÀç ±â¹Ý¿¡¼ Åë°è¸¦ ÃֽŠÁ¤º¸·Î À¯ÁöÇÏ´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù. Áï, ÀÌ´Â »ç¿ëÀÚ°¡ »ý¼ºÇÒ ¼ö ÀÖ´Â »öÀÎÀÇ Á¾·ù ¹× À̸¦ »ý¼ºÇÏ´Â ¹æ¹ýÀ» ÀÌÇØÇϰí ÀÖ¾î¾ß ÇÑ´Ù´Â ÀǹÌÀÔ´Ï´Ù.
µ¥ÀÌÅͺ£À̽º Á¶È¸¿¡¼ ÂüÁ¶µÈ °¢ Å×À̺íÀº, Å×ÀÌºí¿¡ »öÀÎÀÌ ¾ø´Â °æ¿ì, Å×ÀÌºí¿¡¼ Å×ÀÌºí ½ºÄµÀÌ ½ÇÇàµÇ¾î¾ß ÇÕ´Ï´Ù. Å×À̺íÀÌ Å¬¼ö·Ï Å×ÀÌºí ½ºÄµµµ ´õ ¿À·¡ °É¸³´Ï´Ù. Å×ÀÌºí ½ºÄµÀº µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥ÀÌ Å×À̺íÀÇ °¢ Çà¿¡ ¼øÂ÷ÀûÀ¸·Î ¾×¼¼½ºÇÒ ¶§ ¹ß»ýÇÕ´Ï´Ù. ÀÌ´Â µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥ÀÌ »öÀÎÀ» »ç¿ëÇÏ¿© µ¥ÀÌÅ͸¦ ¾×¼¼½ºÇÒ ¶§ ¹ß»ýÇÏ´Â »öÀÎ ½ºÄµ°ú ºñ±³ÇÒ ¼ö ÀÖ½À´Ï´Ù(»öÀÎ ½ºÄµ °³³ä¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ).
Å×ÀÌºí ½ºÄµº¸´Ù »öÀÎ ½ºÄµÀÌ ´õ ºü¸¥ ¹æ¹ýÀ̶ó°í ÃÖÀûÈ ¾Ë°í¸®ÁòÀÌ ÆÇ´ÜÇÑ °æ¿ì, »öÀÎÀÌ ¼±Åõ˴ϴÙ. »öÀÎ ÆÄÀÏÀº ÀϹÝÀûÀ¸·Î ´õ ÀÛ°í, ƯÈ÷ Å×À̺íÀÇ ±Ô¸ð°¡ Ä¿Áú¼ö·Ï Àüü Å×À̺íÀ» Àд µ¥ ½Ã°£ÀÌ ´ú °É¸³´Ï´Ù. ¶ÇÇÑ, »öÀÎ Àüü°¡ ½ºÄµµÉ Çʿ䵵 ¾ø½À´Ï´Ù. »öÀο¡ Àû¿ëµÇ´Â ¼ú¾î´Â µ¥ÀÌÅÍ ÆäÀÌÁö·ÎºÎÅÍ Àоî¾ß ÇÏ´Â ÇàÀÇ ¼ö¸¦ ÁÙ¿©ÁÝ´Ï´Ù.
°¢°¢ÀÇ »öÀÎ Ç׸ñÀº Ž»ö Ű °ª°ú ÇØ´ç °ªÀ» °¡Áö°í ÀÖ´Â ÇàÀ» °¡¸®Å°´Â Æ÷ÀÎÅÍ·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù. °ªÀº ALLOW REVERSE SCANS ¸Å°³º¯¼ö°¡ CREATE INDEX¹®¿¡ ÁöÁ¤µÈ °æ¿ì¿¡¸¸ ¿ª¹æÇâÀ¸·Î Ž»öµÉ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼, ¿À¸¥ÂÊ ¼ú¾î°¡ ÀÖÀ» °æ¿ì, Ž»öÀ» Á¦ÇÑÇÒ ¼ö ÀÖ½À´Ï´Ù. »öÀÎÀ» »ç¿ëÇÔÀ¸·Î½á, ÇàÀ» Å×À̺í·ÎºÎÅÍ ÀÐÀº ÈÄ, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥ÀÌ ÇàÀ» Á¤·ÄÇÒ Çʿ䰡 ¾øÀÌ, ¼ø¼ÈµÈ ¼ø¼·Î ÇàÀ» ±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù. ALLOW REVERSE SCANS¸¦ ÁöÁ¤Çϸé, »öÀÎÀ» »ç¿ëÇÏ¿© Á¤¹æÇâ ¹× ¿ª¹æÇâÀ¸·Î ¼ø¼´ë·Î Á÷Á¢ ÇàÀ» È®º¸ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ãß°¡ ¼¼ºÎ»çÇ×Àº SQL ÂüÁ¶¼¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
°íÀ¯ »öÀο¡´Â Ž»ö Ű °ª ¹× Çà Æ÷ÀÎÅÍ¿Í ÇÔ²² Ä÷³ÀÌ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù.
ÁÖ: | »öÀÎÀÌ µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥¿¡ ÀÇÇØ »ç¿ëµÈ °æ¿ì Á¦¾îÇÒ ¼ö ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î, Á¶È¸ÀÇ °á°ú°¡ Á¶È¸ÁßÀÎ Å×ÀÌºí¿¡ Á¸ÀçÇÏ´Â Á¶È¸¿¡ ÀÇÇØ ¼ø¼ÈµÈ ¼ø¼¿¡¼ »ý¼ºµÇ´Â °ÍÀÌ º¸ÀåµÉ ¼ö ¾ø½À´Ï´Ù. Á¶È¸ ó¸®Áß¿¡ µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº ÀÌ »öÀÎÀ» »ç¿ëÇÏÁö¸¸, ¹Ýµå½Ã »ç¿ëÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ORDER BYÀý¸¸ ÀÖÀ¸¸é °á°ú ÁýÇÕÀÇ ¼ø¼¸¦ "º¸ÀåÇÒ" ¼ö ÀÖ½À´Ï´Ù. |
»öÀÎÀº ¾×¼¼½º ½Ã°£À» Å©°Ô ÁÙÀÏ ¼ö ÀÖÁö¸¸, ¼º´É¿¡ ÁÁÁö ¾ÊÀº ¿µÇâÀ» ÁÙ ¼öµµ ÀÖ½À´Ï´Ù. »öÀÎÀ» »ý¼ºÇϱâ Àü¿¡, µð½ºÅ© °ø°£°ú ó¸® ½Ã°£¿¡ ¹ÌÄ¡´Â ´ÙÁß »öÀÎÀÇ ¿µÇâÀ» °í·ÁÇϽʽÿÀ.
ÀÀ¿ëÇÁ·Î±×·¥ÀÇ Çʿ並 ÃæÁ·½Ã۱â À§Çؼ´Â »öÀÎÀº ½ÅÁßÇÏ°Ô ¼±ÅÃÇØ¾ß ÇÕ´Ï´Ù.
ƯÁ¤ ÆÐŰÁö¿¡¼ »öÀÎÀÌ »ç¿ëµÇ´ÂÁöÀÇ ¿©ºÎ¸¦ °áÁ¤Çϱâ À§ÇØ, SQL Explain ±â´É¿¡¼ ¼³¸íµÈ SQL Explain ±â´ÉÀ» »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
DB2 »öÀÎ º¸Á¶ ÇÁ·Î±×·¥Àº Å×ÀÌºí µ¥ÀÌÅÍ¿¡ ´ëÇØ ÃÖÀûÀÇ »öÀÎ ¼¼Æ®¸¦ ¼±ÅÃÇÒ ¼ö ÀÖµµ·Ï µµ¿ÍÁÖ´Â µµ±¸ÀÔ´Ï´Ù. ÀÌ µµ±¸¸¦ ¿©·¯ °¡Áö ¹æ¹ýÀ¸·Î È®º¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.
DB2 »öÀÎ º¸Á¶ ÇÁ·Î±×·¥¿¡ ´ëÇØ¼´Â SQL º¸Á¶ ÇÁ·Î±×·¥ ±â´É¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
¾î¶² »öÀÎÀ» »ý¼ºÇÒ °ÍÀÎÁö´Â µ¥ÀÌÅÍ¿Í »ç¿ë ¸ñÀû¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ´ÙÀ½ ÁöħÀº ¾î¶² »öÀÎÀÌ °¡Àå À¯¿ëÇÑÁö¸¦ ÆÇ´ÜÇÏ´Â µ¥ µµ¿òÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.
INCLUDE Ä÷³¿¡ ´ëÇØ¼´Â °ü¸® ¾È³»¼: °èȹÀÇ "»öÀÎ ¶Ç´Â »öÀÎ ½ºÆå ÀÛ¼º" Àå¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
ÁÖ: | Ŭ·¯½ºÅ͸µ »öÀÎÀÌ Á¤ÀǵǸé, °¢ µ¥ÀÌÅÍ ÆäÀÌÁö¿¡ ¿¹¾àµÈ ºó °ø°£À¸·Î Å×À̺íÀÌ ·ÎµåµÇ¾î ÇØ´ç ÆäÀÌÁö¿¡ »ðÀÔÀÌ ¼öÇàµÉ ¼ö ÀÖµµ·Ï ÇØ¾ß ÇÕ´Ï´Ù(PCTFREE Ű¿öµå¸¦ ALTER TABLE¹®¿¡ »ç¿ëÇϰųª LOAD ¸í·ÉÀÇ pagefreespace MODIFIED BYÀýÀ» ÅëÇØ ºó °ø°£ÀÌ ¿¹¾àµË´Ï´Ù). |
ÁÖ: | »öÀÎÀº ¼±¾ðµÈ Àӽà Å×ÀÌºí¿¡ ´ëÇØ¼´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. |
´ÙÀ½Àº »öÀÎÀ» »ý¼ºÇÔÀ¸·Î½á ¼º´ÉÀ» Çâ»ó½Ãų ¼ö ÀÖ´Â ´ëÇ¥ÀûÀÎ °æ¿ìÀÔ´Ï´Ù.
WHEREÀý
WHERE WORKDEPT='A01' OR WORKDEPT='E21'
Àº ÇØ´ç °ªÀÌ ÀÚÁÖ ¹ß»ýÇÏÁö ¾Ê´Â´Ù¸é, WORKDEPT¿¡ ´ëÇÑ »öÀο¡¼ º¸Åë ÀÌÁ¡À» °®½À´Ï´Ù.
´ÙÀ½ ¿¹´Â DISTINCTÀýÀ» »ç¿ëÇÑ °ÍÀÔ´Ï´Ù.
SELECT DISTINCT WORKDEPT FROM EMPLOYEE
µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº Áߺ¹µÈ °ªÀ» Á¦°ÅÇϱâ À§ÇØ WORKDEPT¿¡ ´ëÇØ ¿À¸§Â÷¼ø ¶Ç´Â ³»¸²Â÷¼øÀ¸·Î Á¤ÀÇµÈ »öÀÎÀ» »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ µ¿ÀÏÇÑ »öÀÎÀÌ ´ÙÀ½ ¿¹¿¡¼Ã³·³ GROUP BYÀýÀ» °¡Áö°í °ªÀ» ±×·ìÈÇÏ´Â µ¥¿¡µµ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù.
SELECT WORKDEPT, AVERAGE(SALARY) FROM EMPLOYEE GROUP BY WORKDEPT
¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ SQL¹®ÀÌ ¼öÇàµÈ´Ù°í °¡Á¤ÇϽʽÿÀ.
SELECT LASTNAME FROM EMPLOYEE WHERE WORKDEPT IN ('A00','D11','D21')
»öÀÎÀÌ EMPLOYEE Å×À̺íÀÇ LASTNAME ¹× WORKDEPT Ä÷³¿¡ ´ëÇÏ¿© Á¤ÀǵǾî ÀÖ´Ù¸é, ¸í·É¹®Àº Àüü Å×À̺íÀ» °Ë»öÇÏ´Â ´ë½Å »öÀÎÀ» °Ë»öÇÔÀ¸·Î½á ´õ¿í È¿À²ÀûÀ¸·Î 󸮵˴ϴÙ. ¼ú¾î°¡ WORKDEPT¿¡ ´ëÇÑ °ÍÀ̹ǷÎ, ÀÌ Ä÷³ÀÌ »öÀÎÀÇ Ã¹¹øÂ° Ä÷³ÀÌ µÇ¾î¾ß ÇÔ¿¡ ÁÖÀÇÇϽʽÿÀ.
CREATE UNIQUE INDEX x ON employee (workdept) INCLUDE (lastname)
lastnameÀ» »öÀΠŰÀÇ ÀϺΰ¡ ¾Æ´Ñ Æ÷ÇÔ Ä÷³À¸·Î ÁöÁ¤ÇÏ´Â °ÍÀº lastnameÀº »öÀÎÀÇ ÃÖÇÏÀ§ ÆäÀÌÁö¿¡¸¸ ÀúÀåµÈ´Ù´Â ÀǹÌÀÔ´Ï´Ù.
´ÙÀ½ÀÇ ³»¿ëÀº »öÀÎÀ» ÀûÀýÇÏ°Ô »ç¿ëÇÏ°í °ü¸®ÇÏ´Â °ÍÀÌ ¾î¶»°Ô ¼º´É¿¡ ¿µÇâÀ» ¹ÌÄ¡´ÂÁö¸¦ ÀÌÇØÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù.
´ëÇü Å×ÀÌºí¿¡¼ »öÀÎÀ» ÀÛ¼ºÇϰí SMP ¸Ó½ÅÀ» °¡Áø °æ¿ì, intra_parallelÀ» YES(1) ¶Ç´Â SYSTEM(-1)À¸·Î ¼³Á¤ÇÏ¿© º´·Ä ¼º´É Çâ»óÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
º¹±¸ ÇÁ·Î¼¼¼´Â µ¥ÀÌÅ͸¦ ½ºÄµÇϰí Á¤·ÄÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. »öÀÎ ÀÛ¼ºÁß º¹±¸ ÇÁ·Î¼¼¼°¡ µµ¿òÀÌ µÇÁö ¾Ê´Â °æ¿ì¿¡´Â indexsort ±¸¼º ¸Å°³º¯¼ö°¡ NO·Î ¼³Á¤µÉ °æ¿ì»ÓÀÔ´Ï´Ù(ÀÌ ¸Å°³º¯¼öÀÇ ±âº»°ªÀº YESÀÔ´Ï´Ù). ÀÌ ¸Å°³º¯¼ö´Â »öÀÎ ÀÛ¼º µµÁß »öÀΠŰ Á¤·ÄÀÌ ¹ß»ýÇÏ´ÂÁö¸¦ Á¦¾îÇÕ´Ï´Ù.
»öÀÎÀº ´Ù¸¥ Å×ÀÌºí µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â °ø°£°ú´Â ´Ù¸¥°ø°£¿¡ ÀúÀåµÇ¾î ÀÖÀ» ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ´Â Àбâ/¾²±â ÇìµåÀÇ ¿òÁ÷ÀÓÀ» ÁÙÀÓÀ¸·Î½á µð½ºÅ© ÀúÀåÀ» ´õ¿í È¿À²ÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇØÁÝ´Ï´Ù. ¶ÇÇÑ, »ç¿ëÀÚÀÇ »öÀÎ Å×ÀÌºí °ø°£À» »ý¼ºÇÏ¿© ´õ ºü¸¥ ¹°¸®Àû ÀåÄ¡¿¡ À̵éÀÌ ÀúÀåµÉ ¼öµµ ÀÖ½À´Ï´Ù.
»öÀÎ ÆäÀÌÁö°¡ ¸¹Àº µ¥ÀÌÅÍ ÆäÀÌÁö·Î ÀÎÇØ ¹öÆÛ ¹ÛÀ¸·Î ¹Ð·Á³ªÁö ¾Ê°Ô º¸È£ÇÏ´Â ºÐ¸®µÈ ¹öÆÛ Ç®¿¡ Å×ÀÌºí °ø°£À» ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù.
»öÀÎÀÌ º°µµÀÇ Å×ÀÌºí °ø°£¿¡ ³õÀÌÁö ¾Ê´Â´Ù¸é, µ¥ÀÌÅÍ¿Í »öÀÎ ÆäÀÌÁö°¡ ¸ðµÎ °°Àº extent Å©±â¿Í ÇÁ¸®ÆäÄ¡·®À» »ç¿ëÇÕ´Ï´Ù. »öÀο¡ ´ëÇØ ´Ù¸¥ Å×ÀÌºí °ø°£À» »ç¿ëÇÒ °æ¿ì, Å×ÀÌºí °ø°£ÀÇ ¸ðµç Ư¼º¿¡ ´ëÇØ ´Ù¸¥ °ªÀ» ¼±ÅÃÇÏ´Â ¿É¼ÇÀ» °¡Áö°Ô µË´Ï´Ù. ÀϹÝÀûÀ¸·Î »öÀÎÀÌ Å×ÀÌºíº¸´Ù ÀÛ°í ¿©·¯ ÄÁÅ×À̳ʿ¡ °ÉÃÄ ÀÖ´Ù¸é, 8°ú 16 °°Àº ´õ ÀÛÀº extent Å©±â¸¦ ã´Â °ÍÀÌ º¸ÅëÀÔ´Ï´Ù. »öÀÎ ÆäÀÌÁö ÇÁ¸®ÆäÄ¡¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ. Å×ÀÌºí °ø°£¿¡ ´ëÇÏ¿© ´õ ºü¸¥ ÀåÄ¡¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ Á¶È¸ ÃÖÀûÈ¿¡ ¹ÌÄ¡´Â Å×ÀÌºí °ø°£ÀÇ ¿µÇâ¿¡ ¼³¸íµÇ¾î ÀÖ´Â °Íó·³, SQL ÃÖÀûÈ ¾Ë°í¸®Áò¿¡ ÀÇÇØ °í·ÁµË´Ï´Ù. Å×ÀÌºí °ø°£¿¡ ´ëÇØ¼´Â °ü¸® ¾È³»¼: °èȹ¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
¸¸ÀÏ SQL¹®ÀÌ ¼ø¼´ë·Î µ¥ÀÌÅ͸¦ °Ë»öÇϱ⸦ ¿ä±¸Çϰí(¿¹: ORDER BY, GROUP BY, DISTINCT) À̸¦ ÃæÁ·½Ãų ¼ö ÀÖ´Â ÀûÀýÇÑ »öÀÎÀ» °¡Áö°í ÀÖ´Â °æ¿ì, »öÀÎÀ» ¼±ÅÃÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ´Â ´ÙÀ½°ú °°Àº °æ¿ì¿¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.
Ŭ·¯½ºÅ͸µ »öÀÎÀ» ÀÛ¼ºÇÑ ÈÄ¿¡ REORG ¶Ç´Â Á¤·Ä ¹× LOAD¸¦ ¼öÇàÇϵµ·Ï ±ÇÀåÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î, Å×À̺íÀº ÇϳªÀÇ »öÀο¡ ´ëÇØ¼¸¸ Ŭ·¯½ºÅ굃 ¼ö ÀÖ½À´Ï´Ù. Å×À̺í°ú »öÀÎÀº ÇØ´ç Å×À̺íÀÇ Å¬·¯½ºÅ͸µ ¼ø¼¿¡ µû¶ó ±¸ÃàµÇ¾î¾ß ÇÕ´Ï´Ù. Ŭ·¯½ºÅÍ »öÀÎÀº RUNSTATS À¯Æ¿¸®Æ¼°¡ ¼öÁýÇÏ´Â CLUSTERRATIO ¶Ç´Â CLUSTERFACTOR Åë°è¸¦ °³¼±ÇÏ¿© ƯÁ¤ÇÑ ¼ø¼ÀÇ µ¥ÀÌÅ͸¦ À¯Áöº¸¼öÇÏ·Á°í ÇÕ´Ï´Ù.
¶ÇÇÑ, ÇØ´ç Å×À̺íÀ» ·ÎµåÇϰųª À籸¼ºÇϱâ Àü¿¡ Å×À̺íÀ» º¯°æÇÏ´Â °æ¿ì PCTFREE¸¦ »ç¿ëÇÏ´Â ¹æ¾ÈÀ» °í·ÁÇØ º¸½Ê½Ã¿À. Ŭ·¯½ºÅ͸µÀ» À¯Áöº¸¼öÇÏ·Á¸é, °¢ Å×À̺íÀÇ °¢ µ¥ÀÌÅÍ ÆäÀÌÁö¿¡´Â Ãß°¡ »ðÀÔ¿ë °ø°£ÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. °ø°£À» »ç¿ëÇÒ ¼ö ÀÖ´Â °æ¿ì, ±âÁ¸ µ¥ÀÌÅ͸¦ »ç¿ëÇÏ¿© Ãß°¡ »ðÀÔÀÌ Å¬·¯½ºÅ͸µµÉ ¼ö ÀÖ½À´Ï´Ù. ±× °á°ú, Ãß°¡ µ¥ÀÌÅÍÀÇ Å¬·¯½ºÅ͸µÀ» À§ÇØ °¢ ÆäÀÌÁö¿¡ ÀÏÁ¤ ºñÀ²ÀÇ ºó °ø°£À» ³²°ÜµÐ ÈÄ µ¥ÀÌÅ͸¦ Å×ÀÌºí¿¡ ·ÎµåÇÏ´Â ¹æ¾ÈÀ» °í·ÁÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿ì¼± Å×À̺íÀ» ÀÛ¼ºÇÑ ´ÙÀ½ PCTFREE ¸Å°³º¯¼ö¸¦ »ç¿ëÇÏ¿© Å×À̺íÀ» º¯°æÇÏ¿© ÀÌ ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¶Âù°¡Áö·Î, µ¥ÀÌÅ͸¦ À籸¼ºÇϱâ Àü¿¡ PCTFREE ¸Å°³º¯¼ö¸¦ »ç¿ëÇÏ¿© Å×À̺íÀ» º¯°æÇÏ´Â ¹æ¾ÈÀ» °í·ÁÇØ¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, PCTFREE°¡ ¼³Á¤µÇÁö ¾ÊÀº °æ¿ì À籸¼ºÀ» ÅëÇØ ¸ðµç Ãß°¡ °ø°£ÀÌ Á¦°ÅµË´Ï´Ù.
Ŭ·¯½ºÅ͸µÀº ÇöÀç °»½Å µ¿¾È¿¡ À¯Áöº¸¼öµÇÁö ¾Ê½À´Ï´Ù. Áï, Ŭ·¯½ºÅ͸µ »öÀο¡ ÀÖ´Â °ªÀÌ º¯°æµÇ´Â ·¹Äڵ带 °»½ÅÇÏ´Â °æ¿ì, ·¹ÄÚµå´Â Ŭ·¯½ºÅ͸µ ¼ø¼¸¦ À¯Áöº¸¼öÇϱâ À§ÇØ »õ ÆäÀÌÁö·Î À̵¿µÉ Çʿ䰡 ¾ø½À´Ï´Ù. UPDTAE¸¦ »ç¿ëÇÏ´Â ´ë½Å Ŭ·¯½ºÅ͸µÀ» À¯Áöº¸¼öÇÏ·Á¸é, DELETE¸¦ »ç¿ëÇÑ ´ÙÀ½ INSERT¸¦ »ç¿ëÇϽʽÿÀ.
»õ·Î¿î »öÀÎÀ» »ý¼ºÇÑ ÈÄ, »öÀÎ Åë°è Á¤º¸¸¦ ÃëÇÕÇϱâ À§ÇØ RUNSTATS À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. Åë°è Á¤º¸´Â ÃÖÀûÈ ¾Ë°í¸®ÁòÀÌ »öÀÎÀ» »ç¿ëÇÏ¿© ¾×¼¼½º ¼º´ÉÀ» Çâ»ó½Ãų ¼ö ÀÖ´ÂÁö ¿©ºÎ¸¦ °áÁ¤ÇÒ ¼ö ÀÖµµ·Ï ÇØÁÝ´Ï´Ù. ÀÌ ÁÖÁ¦¿¡ ´ëÇØ¼´Â RUNSTATS À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¿© Åë°è ¼öÁý¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
»öÀÎÀ» ÅëÇØ ¾òÀ» ¼ö ÀÖ´Â ÃÖ°íÀÇ ±â´ÉÀ» ¾òÀ¸·Á¸é, »öÀÎÀ» Á¤±âÀûÀ¸·Î À籸¼ºÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. Å×ÀÌºí¿¡ ´ëÇÑ °»½ÅÀ¸·Î »öÀÎ ÆäÀÌÁö ÇÁ¸®ÆäÄ¡°¡ ´ú È¿°úÀûÀÏ ¼ö ÀÖ½À´Ï´Ù. »öÀÎ ÆäÀÌÁö ÇÁ¸®ÆäÄ¡ÀÇ È¿À²¼ºÀ» À¯ÁöÇÏ·Á¸é, »öÀÎÀ» À籸¼ºÇØ¾ß ÇÕ´Ï´Ù.
»öÀÎÀ» »èÁ¦Çϰí ÀçÀÛ¼ºÇϰųª REORG À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¿© »öÀÎÀ» À籸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. īŻ·Î±× ¹× »ç¿ëÀÚ Å×À̺í À籸¼º¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
À籸¼ºÀ» ÀÚÁÖ ÇÏÁö ¾Ê±â À§ÇØ »öÀÎ ÀÛ¼º½Ã PCTFREE¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. »öÀÎ ÀÛ¼º½Ã PCTFREE ¸Å°³º¯¼ö¸¦ ÁöÁ¤Çϸé, ÇØ´ç »öÀÎÀÌ ÀÛ¼ºµÉ ¶§ °¢ »öÀÎ ÃÖÇÏÀ§ ÆäÀÌÁö¿¡ ºó °ø°£ÀÌ ³²°Ô µË´Ï´Ù. ±× °á°ú, »öÀΰú °ü·ÃµÈ ÇâÈÄ È°µ¿Áß¿¡ »öÀÎ ÆäÀÌÁö ÆÄƼ¼ÇÀÇ °¡´É¼ºÀÌ ÀûÀº »öÀο¡ ·¹Äڵ尡 »ðÀ﵃ ¼ö ÀÖ½À´Ï´Ù. »öÀÎ ÆäÀÌÁö ÆÄƼ¼ÇÀ» ¼öÇàÇϸé, »öÀÎ ÆäÀÌÁö°¡ ¿¬¼ÓµÇ°Å³ª ¼øÂ÷ÀûÀÌÁö ¾Ê°Ô µË´Ï´Ù. ±×·¯¸é, »öÀÎ ÆäÀÌÁö ÇÁ¸®ÆäÄ¡¸¦ ¼öÇàÇÒ ´É·ÂÀÌ ¶³¾îÁö°Ô µË´Ï´Ù. »öÀο¡ ´ëÇØ ÀûÀýÇÑ PCTFREE¸¦ ¼±ÅÃÇϸé, »öÀÎÀ» À籸¼ºÇÏ´Â ºóµµ°¡ Á¦°ÅµÇ°Å³ª ÁÙ¾îµì´Ï´Ù.
ÁÖ: | À籸¼ºÁß¿¡ »öÀÎÀÌ ÀÛ¼ºµÇ´Â °æ¿ì, »öÀÎÀ» ÀÛ¼ºÇÒ ¶§ ÁöÁ¤ÇÑ PCTFREE°¡ »ç¿ëµË´Ï´Ù. |
»öÀÎÀ» »èÁ¦ÇÑ ÈÄ ´Ù½Ã ÀÛ¼ºÇϸé, ´ë·« ¿¬¼ÓÀûÀÌ°í ¼øÂ÷ÀûÀÎ »õ·Î¿î ÆäÀÌÁö ¼¼Æ®¸¦ ¾ò°Ô µË´Ï´Ù. À̷νá, »öÀÎ ÆäÀÌÁö ÇÁ¸®ÆäÄ¡°¡ Çâ»óµË´Ï´Ù.
ºñ¿ëÀÌ ´õ µé´õ¶óµµ, REORG À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¸é µ¥ÀÌÅÍ ÆäÀÌÁöÀÇ Å¬·¯½ºÅ͸µÀ» È®½ÇÈ÷ º¸ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ Å¬·¯½ºÅ͸µÀº ¸¹Àº µ¥ÀÌÅÍ ÆäÀÌÁö¿¡ ¾×¼¼½ºÇÏ´Â »öÀÎ ½ºÄµ½Ã ¸¹Àº ÇýÅÃÀÌ ÀÖ½À´Ï´Ù.
´ëĪ ¸ÖƼÇÁ·Î¼¼¼(SMP) ½Ã½ºÅÛ È¯°æ¿¡¼ ÀÛ¾÷ÇÏ´Â °æ¿ì, REORG À¯Æ¿¸®Æ¼´Â intra_parallelÀÌ YES³ª ANYÀÏ ¶§ ´ÙÁß ÇÁ·Î¼¼¼¸¦ »ç¿ëÇÕ´Ï´Ù.
°¡Àå ÀÚÁÖ »ç¿ëµÇ´Â Á¶È¸¿¡¼ Á¤±âÀûÀ¸·Î EXPLAINÀ» ¼öÇàÇÏ°í °¢ »öÀÎÀÌ Àû¾îµµ ÇÑ ¹øÀº »ç¿ëµÇ´ÂÁö È®ÀÎÇϽʽÿÀ. »öÀÎÀÌ ¾î¶°ÇÑ Á¶È¸¿¡¼µµ »ç¿ëµÇÁö ¾Ê´Â °æ¿ì, ÇØ´ç »öÀÎÀÇ »èÁ¦¸¦ °í·ÁÇϽʽÿÀ.
¶ÇÇÑ, EXPLAINÀ» »ç¿ëÇÏ¿© ´ëÇü Å×ÀÌºí¿¡¼ Å×ÀÌºí ½ºÄµÀÌ ÁßøµÈ ·çÇÁ Á¶ÀÎÀÇ ³»ºÎó·³ ó¸®µÇ´ÂÁö º¸½Ê½Ã¿À. Á¶ÀÎ ¼ú¾î Ä÷³ÀÇ »öÀÎÀº À¯½ÇµÇ°Å³ª Á¶ÀÎ ¼ú¾î Àû¿ë½Ã È¿°ú°¡ ¾ø´Â °ÍÀ¸·Î »ý°¢µÉ ¼ö ÀÖÀ½À» ³ªÅ¸³À´Ï´Ù. ¶Ç´Â Á¶ÀÎ ¼ú¾î°¡ ¾øÀ» ¼öµµ ÀÖ½À´Ï´Ù.
Èֹ߼º Å×À̺íÀº ·±Å¸ÀÓ Å©±â°¡ °ø¹é¿¡¼ ´ëÇü±îÁö º¯ÇÒ ¼ö ÀÖ´Â ³»¿ëÀ» °¡Áø Å×À̺í·Î Á¤Àǵ˴ϴÙ. Èֹ߼º Å×À̺íÀ» »ç¿ëÇÏ´Â ¾×¼¼½º Ç÷£À» »ý¼ºÇϸé, ÃÖÀûÈ ¾Ë°í¸®ÁòÀº Èֹ߼º Å×ÀÌºí¿¡ ¾×¼¼½ºÇÒ ¶§ »öÀÎ ½ºÄµÀ» »ç¿ëÇϱ⠺¸´Ù´Â Å×ÀÌºí ½ºÄµÀ» »ç¿ëÇÏ°Ô µË´Ï´Ù.
ALTER TABLE...VOLATILE¹®À» »ç¿ëÇÏ¿© "Èֹ߼º" Å×À̺íÀ» ¼±¾ðÇϸé, ÃÖÀûÈ ¾Ë°í¸®ÁòÀÌ Èֹ߼º Å×ÀÌºí¿¡¼ »öÀÎ ½ºÄµÀ» »ç¿ëÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ÀÌ ÁÖÁ¦¿¡ °üÇÑ Ãß°¡ Á¤º¸´Â °ü¸® ¾È³»¼: °èȹ ¶Ç´Â SQL ÂüÁ¶¼¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.