¿Por qué MySQL Cluster y no una base de datos normal y corriente? Podemos decir que nuestro proyecto mantiene unas necesidades que no se cubren con un sistema de bases de datos corriente. Nuestro principal problema reside en la respuesta a un gran nombre de consultas al sistema que estamos desarrollando; para que ésto sea eficiente necesitamos una tecnología que nos permita la distribución de estas peticiones para tener un tiempo de respuesta menor. Por esta razón pensamos en MySQL Cluster como una buena y fácil solución.
Características generales de MySQL Cluster
MySQL Cluster está formado por un motor NDB, que es un motor de almacenamiento en memoria caracterizado por la persistencia de los datos. Cada parte del cluster se denomina nodo y podemos encontrar de diferentes tipos:
– El nodo administrador tiene la función principal de administrar otros nodos dentro del cluster. Además, ofrece datos sobre la configuración de cada uno, inicializa o detiene su funcionamiento o permite ejecutar copias de seguridad. Es muy importante, por contener la configuración de los otros nodos, que sea el primero en ser arrancado.
– El nodo de datos es el nodo que almacena los datos del cluster. Tendremos tantos nodos de este estilo como réplicas de la información que necesitemos para el sistema.
– El nodo SQL es el nodo que accede a los datos del cluster. En un MySQL Cluster, el nodo cliente es un servidor MySQL tradicional con motor NDB Cluster.
Con esta estructura obtenemos que la configuración del sistema de cluster reside en la configuración de sus nodos y en la comunicación que establecemos entre ellos. Debemos tener en cuenta que se trata de un proceso centralizado en el nodo de administración por lo que es necesario tenerlo arrancado antes de empezar la creación de los nodos de datos.