°ü¸® ¾È³»¼­


ºÐ»ê Åë°è ¼öÁý ¹× »ç¿ë

µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº °£´ÜÇÑ ¹æ¹ýÀ¸·Î µÎ °¡Áö À¯ÇüÀÇ Åë°è("ºóµµ °ª Åë°è" ¹× "quantiles")¸¦ ¼öÁý, À¯Áöº¸¼ö ¹× »ç¿ëÇϴµ¥, ÀÌ Åë°è´Â Ä÷³ ³»ÀÇ µ¥ÀÌÅÍ °ªÀÇ ºÐ»êÀ» ³ªÅ¸³À´Ï´Ù. ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀÌ ÀÌ Åë°è¸¦ »ç¿ëÇÔÀ¸·Î½á ÁÖ¾îÁø µîÈ£ ¶Ç´Â ¹üÀ§ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â Ä÷³ÀÇ ÇàÀÇ ¼ö¸¦ ÈξÀ ´õ Á¤È®ÇÏ°Ô ¿¹ÃøÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ Á¤È®ÇÑ ¿¹ÃøÀº ´Ù½Ã ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀÌ ÃÖ»óÀÇ Ç÷£À» ¼±ÅÃÇÒ ¼ö ÀÖ´Â °¡´É¼ºÀ» ³ôÀÔ´Ï´Ù.

RUNSTATS¹®¿¡ WITH DISTRIBUTIONÀýÀ» »ç¿ëÇÏ¿© ÀÌ·¯ÇÑ µ¥ÀÌÅÍ °ªÀÇ ºÐ»ê¿¡ ´ëÇÑ Á¤º¸¸¦ ¼öÁýÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ Ãß°¡ Åë°è¸¦ ¼öÁýÇÏ´Â °ÍÀº RUNSTATS À¯Æ¿¸®Æ¼¿¡ ´ëÇÏ¿© Ãß°¡ ¿À¹öÇìµå°¡ µÇ±âµµ ÇÏÁö¸¸, SQL ÄÄÆÄÀÏ·¯°¡ ÀÌ Á¤º¸¸¦ ÃÖ»óÀÇ ¾×¼¼½º Ç÷£À» ¼±ÅÃÇÏ´Â µ¥ µµ¿òÀÌ µÇµµ·Ï »ç¿ëÇÕ´Ï´Ù.

°£È¤, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº ºÐ»ê Åë°è¸¦ ¼öÁýÇÏÁö ¾ÊÀ¸¸ç, À̶§ ¾Æ¹«·± ¿À·ùµµ ¸®ÅϵÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¸é, ´ÙÀ½°ú °°½À´Ï´Ù.

»öÀÎÀÇ Ã¹¹øÂ° Ä÷³¿¡ ´ëÇØ ºÐ»ê Åë°è°¡ Á¤È®ÇÕ´Ï´Ù. °¢ Ãß°¡ Ä÷³ÀÇ °æ¿ì, Á¤È®ÇÑ Åë°è¸¦ °è»êÇÏ·Á¸é ³Ê¹« ¸¹Àº ½Ã°£°ú ¸Þ¸ð¸®°¡ ÇÊ¿äÇϱ⠶§¹®¿¡, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº ÇØ½³ ¹× »ùÇøµ ±â¹ýÀ» »ç¿ëÇÏ¿© ºÐ»ê Åë°è¸¦ ¿¹ÃøÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ±â¹ýÀº »ó´çÇÑ Á¤È®µµ¸¦ Áö´Ñ Åë°è ±â¹ýÀ¸·Î ÀÎÁ¤µÇ°í ÀÖ½À´Ï´Ù.

ºÐ»ê Åë°è´Â SYSSTAT.COLDIST¸¦ °»½ÅÇÏ°í ºÐ»ê Åë°è°¡ ´õÀÌ»ó ÇÊ¿äÇÏÁö ¾ÊÀº Ä÷³¿¡ ´ëÇØ ¸ðµç COLVALUE ¹× VALCOUNT °ªÀº 0À̳ª -1·Î ¼³Á¤Çϸé Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

´ÙÀ½¿¡¼­´Â ÀÌ·¯ÇÑ ºÐ»ê Åë°è¿¡ ´ëÇÏ¿© »ç¿ëÀÚ°¡ ÀÌÇØÇÏ°í »ç¿ëÇÏ´Â µ¥ µµ¿òÀÌ µÉ ³»¿ëÀ» Á¦°øÇϰí ÀÖ½À´Ï´Ù.

ºÐ»ê Åë°èÀÇ ÀÌÇØ

°íÁ¤µÈ ¼ýÀÚÀÎ N>=1ÀÇ °æ¿ì, Ä÷³¿¡¼­ °¡Àå ºó¹øÈ÷ µîÀåÇÏ´Â N°ªÀº ºóµµ°¡ °¡Àå ³ôÀº °ª(Áï, Áߺ¹ Ƚ¼ö), ºóµµ°¡ µÎ¹øÂ°·Î ³ôÀº °ª, ºóµµ°¡ N¹øÂ°·Î ³ôÀº °ªÀ¸·Î ±¸¼ºµË´Ï´Ù. ÀÌ·¯ÇÑ ÀÚÁÖ »ç¿ëµÇ´Â °ª Åë°è´Â "N"°³ÀÇ µ¥ÀÌÅÍ °ª°ú Ä÷³¿¡¼­ÀÇ ÀÌµé µ¥ÀÌÅÍ °ªÀÇ ºóµµ·Î ±¸¼ºµË´Ï´Ù.

