CI 묻고 답하기

제목 CI관련된건 아닌데, 컬럼수가 많으면 성능에 많이 영향을 미치나요?
글쓴이 이현석 작성시각 2011/06/10 14:05:36
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 31037   RSS
 너무 기초적인것을 질문드리는 것 같아 죄송합니다. 너그러이 용서를 ㅠ

다름이 아니오라 제목에 있는 것 처럼

테이블에 컬럼 수가 많도록 만들면 성능이 많이 저하되는지 싶어서요

컬럼 약 100개 정도?

그럼 부탁드립니다.
 다음글 Disallowed Key Characters. 증상 (2)
 이전글 Zend를 웹서버상에서 바로 하는방법? (3)

댓글

변종원(웅파) / 2011/06/10 14:26:32 / 추천 0

검색을 해보면 한 테이블안의 컬럼수는 40개 이하로 하라고 합니다. (교육 정리)
컬럼수가 많으면 io에 영향을 줄 수밖에 없습니다.

100개 컬럼이 다 필요해서 불러와야 할 경우
select * from table; 와
select name, type from table;의 경우는 당연히 차이가 나겠죠.

컬럼이 100개가 되어야할 정도라면 테이블을 나누거나 그룹핑할 수 있는 데이터(특히나 다이렉트로 검색할 필요가 없는 데이터)는 serialize화 해서 넣는 것도 좋습니다.

이현석 / 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 성능상의 이슈로 단일 테이블에서 여러개의 테이블로 쪼개어지기도 합니다.