mysql Å×À̺í ÆÄƼ¼Å´× Áú¹®

djkneg883   
   Á¶È¸ 1374   Ãßõ 0    

 안녕하세요.

MySQL 테이블 파티셔닝 관련해서 고민중이 내용이 있어서 조언을 구하고자 글을 남깁니다.

10년치 데이터 테이블은 연도별로 나누려고 합니다.

테이블 파티셔닝이라는게 있던데, Range 파티셔닝을 이용해서 테이블 파티셔닝을 했을때와

테이블은 단순히 한개의 기준일자를 잡아서 연도별로 나누는것과 비교를 하면 어떤 장단점이 있는지 궁금합니다.


1. 테이블 파티셔닝

ListTable이라는 1개의 테이블에 10년치 데이터를 넣고, 아래와 같이 관리하는 방법

ALTER TABLE `ListTable` PARTITION BY RANGE (TO_DAYS(`regDt`)) (

   PARTITION P_2019 VALUES LESS THAN (TO_DAYS('2020-01-01')) ENGINE = MYISAM,

   PARTITION P_2020 VALUES LESS THAN (TO_DAYS('2021-01-01')) ENGINE = MYISAM,

   ......

)


2. 단순 테이블 나누기

ListTable_2019, ListTable_2020, ListTable_2021 ....

이런식으로 전부 테이블을 만들고 데이터를 관리하는 방법


위와 같이 했을 때, 만약 regDt 범위를 2019.05.01 ~ 2020.12.31 이렇게 검색을 한다면

1번의 경우 select * from ListTable where regDt between '2019-05-01' and '2020-12-31' 이렇게 단순하게 하면 될것 같지만

2번의 경우 (select * from ListTable_2019 where where regDt between '2019-05-01' and '2020-12-31') UNION ALL (select * from ListTable_2020 where where regDt between '2019-05-01' and '2020-12-31') 이렇게 하는게 맞는지요?


정리를 하자면,

질문1. 테이블 파티셔닝과 테이블을 단순하게 나눴을때의 장단점이 어떤게 있는지 궁금합니다.

질문2. regDt 범위를 2019.05.01 ~ 2020.12.31 이렇게 검색한다면 제가 생각하는게 맞는건지 궁금합니다. 2번의 경우 더 나은방법이 있는지도 궁금합니다.

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
MySQLµµ ´Ù¸¥ DBMS¶û º° Â÷ÀÌ°¡ ¾ø¾î
https://velog.io/@ryuhyewon/%ED%8C%8C%ED%8B%B0%EC%85%98-%EC%9E%A5%EB%8B%A8%EC%A0%90
¹®¼­ Âü°íÇÏ½Ã¸é µÉ °Í °°½À´Ï´Ù.

Å×À̺íÀ» ºÐÇÒÇØ
UNION ALL À» »ç¿ëÇØ¾ß ÇÒ °æ¿ì°¡ ¸¹´Ù¸é ÆÄƼ¼Å´× ÇÏ´Â °ÍÀ» Ãßõ ÇÕ´Ï´Ù.
µ¥ÀÌÅÍ°¡ ¾ó¸¶³ª ¸¹ÀºÁö ¸ð¸£°ÚÁö¸¸ ´ë¿ë·®ÀÌ ¾Æ´Ï¸é ÆÄƼ¼Å´×µµ ÇÏÁö ¾Ê¾Æµµ ...
ĵÀ§µå 2023-02
°³ÀÎÀûÀÎ »ý°¢ÀÔ´Ï´Ù. ´Ü¼ø Âü°í ÇØÁÖ¼¼¿ä^^

1. Å×À̺í ÆÄƼ¼Å´×Àº ¾îÇø®ÄÉÀ̼ÇÀ» ¼öÁ¤ÇÏÁö ¾Ê¾Æµµ µÇ´Â°Ô ÀåÁ¡À̶ó°í »ý°¢ÇÕ´Ï´Ù.
  Å×À̺íÀ» ´Ü¼øÇÏ°Ô ³ª´©´Â°Ç ¾îÇø®ÄÉÀ̼ÇÀÌµç ¾Æ´Ï¸é À̺¥Æ® ½ºÄÉÁÙ·¯¸¦ °Éµç Ãß°¡ ÀÛ¾÷ÀÌ ÇÊ¿äÇϴٴ°Å.. °³¹ßÀÚ´Â ºý¼¼Áö¸¸ ¾î·µç ´«¿¡ º¸ÀÌ´Â °ü¸®¶ó´Â°Ô ÀåÁ¡ÀÎ°Í °°°í¿ä.

2. ÆÄƼ¼Å´×µÈ Å×À̺íÀº »ý°¢ÇϽŠ´ë·Î ¾²¸é µÇ°í¿ä.
  ´Ü¼øÇÏ°Ô ³ª´« Å×ÀÌºíµµ ±×·±½ÄÀ¸·Î ÇÏ½Ã¸é µË´Ï´Ù. º¹ÀâÇÏÁÒ...

±×·¡¼­ ´ëÇü ¼îÇθô(Áö¸¶ÄÏ,11¹ø°¡,ÄíÆÎ,µîµîµî..) ¸ðµç ÀºÇàµé º¸½Ã¸é ¹üÀ§ °Ë»öÀÌ Á¦ÇÑÀû ÀÏ ¼ö ¹Û¿¡ ¾ø½À´Ï´Ù.. ÃÖ±Ù ¸î´Þ ¶Ç´Â ¾ðÁ¦ºÎÅÍ ¾ðÁ¦±îÁö ÁöÁ¤.