Ä÷³¿¡ ´ëÇÑ K-quantileÀº °¡Àå ÀÛÀº µ¥ÀÌÅÍ °ªÀÎ VÀ̹ǷÎ, Àû¾îµµ "K" ÇàÀº Vº¸´Ù À۰ųª °°Àº °ªÀ» µ¥ÀÌÅÍ °ªÀ» °¡Áö°í ÀÖ½À´Ï´Ù. K-quantileÀº Ä÷³ÀÇ ÇàÀ» Áõ°¡ÇÏ´Â µ¥ÀÌÅÍ °ª¿¡ µû¶ó Á¤·ÄÇÔÀ¸·Î½á °è»êµÉ ¼ö ÀÖ½À´Ï´Ù. K-quantileÀº Á¤·ÄµÈ Ä÷³ÀÇ K¹øÂ° Çà¿¡ ÀÖ´Â µ¥ÀÌÅÍ °ªÀÔ´Ï´Ù.

¿¹¸¦ µé¸é, ´ÙÀ½°ú °°Àº µ¥ÀÌÅÍ Ä÷³À» °í·ÁÇØ º¸½Ê½Ã¿À.

   C1
   --
    B
    E
    Y
    B
    F
    G
    E
    A
    J
    K
    E
    L

ÀÌ Ä÷³Àº ´ÙÀ½°ú °°Àº ¼ø¼­·Î °ªÀ» ¾ò±â À§ÇØ Á¤·ÄµÉ ¼ö ÀÖ½À´Ï´Ù.

   C1'
   --
    A
    B
    B
    E
    E
    E
    F
    G
    J
    K
    L
    Y

Ä÷³ C1¿¡´Â 9°³ÀÇ ¼­·Î ´Ù¸¥ µ¥ÀÌÅÍ °ªÀÌ ÀÖ½À´Ï´Ù. N = 2¿¡ ´ëÇØ ÀÚÁÖ »ç¿ëµÇ´Â °ª Åë°è´Â ´ÙÀ½°ú °°½À´Ï´Ù.

   SEQNO    COLVALUE     VALCOUNT
   -----    ---------    --------
     1          E            3
     2          B            2

¼öÁýÁßÀÎ quantile ¼ö°¡ 5À̸é(Ä÷³¿¡ ´ëÇÑ quantileÀÇ ¼ö(num_quantiles) ÂüÁ¶), K = 1, 3, 6, 9 ¹× 12ÀÎ °æ¿ì, ÀÌ Ä÷³ÀÇ K-quantileÀº ´ÙÀ½°ú °°½À´Ï´Ù.

   SEQNO    COLVALUE     VALCOUNT
   -----    ---------    --------
     1          A            1
     2          B            3
     3          E            6
     4          J            9
     5          Y           12

ÀÌ ¿¹¿¡¼­ Á¤·ÄµÈ Ä÷³ÀÇ 6¹øÂ° ÇàÀÌ E¿Í °°Àº µ¥ÀÌÅÍ °ªÀ» °¡Áö°í Àֱ⠶§¹®¿¡(±×¸®°í, ¿ø·¡ÀÇ Ä÷³ÀÇ 6ÇàÀÌ Eº¸´Ù °°°Å³ª ÀÛÀº µ¥ÀÌÅÍ °ªÀ» °¡Áö°í Àֱ⠶§¹®¿¡), 6-quantileÀº E¿Í °°½À´Ï´Ù.

quantile °ªÀÌ °øÅëÀÇ °ªÀ̶ó¸é, °°Àº quantile °ªÀÌ µÎ ¹ø ÀÌ»ó ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù. µÎ °³ÀÇ quantileÀÇ ÃÖ´ë°ªÀº ÁÖ¾îÁø °ª¿¡ ´ëÇÏ¿© ÀúÀåµË´Ï´Ù. ÀÌ µÎ °³ÀÇ quantile Áß Ã¹¹øÂ°´Â COLVALUEº¸´Ù È®½ÇÈ÷ ÀÛÀº ÇàÀÇ ¼ö¸¦ Á¦°øÇÏ´Â COLCOUNT¸¦ °¡Áö°í ÀÖÀ¸¸ç, µÎ¹øÂ°´Â COLVALUEº¸´Ù À۰ųª °°Àº ÇàÀÇ ¼ö¸¦ Á¦°øÇÕ´Ï´Ù.

¾ðÁ¦ ºÐ»ê Åë°è¸¦ »ç¿ëÇØ¾ß Çϴ°¡?

