2009년 2월 12일 목요일

디스크 기반 & 메모리 기반

우선 디스크에 데이터를 보존할 지  메모리에 유지시킬 지에 따라 스토리지엔진이 분류가능하다. 
일반적으로 디스크기반 스토리지엔진이더라도 데이터를 메모리에 캐쉬하는 것으로 어느정도 고속화할 수는 있다. 

그러나 역시 갱신처리등을 시작해서  코딩중 많은 부분에 있어서 디스크 I/O를 고려한 설계가 필요하다. 
그래서 처음부터 메모리에 데이터가 있는 것을 전제로한 코딩이 가능하기 때문에 메모리 기반 스토리지 엔진이 성능이 좋을 수 밖에 없다.  
그렇지만  메모리기반 스토리지 엔진은 MySQL이 크래쉬당하거나 재기동하거나하면 데이터를 잃어버리기 때문에  마스터 데이터는 별도의  장소에 보관하고  MySQL이 기동한 후에 데이터를 적절히 재취득가능하게 하는등 운용할 때  고민을 해야할 것이다.