반응형

MySQL

MySQL GROUP_CONCAT 사이즈 조절하기



GROUP_CONCAT 명령을 이용하여 데이터를 출력하기 위해 다음과 같은 쿼리를 사용했다. 


mysql> SELECT merge, title, GROUP_CONCAT(keyword SEPARATOR ';') FROM table_merge

_last GROUP BY merge, title into outfile "./table_merge_GROUP.txt";

Query OK, 43975 rows affected (6 min 31.93 sec)


워낙 데이터가 많아서시간이 꽤나 걸렸지만, 문제 없이 돌아갔고 생성된 파일을 확인해 보았다. 그런데.. 



GROUP_CONCAT으로 묶였던 데이터가...짤렸다. 


왜그런지 이유를 살펴보니, 바로 MySQL 세팅 상의 GROUP_CONCAT SIZE 문제.. 기본적인 사이즈가 어느정도로 설정되어 있는지 확인해 보자. 


mysql> show variables like "group_concat_max_len";

+------------------------------+-------+

| Variable_name              | Value |

+------------------------------+-------+

| group_concat_max_len | 1024  |

+------------------------------+-------+

1 row in set (0.00 sec)


기본적으로는 1024로 설정되어 있다. 따라서 그 이상의 크기를 갖는데이터는 짤렸던 것이다. 



  GROUP_CONCAT 사이즈 조절 명령


SET @@group_concat_max_len = 조절할 크기 ; 


mysql> set @@group_concat_max_len = 50240;

Query OK, 0 rows affected (0.00 sec)


mysql> show variables like "group_concat_max_len";

+------------------------------+--------+

| Variable_name               | Value |

+------------------------------+--------+

| group_concat_max_len | 50240 |

+------------------------------+--------+

1 row in set (0.00 sec)



사이즈가 변경된 것을 확인한후, 다시 GROUP_CONCAT을 사용하였고 그 결과는 



데이터가 많아서 그림에 다 나오진 않았지만 아무튼 또 하나 해결했다잉~  ㅋ. 



  SORT_BUFFER_SIZE 조절 명령


추가로 sort_buffer_size를 조절 하는 것을 적어 놓는다. 

sort_buffer_size 크기를 키우면, ORDER BY 나 GROUP BY 의 속도가 향상된다. 


mysql> show variables like "sort_buffer_size";

+------------------+--------+

| Variable_name      | Value  |

+------------------+--------+

| sort_buffer_size    | 524288 |

+------------------+--------+

1 row in set (0.00 sec)


기본값은 524288 이다. 


mysql> set @@sort_buffer_size = 924288;

Query OK, 0 rows affected (0.00 sec)


mysql> show variables like "sort_buffer_size";

+------------------+--------+

| Variable_name      | Value  |

+------------------+--------+

| sort_buffer_size   | 924288 |

+------------------+--------+

1 row in set (0.00 sec)


반응형

+ Recent posts