°³ÀÎÀûÀÎ »ý°¢À¸·Î °³¹ß,¼­¹ö,¿î¿µ,±âȹ,¿¹»ê µîµî ´«¾ÕÀÇ Çö½ÇÀº »óȲ¸¶´Ù ´Ù¸£±â¿¡ Á¤ÇØÁø Á¤´äÀº µû·Î ¾ø´Ù°í º¾´Ï´Ù.
°¡·É ¹¹ °í¼º´É/°í¿ë·® u.2 ssd ·¹À̵å À̺üÀÌ ¹­´Â ½ÄÀ¸·Î Áï, Çϵå¿þ¾î·Î ¹Ð¾î ºÙÀÌ´Â °Í ¶ÇÇÑ °¡´ÉÇÑ ¹æ¹ýÀÌ µÉ ¼ö ÀÖÁÒ
¼úÀÌ 2023-02
Å×À̺íÀÌ ´ë¿ë·®À϶§ÀÇ ¹®Á¦Á¡À» »ý°¢Çϸé ÀÌÇØ°¡ ºü¸¦°Ì´Ï´Ù.
ƯÁ¤ºÎºÐ °Ë»öÇÒ·Á°í ÇÏ¸é ¼û³Ñ¾î°©´Ï´Ù. ±×·±µ¥ ÀÌ°É Å×À̺í´ÜÀ§·Î ÂÉ°³¹ö¸®¸é ¾îÇø®ÄÉÀÌ¼Ç ´Ü¿¡µµ ÄÚµùÀ» ´Ù½ÃÇؾߵǴ ¹®Á¦°¡ »ý±â°Ô µË´Ï´Ù.
±×·¡¼­ Å×À̺í ÆÄƼ¼ÇÀ̶õ°Ô ÇÊ¿äÇÑ°Ì´Ï´Ù.
°Ë»ö¹üÀ§°¡ ÆÄƼ¼Ç´ÜÀ§·Î ±¸ºÐµÇ´Ùº¸´Ï ¼º´ÉÀÌ ÈξÀ °³¼±µË´Ï´Ù.
MySQLÀº ÆÄƼ¼Ç±îÁö¸¸ Áö¿øµÇ´ÂÁö´Â ¸ð¸£°ÚÀ¸³ª MSSQL ±âÁØÀ¸·Î º»´Ù¸é ÆÄƼ¼Ç ±¸ºÐº°·Î ¾ÐÃàÅ×À̺íÀ» ÁöÁ¤ÇÒ¼ö°¡ ÀÖ°í Å×ÀÌÅÍ ³¯¸±¶§µµ ÆÄƼ¼ÇID·Î Çѹ濡 ³¯¸±¼ö À־ À¯Áö°ü¸®Çϴµ¥µµ ÈξÀ ¿ëÀÌÇÕ´Ï´Ù.

Å×À̺íÆÄƼ¼ÇÀÇ ±âÁØÀº ´ë¿ë·®À̶ó´Â ±âÁØ°ú ¼º´É°ú À¯Áö°ü¸®¿¡ ÀÖ½À´Ï´Ù.
°­Çѱ¸ 2023-02
°³¹ßÀÚÀÇ ÀÔÀå¿¡¼­´Â
±×³É Å×À̺íÀ» ºÐ¸®ÇÕ´Ï´Ù
Á»´õ º¹ÀâÇÏ°ÔÇÏ¸é ½Ç½Ã°£ db¿ëÀ¸·ÎÇÏ°í
ÀÌÀü ³â´ÜÀ§ µ¥ÀÌÅÍ´Â ´Ù¸¥ db¿¡ ³Ö¾î¹ö¸®°í
½Ç½Ã°£ ¿î¿µ¿¡ ÇÊ¿äÇÑ db´Â º¹Á¦ db¸¸µé¾î¼­ ½Ç½Ã°£ ¹é¾÷ db·Î µ¿±âÈ­ÇÕ´Ï´Ù

ÀåÁ¡Àº º¹±¸°¡ ÇÊ¿äÇÒ¶§ ¿ë·®ÀÌ ÁÙ¾îµé¾î¼­ ¸îºÐ³»·Î ÇѴٴ°ŠÇϳª¹Û¿¡ ¾ø½À´Ï´Ù¸¸
¼­ºñ½º¿ëµµ´Â ÀÌÁ¤µµ±îÁö Çغþú³×¿ä


QnA
Á¦¸ñPage 348/5686
2015-12   1506923   ¹é¸Þ°¡
2014-05   4970631   Á¤ÀºÁØ1
2015-04   3518   ±èÈ¿¼ö
2017-05   3587   ¾È³çÇϽʴϡ¦
04-05   1137   Á߸³±â¾î¿ÀÅä
2015-04   4165   Win31
2017-05   3099   Á¤ÀºÁØ1
2018-09   3189   IRIX6530
2017-05   4599   ¾Æ¸¶µ¥¿ì¾²
2019-11   2448   sffbig
2016-06   4519   ¼­¿ïI±èµ¿¼ö
04-24   1140   ¸¼ÀººÎö
2017-06   5009   KMG5586
2019-11   4423   ÁعÙÀÌ
2022-09   1126   °í¾çÀÌ»óºñ
2016-07   5115   izegtob
2015-05   4252   ½Öcpu
05-14   1754   Á¤¹«Çö
2011-09   5141   ȲÀçÇÊ
2015-05   6412   ¿©ÁÖÀÌ»óµ·
2022-10   1884   °¡»óÈ­¸°ÀÌ
2011-10   5689   ȲÀçÇÊ