ÁÖ¾îÁø Å×ÀÌºí¿¡ ´ëÇØ ºÐ»ê Åë°è¸¦ »ç¿ëÇØ¾ßÇÒÁöÀÇ ¿©ºÎ¸¦ °áÁ¤Çϱâ À§Çؼ­´Â, µÎ °¡Áö ¿ä¼Ò°¡ °í·ÁµÇ¾î¾ß ÇÕ´Ï´Ù.

  1. Á¤Àû ¶Ç´Â µ¿Àû SQL »ç¿ë

    ºÐ»ê Åë°è´Â µ¿Àû SQL ¹× È£½ºÆ® º¯¼ö¸¦ »ç¿ëÇÏÁö ¾Ê´Â Á¤Àû SQL¿¡ ¾ÆÁÖ À¯¿ëÇÕ´Ï´Ù. È£½ºÆ® º¯¼ö¿Í ÇÔ²² SQLÀ» »ç¿ëÇϸé, ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº ºÐ»ê Åë°è¸¦ Á¦ÇÑÇÏ¿© »ç¿ëÇÕ´Ï´Ù.

  2. µ¥ÀÌÅÍ ºÐ»ê¿¡ À־ÀÇ Àϰü¼º °á¿©

    Å×ÀÌºí¿¡¼­ ÃÖ¼ÒÇÑ ÇϳªÀÇ Ä÷³¿¡ ¸Å¿ì "±ÕÀÏÇÏÁö ¾ÊÀº(non-uniform)" µ¥ÀÌÅÍ ºÐ»êÀÌ ÀÖ°í, Ä÷³ÀÌ µîÈ£(equality) ¶Ç´Â ¹üÀ§ ¼ú¾î¿¡ ºó¹øÇÏ°Ô ³ªÅ¸³ª´Â °æ¿ì, ºÐ»ê Åë°è¸¦ »ç¿ëÇϱ⸦ ±ÇÀåÇÕ´Ï´Ù. Áï, ´ÙÀ½°ú °°Àº Àý¿¡¼­ »ç¿ëÇϽʽÿÀ.

       WHERE C1 = KEY;
       WHERE C1 IN(KEY1, KEY2, KEY3);
       WHERE (C1 = KEY1) OR (C1 = KEY2) OR (C1 = KEY3);
       WHERE C1 <= KEY;
       WHERE C1 BETWEEN KEY1 AND KEY2;
    

    µ¥ÀÌÅÍ ºÐ»ê¿¡´Â µÎ °¡Áö À¯ÇüÀÇ ºñ±ÕÀϼº(non-uniformity)ÀÌ Á¸ÀçÇÏ´Â µ¥, ÀÌ µÎ °¡Áö°¡ ÇÔ²² ¹ß»ýÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

RUNSTATS ¸í·É¿¡ WITH DISTRIBUTIONÀýÀ» »ç¿ëÇϰųª, RUNSTATS API¸¦ È£ÃâÇÒ ¶§, statsopt ¸Å°³º¯¼ö¿¡ ´ëÇÏ¿© D, E ¶Ç´Â A¸¦ ÁöÁ¤ÇÔÀ¸·Î½á ºÐ»ê Åë°è¸¦ ¼öÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. Administrative API Reference ¸Å´º¾ó¿¡¼­ API¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.

¾ó¸¶³ª ¸¹Àº Åë°è¸¦ À¯ÁöÇØ¾ß Çϴ°¡?

¸¹Àº Ä÷³ ºÐ»ê Åë°è¸¦ °¡Áö°í ÀÖ´Â °ÍÀº ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀÌ ¾×¼¼½º Ç÷£À» ¼±ÅÃÇÏ´Â µ¥ µµ¿òÀÌ µÇÁö¸¸, ÇÑÆíÀ¸·Î ÀÌ·¯ÇÑ Åë°è¸¦ ¼öÁýÇϰí Á¶È¸¸¦ ÄÄÆÄÀÏÇÏ´Â µ¥ µå´Â ºñ¿ëµµ ÇÔ²² Áõ°¡ÇÕ´Ï´Ù. Åë°è Èü(heap)ÀÇ Å©±â(Åë°è Èü Å©±â(stat_heap_sz) ÂüÁ¶)·Î ÀÎÇØ °è»êµÇ°í ÀúÀåµÉ ¼ö ÀÖ´Â Åë°èÀÇ ¼ýÀÚ°¡ Á¦ÇÑµÉ ¼öµµ ÀÖ½À´Ï´Ù.

ºÐ»ê Åë°è°¡ ¿ä±¸µÇ¸é, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº ±âº»°ªÀ¸·Î Ä÷³¿¡ ´ëÇØ °¡Àå ºóµµ°¡ ³ôÀº 10°³ÀÇ °ªÀ» ÀúÀåÇÕ´Ï´Ù. ½ÇÁ¦ÀûÀ¸·Î 10°ú 100°³ »çÀÌÀÇ ºóµµ ¼ö°¡ ³ôÀº °ªÀ» °¡Áö°í ÀÖÀ¸¸é ÃæºÐÇÕ´Ï´Ù. ±×·¯³ª ³²¾Æ ÀÖ´Â °ªÀÌ ¼­·Î °ÅÀÇ ºñ½ÁÇϰųª, °¡Àå ºóµµ ¼ö°¡ ³ôÀº °ª°ú ºñ±³ÇÏ¿© ¹«½ÃÇÒ Á¤µµ°¡ µÇµµ·Ï, ÃæºÐÈ÷ ºóµµ°ª Åë°è°¡ È®º¸µÇ¾î¾ß ÇÏ´Â °ÍÀÌ ÀÌ»óÀûÀÔ´Ï´Ù.

