2009년 2월 9일 월요일

멀티스토리지엔진의 장점((Multi Storage Engine merit)

복수의 스토리지엔진이 있어서 테이블단위로 선택할 수 있다라는게 무엇이 좋은 점인가?

보통 SQL문의 구문해석과 최적화는 CPU하고 메모리만을 사용한 처리이기 때문에  이 부분은 그다지 성능에 영향은 끼치지 않는다.  그렇지만  그 다음 스텝에서 이루어지는 데이터 검색과 저장은 디스크에 액세스하는 경우가 있어  성능에 대한 영향은 매우 크다. 
일반적으로 메모리하고 디스크는 100배이상의 액세스속도의 차가 있기때문이다. 

그것에 MySQL에서는  다루는 데이터의 특성에 맞추어서 각각 최적의 성능을 발휘할 수 있도록 하기 위한  준비로써 멀티스토리지 엔진/아키텍쳐가 제공된다. 
테이블 설계시 제3정규형으로 한 후에 성능을 고려 비정규화하거나 별도로 테이블을 잘라 만들거나 하는 경우가 있지만 MySQL에서는 특정 데이터만 별도의 테이블로 한 다음에  별도의 스토리지 엔진으로 한다거나 하는 튜닝도 가능하다.