제목 | CI관련된건 아닌데, 컬럼수가 많으면 성능에 많이 영향을 미치나요? | ||
---|---|---|---|
글쓴이 | 이현석 | 작성시각 | 2011/06/10 14:05:36 |
|
|||
너무 기초적인것을 질문드리는 것 같아 죄송합니다. 너그러이 용서를 ㅠ 다름이 아니오라 제목에 있는 것 처럼 테이블에 컬럼 수가 많도록 만들면 성능이 많이 저하되는지 싶어서요 컬럼 약 100개 정도? 그럼 부탁드립니다. |
|||
다음글 | Disallowed Key Characters. 증상 (2) | ||
이전글 | Zend를 웹서버상에서 바로 하는방법? (3) | ||
변종원(웅파)
/
2011/06/10 14:26:32 /
추천
0
|
이현석
/
2011/06/10 20:23:12 /
추천
0
40개가 마지노선이군요
답변 감사합니다! 다시 고민속으로~ |
woof2
/
2011/06/15 19:52:19 /
추천
0
늦었지만 댓글달아 봅니다.
http://dev.mysql.com/doc/refman/5.0/en/column-count-limit.html http://www.mysqlperformanceblog.com/2009/09/28/how-number-of-columns-affects-performance/ 위 글에 딱 컬럼수 100개로 MyISAM과 Innodb 에서 실험한 결과가 있습니다. int, char 형과 같은 고정크기타입의 경우 컬럼수와 상관없어 보이고, varchar 와 같은 동적크기타입의 경우 성능에 영향을 많이 주고 있네요.(컬럼수 증가와 함께) |
Andrew
/
2011/06/17 10:57:44 /
추천
0
설계상에서 단일 테이블의 수많은 필드들이, DBMS 성능상의 이슈로 단일 테이블에서 여러개의 테이블로 쪼개어지기도 합니다.
|
검색을 해보면 한 테이블안의 컬럼수는 40개 이하로 하라고 합니다. (교육 정리)
컬럼수가 많으면 io에 영향을 줄 수밖에 없습니다.
100개 컬럼이 다 필요해서 불러와야 할 경우
select * from table; 와
select name, type from table;의 경우는 당연히 차이가 나겠죠.
컬럼이 100개가 되어야할 정도라면 테이블을 나누거나 그룹핑할 수 있는 데이터(특히나 다이렉트로 검색할 필요가 없는 데이터)는 serialize화 해서 넣는 것도 좋습니다.