¹ß»ý ºóµµ°¡ ³ôÀº ¼öÁýÇÒ °ªÀÇ ¼ö¸¦ ¼³Á¤Çϱâ À§Çؼ­´Â º¸À¯µÈ ºóµµ °ªÀÇ ¼ö(num_freqvalues)¿¡ ¼³¸íµÈ ´ë·Î num_freqvalues ±¸¼º ¸Å°³º¯¼ö¸¦ »ç¿ëÇϽʽÿÀ. ÀÌ Åë°è´Â ÇÑ ¹ø ÀÌ»ó ¹ß»ýÇÏ´Â µ¥ÀÌÅÍ °ª¿¡ ´ëÇØ¼­¸¸ ¼öÁýµÇ±â ¶§¹®¿¡, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº ºóµµ°ª Åë°è ¼öº¸´Ù ÀÛÀº ¼ö¸¦ ¼öÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. quantile Åë°è¸¸À» ¼öÁýÇÏ´Â °æ¿ì ÀÌ ¸Å°³º¯¼ö´Â 0À¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

ºÐ»ê Åë°è°¡ ¿ä±¸µÇ¸é, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº ±âº»°ªÀ¸·Î Ä÷³¿¡ ´ëÇØ 20°³ÀÇ °ªÀ» ÀúÀåÇÕ´Ï´Ù. ÀÌ °ªÀ» »ç¿ëÇϸé, ´Ü¸é ¹üÀ§ ¼ú¾î(>, >=, < ¶Ç´Â <=)ÀÇ ÃÖ´ë ÃßÁ¤ ¿À·ù´Â ¾à 2.5%À̰í BETWEEN ¼ú¾îÀÇ ÃÖ´ë ÃßÁ¤ ¿À·ù´Â 5%·Î º¸ÀåµË´Ï´Ù. quantile ¼ö¸¦ ÆÇº°ÇÒ ¶§ ´ÙÀ½°ú °°ÀÌ ´ëÃæ ÆÇº°ÇÒ ¼ö ÀÖ½À´Ï´Ù.

¿¹¸¦ µé¾î, 25 quantileÀº ÃÖ°í BETWEEN ¼ú¾î¿¡ ´ëÇØ 4%¿Í ">" ¼ú¾î¿¡ ´ëÇØ 2% ·Î ÃßÁ¤ ¿À·ù¸¦ ÀÏÀ¸Å°°Ô µË´Ï´Ù. ÀϹÝÀûÀ¸·Î Àû¾îµµ 10°³ÀÇ quantileÀº À¯ÁöµÇ¾î¾ß Çϰí, ±Ø´ÜÀûÀ¸·Î ±ÕÀÏÇÏÁö ¾Ê°Ô ºÐ»êµÈ µ¥ÀÌÅÍ¿¡ ÇÑÇØ¼­¸¸ 50°³ ÀÌ»óÀÇ quantileÀÌ ÇÊ¿äÇÕ´Ï´Ù.

quantileÀÇ ¼ö¸¦ ¼³Á¤ÇÏ·Á¸é, Ä÷³¿¡ ´ëÇÑ quantileÀÇ ¼ö(num_quantiles)¿¡¼­ ¼³¸íµÈ ´ë·Î num_quantiles ±¸¼º ¸Å°³º¯¼ö¸¦ »ç¿ëÇϽʽÿÀ. ´ÜÁö ºóµµ°ª Åë°è¸¸À» ¼öÁýÇÏ´Â °æ¿ì, ÀÌ ¸Å°³º¯¼ö´Â 0À¸·Î ÁöÁ¤µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¸Å°³º¯¼ö¸¦ "1"·Î ÁöÁ¤Çϸé Àü ¹üÀ§ÀÇ °ªÀÌ ÇϳªÀÇ quantile¿¡ ¸Â°Ô µÇ¹Ç·Î, ¿ª½Ã quantile Åë°è¸¦ ±¸ÇÒ ¼ö ¾ø½À´Ï´Ù.

ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº ¾î¶»°Ô ºÐ»ê Åë°è¸¦ »ç¿ëÇϴ°¡?

ºÐ»ê Åë°è¸¦ ¼öÁýÇϰí ÀúÀåÇÏ´Â ÀÌÀ¯°¡ ¹«¾ùÀΰ¡? ±× ´ë´äÀº ¹Ù·Î ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀÌ °¡Àå °æÁ¦ÀûÀÎ ¾×¼¼½º Ç÷£À» ¼±ÅÃÇϱâ À§ÇÑ µîÈ£(equality) ¶Ç´Â ¹üÀ§ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â Ä÷³ÀÇ ÇàÀÇ ¼ö¸¦ ÃßÁ¤ÇÏ´Â µ¥ ÇÊ¿äÇϱ⠶§¹®ÀÔ´Ï´Ù. ´õ Á¤È®ÇÑ ÃßÁ¤À» ÇÒ¼ö·Ï, ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀÌ ÃÖÀûÀÇ ¾×¼¼½º Ç÷£À» ¼±ÅÃÇÒ °¡´É¼ºÀÌ ´õ¿í Ä¿Áý´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ Á¶È¸¸¦ °í·ÁÇØ º¸½Ê½Ã¿À.

   SELECT C1, C2
     FROM TABLE1
    WHERE C1 = 'NEW YORK'
      AND C2 <= 10

