2009년 5월 30일 토요일

MySQL Cluster개요

MySQL Cluster에 따라서 성능및 가용성을 향상가능하다.  특히 성능의 향상은 극적이 부분이 있어 초간 10만건을 넘는 검색/갱신을 처리했던 사례도 있다.

여기에서는 이 MySQL Cluster의 개요와 이용방법에 대해서 기초적인 부분을 해설해 본다.

MySQL Cluster 를 구성하는 프로세스
MyISAM과 InnoDB등 보통 스토리지엔진만을 사용하는 경우, 데이터베이스 서버 구성으로서는 MySQL본체 프로세스(mysqld) 한개만 쓰이는 것이 기본형이 된다. 

이 응용으로써 replication에 따른 마스터의 mysqld에 대해서 복수의 슬레이브 mysqld를 구성하는 것도 가능하지만 어쨌든 MySQL의 본체 프로세스 mysqld를 1개, 또는 복수 사용하는 구성이 된다. 

한편 MySQL Cluster의 경우 조금 복잡한 구성이 된다.  

다음의 3종류의 노드로부터 구성되고 이 노드를 전부 준비해 둘 필요가 있다. 

  • Data Node(ndbd)
  • SQL Node(mysqld)
  • Management Node(ndb_mgmd)