Mysql 그리고 큐브리드...

by 들뿔 posted Apr 11, 2007
이글은 phpschool.com에 올렸던 글입니다.
여기에 오시는 Mysql사용자들을 위해서 여기에도 글을 올립니다.

-----------------------------------------------------------------------------

mysql의 대용량이라...
mysql로 1억 6천만건 table을 돌려 봤어요.
이정도의 규모로 돌리기 까지 my.cnf option 조정 db서버 확장 replication등을 다 해봤어요
ndb는 아직 대용량에서 못 돌리는 기능이구요..
심지어는 한국mysql 총판이란 곳에서 제공하는 ndb 말고 mysql 클러스터링 솔루션을 사다가 사용해 보기도 했고요. 근데 실패했었죠 고객들 한테 엄청난 항의를 감수 해야 했죠..

제가 돌려본 DB환경 자체가 전체 실행 query의 약 50%이상이 update와 insert 구문이라
mysql replication 기능도 별 소용이 없었어요. replication 전체를 걸면 replication이 매일 하루 돌리는
backup보다 느리니 말 다했죠. 물론 db별로 서버를 두어 replication을 하면 가능한 이야기 지만
현실 적으로 어려움이 많았죠..

mysql5.1 버전 부터 지원하는 partition table 기능이 아직 안정화 단계가 아니라서 사용할 수도 없고
그렇다고 마냥 기다릴 수만은 없어서 할수없이 DB자체를 쪼개기로 했죠..
거래처 별로 DB를 나누어서 천개가 넘는 table로 나누어 1억 6천만건을 해결했죠..
그러면서 myisam으로 전환하고요..

1억 6천만건의 table이 만약 깨지는 날이면 backup받은걸로 dump 테스트 해보니 20시간이 걸리더군요. 물론 같은 사양으로 테스트 해본건 아니지만 이 시간동안은 서비스 마비입니다.

이러한 경험들을 하고 나니 대용량을 mysql로 사용한다고 하면 권해 드리고 싶지 않습니다.
차라리 큐브리드를 권해드리고 싶어요. cubrid 7.0 이 4/10일 배포 된다고 하는데
여기에는 partition table / replication / 자바가 지원된다고 하네요.

mysql로 대용량을 운영할때 제일 아쉬웠던것이 partition table입니다.
오라클로 바꾸고 싶어도 지금까지 개발되어 진것이 mysql 인지라 쉬운작업이 아니고
현재 사용하고 있는 억대 DB SERVER로 오라클 돌리려면 오라클 가격또한 억대이고
이만 저만 힘든게 아닙니다. 절대 현재 버젼으로 공개된 mysql로 대용량 돌릴 생각 마세요...

제가 경험했던 DB 환경이 모든 회사가 똑같지는 않겠지만
차라리 신규사업이라면 차라리 큐브리드로 돌리세요..
가격도 무료인데다가 nhn의 db로 돌아갈 예정이라고 하니 믿을만 하다고 생각합니다.
그렇다고 mysql DB가 나쁘다는 말이 아닙니다. 대용량으로 사용된다면을 이야기 하는 겁니다.

Articles

5 6 7 8 9 10 11 12 13 14