±×¸®°í, ¿©±â¿¡ C1°ú C2¿¡ ´ëÇÑ »öÀÎÀÌ ÀÖ´Ù°í °¡Á¤ÇϽʽÿÀ. °¡´ÉÇÑ ÇÑ °¡Áö ¾×¼¼½º Ç÷£Àº C1¿¡ ´ëÇÑ »öÀÎÀ» »ç¿ëÇÏ¿© C1 = 'NEW YORK'ÀÎ ¸ðµç ÇàÀ» °Ë»öÇÑ ÈÄ, °¢°¢ÀÇ °Ë»öµÇ´Â ÇàÀÌ C2 <= 10ÀÎÁö È®ÀÎÇÏ´Â °ÍÀÔ´Ï´Ù. ¶Ç´Ù¸¥ ¾×¼¼½º Ç÷£Àº C2¿¡ ´ëÇÑ »öÀÎÀ» »ç¿ëÇÏ¿© C2 <= 10ÀÎ ¸ðµç ÇàÀ» °Ë»öÇÑ ÈÄ, °¢°¢ÀÇ °Ë»öµÇ´Â ÇàÀÌ C1 = 'NEW YORK'ÀÎÁö È®ÀÎÇÏ´Â °ÍÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î, À§ÀÇ Á¶È¸¸¦ ¼öÇàÇÏ´Â µ¥ µå´Â ±âº» ºñ¿ëÀº ÇàÀ» °Ë»öÇÏ´Â ºñ¿ëÀ̰í, µû¶ó¼­ ÃÖ¼ÒÇÑÀÇ °Ë»ö Ƚ¼ö¸¦ ¿ä±¸ÇÏ´Â Ç÷£À» ¼±ÅÃÇÏ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÕ´Ï´Ù. °¡Àå ÈǸ¢ÇÑ Ç÷£À» ¼±ÅÃÇϱâ À§Çؼ­´Â °¢°¢ÀÇ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö¸¦ ¿¹ÃøÇÏ´Â °ÍÀÌ ÇÊ¿äÇÕ´Ï´Ù.

ºÐ»ê Åë°è¸¦ ¿ä±¸ÇÏÁö ¾ÊÀº °æ¿ì, ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº ÇϳªÀÇ Ä÷³¿¡ ´ëÇÏ¿© µÎ¹øÂ° ÃÖ»óÀ§ µ¥ÀÌÅÍ °ª(HIGH2KEY), µÎ¹øÂ° ÃÖÇÏÀ§ µ¥ÀÌÅÍ °ª(LOW2KEY), ±¸º°µÇ´Â °ªÀÇ ¼ö(COLCARD) ¹× ÇàÀÇ ¼ö(CARD)¸¸À» À¯ÁöÇÕ´Ï´Ù. ±×·± ´ÙÀ½, Ä÷³ ³»ÀÇ µ¥ÀÌÅÍ °ªÀÇ ºóµµ ¼ö°¡ ¸ðµÎ °°°í µ¥ÀÌÅÍ °ªÀº »óÀ§ °ª°ú ÇÏÀ§ °ª(HIGH2KEY, LOW2KEY) »çÀÌ¿¡ ±ÕµîÇÏ°Ô ºÐ»êµÇ¾î ÀÖ´Ù´Â °¡Á¤ÇÏ¿¡ µîÈ£(equality) ¶Ç´Â ¹üÀ§ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö°¡ ¿¹ÃøµË´Ï´Ù. ƯÈ÷ C1 = KEY µîÈ£ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö´Â CARD/COLCARD·Î »êÃâµÇ°í, C1 BETWEEN KEY1 AND KEY2 ¹üÀ§ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö´Â ´ÙÀ½°ú °°ÀÌ »êÃâµË´Ï´Ù.

       KEY2 - KEY1
   -------------------  x CARD       (1)
    HIGH2KEY - LOW2KEY

ÀÌ·¯ÇÑ »êÃâÀº Ä÷³ ³»ÀÇ µ¥ÀÌÅÍ °ª ºÐ»êÀÌ ³í¸®ÀûÀ¸·Î °í¸£°Ô µÇ¾î ÀÖ´Â °æ¿ì¿¡¸¸ Á¤È®ÇÕ´Ï´Ù. ¸¸ÀÏ ºÐ»ê Åë°è¸¦ ±¸ÇÒ ¼ö ¾ø°í, µ¥ÀÌÅÍ °ªÀÇ ºóµµ°¡ ¼­·Î Â÷À̰¡ Å©°Å³ª, µ¥ÀÌÅÍ °ªÀÌ ÇØ´ç ¹üÀ§(LOW_KEY,HIGH_KEY)ÀÇ ¸î¸î ºÎºÐ¿¡ ¸ô·Á ÀÖ´Â °æ¿ì, ¿¹ÃøÀº Å©±â ¼ø¼­·Î Á¤·ÄÇÏ´Â °Í¿¡¼­ Á¾·áµÇ°í, ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº ÀûÀýÇÏÁö ¸øÇÑ ¾×¼¼½º Ç÷£À» ¼±ÅÃÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

