Mettre en place une base de données MySQL Cluster

Le choix d’une base de données pour gérer les services vitaux d’une société n’est jamais trivial. Dans le monde de la finance ou des telecom Oracle remporte souvent la mise grâce à ses capacités de clusterisation sur plusieurs serveurs (Oracle RAC).

Cette version offre en effet des mécanismes de répartition de charge et de reprise sur erreur automatique extrêmement robustes. Malheureusement l’addition des coûts nécessaires à la mise en place d’une telle architecture n’est pas toujours compatible avec les budgets des applications et services Web.

Pour répondre à cette problématique il existe une version modifiée de MySql, la version Cluster. Cette version est optimisée pour être extrêmement disponible.

En effet dans cette version la plupart des points de défaillance potentiels (POF) sont supprimés. L’ensemble des données est dupliqué sur tous les noeuds du cluster et l’absence ou la défaillance d’un serveur est transparente (sauf si la charge était trop importante avant l’incident bien entendu). Attention il ne faut pas confondre cette configuration avec l‘installation de MySql en mode Master/Slave. L’offre Cluster est réellement différente car les données sont constamment en mémoire et intégralement dupliqués (provoquant du coup un fort trafic réseau en cas de mise à jour de vos données). 

L’utilisation de MySQL Cluster reste encore assez confidentielle, sa mise en place est en effet assez particulière car pour offrir cette haute disponibilité vous devrez disposer d’au moins 4 serveurs. De plus les serveurs destinés au stockage doivent avoir une taille mémoire équivalente à la taille de la base. Néanmoins si vous avez besoin que vos données soient TOUJOURS disponibles, vous savez maintenant qu’il existe une solution…

 
 
Source : http://dev.mysql.com/doc/refman/5.0/fr/ndbcluster.html

Vous l’aurez compris cette version est extrement efficace pour gérer de la haute disponibilité mais au prix d’une consommation mémoire et réseau assez importante (surtout si votre base est utilisée en écriture). Néamoins elle offre une solution clef en main pour des services necessitant plus de 99,99% de disponibilité

Pour plus d’informations : www.mysql.com/products/database/cluster/

Ressource : High Performance MySQL

Sur le même thème :

2 Responses to “Mettre en place une base de données MySQL Cluster”

  1. Rom's says:

    Bonjour,

    merci pour cet article.

    Combien de serveurs au minimum faut-il pour ce type de mise en place ?

  2. Marc says:

    C’est dans le texte : “sa mise en place est en effet assez particulière car pour offrir cette haute disponibilité vous devrez disposer d’au moins 4 serveurs.”

Leave a Reply