자유게시판

제목 새벽에 일어나...
글쓴이 변종원(웅파) 작성시각 2011/08/16 08:25:35
댓글 : 7 추천 : 0 스크랩 : 0 조회수 : 8338   RSS
포럼이 일부 게시판(질답, 자유)에서 느리다는 글이 올라와서 보니 실제로 느렸습니다.
게시글이 별로 없는 게시판은 0.몇초대였는데 게시글이 많은 게시판에서는 2.6초까지 나오더군요.

포럼 초창기에는 글쓴이에 아이디가 표시됐었는데 중간에 닉네임을 넣으면서 users테이블을 조인하고
nickname필드 하나를 더 가져와서 게시글 리스트에 글쓴이로 노출을 했습니다.
이 부분이 문제가 됐네요. 회원수도 많아지고 닉네임이 한글이다보니 index 걸어도 효과도 없고..
그래서 글 작성할때 닉네임을 게시물 테이블에 넣고 users테이블 조인을 빼버렸습니다.
기존 테이블들은 간단한 프로그램 작성해서 전부 닉네임으로 업데이트 했구요.

지금은 0.1X초대 나옵니다. ^^;
 다음글 ci-큐브리드 공식 지원 투표중~ (4)
 이전글 명색이 휴간데ㅜㅜ (5)

댓글

양승현 / 2011/08/16 09:34:26 / 추천 0
헙 그렇군요.. 역시 포럼분들의 눈은 날카로와요 ㅋㅋ
전 전체적으로 느린줄 알았는데.. ㅎㅎ
한대승(불의회상) / 2011/08/16 10:08:57 / 추천 0
ㅎㅎ 항상 join이 문제더라는...

인덱스 한글에 효과가 없다는건 금시초문인데....

그랬던가요????
이현석 / 2011/08/16 10:41:59 / 추천 0
오아  join 하나만으로도 속도에 지장이 있는거군요 덜덜덜

변종원(웅파) / 2011/08/16 13:40:50 / 추천 0
 불의회상/ 다른 원인이 있을지 모르겠지만 현재로서는 users테이블 join을 빼기전에 해당 필드에 걸린
index를 삭제해봤는데 삭제전이나 삭제후나 속도차이가 별반 없어서 효과가 없다고 이야기한겁니다.

이현석/ 꼭 join이 안좋은 것은 아닙니다. ^^
들국화 / 2011/08/17 09:45:05 / 추천 0
 RDBMS에서 join이 생명이고 골치 거리 인것 같네요.
Query Explain 올려서 다들 좋은 방안 내놓아서 처리했어도 재밌었을것 같네요.
지금은 넘 빨라서 좋아요..^^
한대승(불의회상) / 2011/08/17 10:19:08 / 추천 0
웅파/ ^^
어쩌면 기존 테이블 수정하지 않고도 좋은 방법이 나왔을지도 모르겠네요.
Join 과 Index 믿고 정규화를 수행 하는데...
이번건으로 Join 과 Index에 대한 잘못된 인식이 될까 우려 되는군요.
들국화님이 지적한것 처럼 RDBMS의 꽃은 Join 이라능.....

변종원(웅파) / 2011/08/17 13:05:59 / 추천 0
불의회상/ 네 좀더 이야기하자면 join 외에 group by 도 같이 영향을 줬을거라 판단이 되는데
join 놔두고 having으로 처리를 해봤어야 했는데 시간관계상...
join에 대한 부정적인 인식은 없을거라 생각이 됩니다.
구조적인 문제라 생각이 되구요. (group by... file)
근데 지금 생각해보니 리스트에서 파일을 왜 조인해서 같이 가져왔을까 생각이 드네요. ㅋㅋ
file_count라는 필드가 있어서 카운트는 표시가 되는데... ㅋㅋㅋ
(짧은 시간에 포럼을 만들게되서... ^^;)