ºÐ»ê Åë°è¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â °æ¿ì, ºóµµ°ª Åë°è¸¦ »ç¿ëÇÏ¿© µîÈ£ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö¸¦ »êÃâÇϰí, ºóµµ°ª Åë°è ¹× quantileÀ» »ç¿ëÇÏ¿© ¹üÀ§ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö¸¦ »êÃâÇÔÀ¸·Î½á, À§¿¡¼­ ±â¼úÇÑ ¿À·ù¸¦ Å©°Ô ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù.

µîÈ£ ¼ú¾î¿¡ ´ëÇÑ ¿µÇâ ¿¹

¿ì¼± C1 = KEY ÇüÅÂÀÇ ¼ú¾î¸¦ °í·ÁÇØ º¸½Ê½Ã¿À. ¸¸ÀÏ KEY°¡ N°³ÀÇ °¡Àå ¹ß»ý ºóµµ°¡ ³ôÀº °ª Áß Çϳª¶ó¸é, ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº ´Ü¼øÈ÷ īŻ·Î±×¿¡ ÀúÀåµÇ¾î ÀÖ´Â KEYÀÇ ºóµµ¸¦ »ç¿ëÇÕ´Ï´Ù. KEY°¡ N¹ø ¸¸Å­ »ç¿ëµÇ´Â °ªÀÌ ¾Æ´Ò °æ¿ì, ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº(COLCARD - N) ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â °ªÀÌ ±ÕµîÇÑ ºÐ»êÀ» °®´Â´Ù´Â °¡Á¤ÇÏ¿¡ ¼ú¾î¸¦ ÃæÁ·ÇÏ´Â Çà ¼ö¸¦ ÃßÁ¤ÇÕ´Ï´Ù. Áï, ÇàÀÇ ¼ö´Â ´ÙÀ½°ú °°ÀÌ »êÃâµË´Ï´Ù.

   CARD - NUM_FREQ_ROWS
   --------------------           (2)
      COLCARD - N

¿©±â¼­, NUM_FREQ_ROWS´Â N¹ø ¸¸Å­ »ç¿ëµÇ´Â °ª Áß Çϳª¿Í °°Àº °ªÀ» °®´Â ÇàÀÇ ¼öÀÇ ÇÕÀÔ´Ï´Ù.

¿¹¸¦ µé¾î, µ¥ÀÌÅÍ °ªÀÇ ºóµµ°¡ ´ÙÀ½°ú °°Àº Ä÷³(C)À» °í·ÁÇØ º¸½Ê½Ã¿À.

   µ¥ÀÌÅÍ °ª      ºóµµ
   ----------   ---------
       1            2
       2            3
       3           40
       4            4
       5            1

°¡Àå ºóµµ°¡ ³ôÀº °ª(Áï, N = 1)¿¡¸¸ ±Ù°ÅÇÑ ºóµµ°ª Åë°è°¡ °¡´ÉÇÏ´Ù°í °¡Á¤ÇϽʽÿÀ. ÀÌ Ä÷³¿¡ ´ëÇÏ¿© CARD = 50À̰í, COLCARD = 5ÀÔ´Ï´Ù. C = 3 ¼ú¾î¿¡ ´ëÇÏ¿© Á¤È®ÇÏ°Ô 40ÇàÀÌ À̸¦ ÃæÁ·½Ãŵ´Ï´Ù. µ¥ÀÌÅͰ¡ °í¸£°Ô ºÐ»êµÇ¾î ÀÖ´Ù°í °¡Á¤Çϸé, ÇØ´ç ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö´Â 50/5 = 10À¸·Î »êÃâµÇ°í, ¿À·ù´Â -75%ÀÔ´Ï´Ù. ºóµµ°ª Åë°è¸¦ »ç¿ëÇÏ¿©, ¿À·ù°¡ ¾øÀÌ ÇàÀÇ ¼ö´Â 40À¸·Î »êÃâµË´Ï´Ù.

¸¶Âù°¡Áö·Î, 2ÇàÀÌ ¼ú¾î C = 1¸¦ ÃæÁ·½Ãŵ´Ï´Ù. ºóµµ°ª Åë°è°¡ ¾øÀ¸¸é, ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö´Â 10À¸·Î »êÃâµÇ°í, ¿À·ù´Â 400%ÀÔ´Ï´Ù. ´ÙÀ½ °ø½ÄÀ» »ç¿ëÇÏ¿© ÃßÁ¤ ¿À·ù¸¦ »êÃâÇÒ ¼ö ÀÖ½À´Ï´Ù(¹éºÐÀ²·Î).

       »êÃâµÇ´Â Çà  - ½ÇÁ¦ Çà
   -----------------------------  X 100
             ½ÇÁ¦ Çà

ºóµµ°ª Åë°è(N = 1)¸¦ »ç¿ëÇÏ¿©, ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº À§ÀÇ °ø½Ä (2)¸¦ »ç¿ëÇÔÀ¸·Î½á ´ÙÀ½°ú °°Àº °ªÀ» °¡Áø ÇàÀÇ ¼ö¸¦ »êÃâÇÒ ¼ö ÀÖ½À´Ï´Ù.

   (50 - 40)
   --------- = 3
    (5 - 1)

¶ÇÇÑ, ¿À·ù´Â ´ÙÀ½¿¡ Ç¥½ÃµÈ Å©±â ¼ø¼­´ë·Î °¨¼ÒµË´Ï´Ù.

    3 - 2
   ------- = 50%
2

¹üÀ§ ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö´Â ¾Æ·¡ÀÇ ¿¹¿¡ Ç¥½ÃµÈ ´ë·Î quantileÀ» »ç¿ëÇÏ¿© »êÃâµÉ ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡¿¡ ³ª¿Í ÀÖ´Â Ä÷³ (C)¸¦ °í·ÁÇØ º¸½Ê½Ã¿À.

     C
  -------
     0.0
     5.1
     6.3
     7.1
     8.2
     8.4
     8.5
     9.1
    93.6
   100.0

±×¸®°í K = 1, 4, 7 ¹× 10¿¡ ´ëÇÏ¿© K-quantileÀÌ »ç¿ë °¡´ÉÇÏ´Ù°í °¡Á¤ÇϽʽÿÀ.

    K     K-quantile
   ---  ----------
    1      0.0
    4      7.1
    7      8.5
   10    100.0

¿ì¼± ¼ú¾î C <= 8.5¸¦ »ìÆìº¸½Ê½Ã¿À. À§¿¡¼­ ÁÖ¾îÁø µ¥ÀÌÅÍ¿¡ ´ëÇÏ¿© Á¤È®È÷ 7°³ÀÇ ÇàÀÌ ÀÌ ¼ú¾î¸¦ ÃæÁ·½Ãŵ´Ï´Ù. µ¥ÀÌÅͰ¡ °í¸£°Ô ºÐ»êµÇ¾î ÀÖ´Ù°í °¡Á¤Çϰí, KEY1À» LOW2KEY·Î ´ëüÇÏ¿©, À§ÀÇ °ø½Ä (1)À» »ç¿ëÇϸé, ÇØ´ç ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö´Â ¾Æ·¡¿Í °°ÀÌ »êÃâµÉ ¼ö ÀÖ½À´Ï´Ù.

    8.5 - 5.1
   ---------- x 10 *= 0
   93.6 - 5.1

¿©±â¼­, *=´Â "°ÅÀÇ °°À½"À» ÀǹÌÇÕ´Ï´Ù. ÀÌ »êÃâ¿¡¼­ÀÇ ¿À·ùÀ²Àº ´ë·« -100%ÀÔ´Ï´Ù.

quantileÀ» »ç¿ëÇϸé, ÀÌ µ¿ÀÏÇÑ ¼ú¾î(C <= 8.5)¸¦ ÃæÁ·½ÃŰ Çà ¼ö´Â 8.5¸¦ K-quantile °ª Áß Çϳª·Î ¹èÄ¡ÇÏ°í ´ëÀÀ °ª K, Áï 7À» ÃßÁ¤Ä¡·Î »ç¿ëÇÏ¿© »êÃâµË´Ï´Ù. ÀÌ °æ¿ì, ¿À·ù´Â 0À¸·Î °¨¼ÒÇÕ´Ï´Ù.

¿ì¼± ¼ú¾î C <= 10¸¦ »ìÆìº¸½Ê½Ã¿À. Á¤È®È÷ 8°³ÀÇ ÇàÀÌ ÀÌ ¼ú¾î¸¦ ÃæÁ·½Ãŵ´Ï´Ù. ÀÌÀüÀÇ ¿¹¿Í´Â ´Þ¸® 10À̶ó´Â °ªÀº ÀúÀåµÈ K-quantile Áß Çϳª°¡ ¾Æ´Õ´Ï´Ù. µ¥ÀÌÅͰ¡ °í¸£°Ô ºÐ»êµÇ¾î ÀÖ´Ù°í °¡Á¤Çϰí, °ø½Ä (1)À» »ç¿ëÇϸé ÇØ´ç ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö°¡ 1·Î ¿¹ÃøµÇ¸é ¿À·ù´Â -86%ÀÔ´Ï´Ù.

ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº quantilesÀ» »ç¿ëÇÏ¿© ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â Çà ¼ö¸¦ r_1 + r_2·Î »êÃâÇÕ´Ï´Ù. ¿©±â¼­, r_1Àº ¼ú¾î C <= 8.5¸¦ ÃæÁ·½ÃŰ´Â Çà ¼öÀ̰í, r_2´Â ¼ú¾î C > 8.5 AND C <= 10. À§ÀÇ ¿¹¿¡¼­Ã³·³, r_1 = 7ÀÔ´Ï´Ù. r_2¸¦ »êÃâÇϱâ À§ÇØ ÃÖÀûÈ­ ¾Ë°í¸®ÁòÀº ¼±Çü º¸°£¹ý(linear interpolation)À» »ç¿ëÇÕ´Ï´Ù.

          100.0 - 10.0
   r_2 *= ------------ x (# rows with value > 8.5 and <= 100.0)
          100.0 - 8.5
          100.0 - 10.0
        = ----------- x (10 - 7)
          100.0 - 8.5
       *= 3

ÃÖÁ¾ »êÃâ°ªÀº r_1 + r_2 *= 10À̰í, Àý´ë ¿À·ù´Â Àμö°¡ 3 ÀÌ»ó ÁÙ¾îµé¾ú½À´Ï´Ù.

À§ÀÇ ¿¹¿¡¼­ quantileÀ» »ç¿ëÇÏ¿© »êÃâÀÇ Á¤È®µµ¸¦ Çâ»ó½ÃŲ ÀÌÀ¯´Â ½ÇÁ¦ µ¥ÀÌÅͰ¡ 5 - 10ÀÇ ¹üÀ§¿¡ "¸ô·Á" Àֱ⠶§¹®Àε¥, ÀϹÝÀûÀÎ »êÃâ¿¡ »ç¿ëµÇ´Â °ø½ÄÀº µ¥ÀÌÅÍ °ªÀÌ 0¿¡¼­ 100 »çÀÌ¿¡ °í¸£°Ô ºÐ»êµÇ¾î ÀÖ´Ù°í °¡Á¤ÇÕ´Ï´Ù.

quantileÀ» »ç¿ëÇÔÀ¸·Î½á, ¼­·Î ´Ù¸¥ µ¥ÀÌÅÍ °ªÀÇ ºóµµ°¡ Å©°Ô Â÷À̰¡ ³ª´Â °æ¿ì¿¡µµ Á¤È®µµ¸¦ Çâ»ó½Ãų ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½°ú °°Àº ºóµµÀÇ µ¥ÀÌÅÍ °ªÀ» °®´Â Ä÷³À» °í·ÁÇØ º¸½Ê½Ã¿À.

     µ¥ÀÌÅÍ °ª      ºóµµ
   ----------   ---------
      20            5
      30            5
      40           15
      50           50
      60           15
      70            5
      80            5

K = 5, 25, 75, 95 ¹× 100¿¡ ´ëÇÏ¿© K-quantileÀÌ °¡´ÉÇÏ´Ù°í °¡Á¤ÇϽʽÿÀ.

    K     K-quantile
   ----   ----------
     5       20
    25       40
    75       50
    95       70
   100       80

¶ÇÇÑ, ¼¼ °³ÀÇ °¡Àå ¹ß»ý ºóµµ°¡ ³ôÀº °ª¿¡ ±Ù°ÅÇÑ ºóµµ°ª Åë°è¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù°í °¡Á¤ÇϽʽÿÀ.

±×¸®°í, ¼ú¾î°¡ C BETWEEN 20 AND 30°ú °°´Ù°í °í·ÁÇØ º¸½Ê½Ã¿À. µ¥ÀÌÅÍ °ªÀÇ ºÐ»êÀ¸·ÎºÎÅÍ, Á¤È®È÷ 10°³ÀÇ ÇàÀÌ ÀÌ ¼ú¾î¸¦ ÃæÁ·½Ã۰í ÀÖÀ½À» ¾Ë ¼ö ÀÖ½À´Ï´Ù. µ¥ÀÌÅͰ¡ °í¸£°Ô ºÐ»êµÇ¾î ÀÖ´Ù°í °¡Á¤Çϰí, °ø½Ä (1)À» »ç¿ëÇϸé, ÇØ´ç ¼ú¾î¸¦ ÃæÁ·½ÃŰ´Â ÇàÀÇ ¼ö´Â ´ÙÀ½°ú °°ÀÌ »êÃâµË´Ï´Ù.

     30 - 20
   -------  x 100 = 25
   70 - 30

À̰ÍÀº ¿À·ùÀ²ÀÌ 150%¿¡ ´ÞÇÕ´Ï´Ù.

ºóµµ°ª Åë°è ¹× quantileÀ» »ç¿ëÇÏ¿©, ¼ú¾î¸¦ ÃæÁ·ÇÏ´Â Çà ¼ö´Â r_1 + r_2·Î ÃßÁ¤µË´Ï´Ù. ¿©±â¼­, r_1Àº ¼ú¾î (C = 20)À» ÃæÁ·½ÃŰ´Â Çà ¼öÀ̰í, r_2Àº ¼ú¾î C > 20 AND C <= 30À» ¸¸Á·½ÃŰ´Â Çà ¼öÀÔ´Ï´Ù. °ø½Ä (2)¸¦ »ç¿ëÇϸé, r_1Àº ´ÙÀ½°ú °°ÀÌ »êÃâµË´Ï´Ù.

   100 - 80
   -------- = 5
     7 - 3

¼±Çü º¸°£¹ýÀ» »ç¿ëÇϸé, r_2´Â ´ÙÀ½°ú °°ÀÌ »êÃâµË´Ï´Ù.

     30 - 20
     ------- x (# rows with value > 20 and <= 40)
     40 - 20
     30 - 20
   = ------- x (25 - 5)
     40 - 20
   = 10

ÃÖÁ¾ »êÃâ°ªÀº 15À̰í, 3ÀÇ Àμö¾¿ ¿À·ù¸¦ ÁÙ¿´½À´Ï´Ù.


[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]