DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL Cluster
  • Présentation
  • Fonctionnement d'un Cluster HFSQL
  • Avantages d'un Cluster HFSQL par rapport à un serveur HFSQL autonome
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
HFSQL Cluster est un serveur de bases de données destiné à être déployé sur plusieurs serveurs. Un cluster de base de données remplace avantageusement un serveur autonome dans les cas où la disponibilité est un critère essentiel.
Pour plus d'informations sur HFSQL Cluster, consultez également :
Attention :
L'utilisation de HFSQL Cluster nécessite l'usage d'un pack d'installation spécifique.
Ce pack est disponible gratuitement en téléchargement sur le site de PC SOFT, dans l'espace de téléchargement des modules communs à la version 2024.
Fonctionnement d'un Cluster HFSQL
Le schéma suivant présente le déploiement d'un Cluster HFSQL utilisant 4 machines : un coordinateur et trois noeuds.
Schéma d'un Cluster HFSQL
Dans ce schéma, les éléments suivants sont représentés :
ElémentRôle
ClusterLe cluster est une sorte de super serveur de bases de données.
En interne, il est constitué d'un ensemble de noeuds et d'un coordinateur.
Du point de vue d'un client, il fonctionne de la même façon qu'un serveur de bases de données autonome.
NœudsUn noeud est un des serveurs de bases de données constituant le cluster.
Chaque noeud contient une copie des bases hébergées par le cluster. Tous les noeuds contiennent strictement les mêmes données et sont répliqués entre eux de façon synchrone.
CoordinateurLe coordinateur est le serveur qui permet d'administrer le cluster via le service ClusterManager.
Il sert lors de phases de démarrage et d'arrêt du cluster.
Il est également utilisé lors d'une défaillance d'un ou plusieurs noeuds pour réguler le fonctionnement du cluster.
En cas de défaillance du coordinateur, il n'est plus possible d'arrêter ou démarrer le cluster ou encore d'ajouter ou supprimer des noeuds.
Le cluster continue de fonctionner uniquement s'il y a strictement plus de noeuds actifs que de noeuds inactifs dans le cluster.
Exemples :
  • Le cluster possède 4 noeuds, 1 inactif et 3 actifs : si le coordinateur tombe, le cluster continue de fonctionner.
  • Le cluster possède 4 noeuds, 2 inactifs et 2 actifs : si le coordinateur tombe, le cluster s'arrête de fonctionner.
Conseils :
  • Avoir un nombre de noeuds impairs.
  • Ne pas stopper trop de noeuds à la fois (notamment pour réaliser des updates).
ClientUn client est une application (WINDEV ou WINDEV Mobile) ou un site WEBDEV accédant aux données hébergées par le cluster.
DNSLe serveur DNS est utilisé pour orienter les clients entre les différents noeuds du cluster.

L'architecture de stockage des données de HFSQL Cluster permet de garantir une haute disponibilité du service. Il repose sur les principes suivants :
  • Non partage des structures de stockage (ce mécanisme est habituellement appelé le "shared-nothing") : le contenu des bases de données est intégralement répliqué sur chaque noeud du cluster.
  • Réplication synchrone des noeuds : les données sont mises à jour en continu sur l'intégralité du cluster.
  • Aucun point unique de défaillance (SPoF, Single Point of Failure) : aucun élément du système ne compromet le fonctionnement du cluster par sa seule défaillance.
Les fonctionnalités habituelles de HFSQL Client/Serveur sont bien sur disponibles. Ces fonctionnalités assurent déjà sur des serveurs autonomes de taux de disponibilité très élevés et des coûts de maintenance et de possession (TCO) particulièrement bas :
  • Recalcule automatique et à chaud des statistiques des bases de données.
  • Modification à chaud des structures de données.
  • Reconnexion automatique des applications clientes en cas de coupure réseau.
  • ...
Avantages d'un Cluster HFSQL par rapport à un serveur HFSQL autonome
Les principaux avantages d'un Cluster HFSQL par rapport à un serveur autonome sont les suivants :
  • Haute disponibilité
    Comme les données ne sont plus localisées sur un seul serveur physique mais sur une grappe de machines, la base de données est considérablement plus résistante aux problèmes techniques. Si l'une des machines du cluster tombe en panne ou si sa liaison réseau est interrompue, les clients qui étaient connectés à cette machine sont automatiquement re-routés sur un autre noeud du cluster : la continuité du service est assurée.
    Cas d'utilisation : bases de données utilisées par des applications fonctionnant en continu (chaînes de production, sites accessibles du monde entier) ou pour lesquelles les temps d'interruption de service sont coûteux.
  • Répartition de charge
    Lorsque le nombre de clients augmente, il peut être difficile de faire évoluer un unique serveur physique pour lui permettre de faire face à la montée en charge. Dans le cas d'un cluster, les connexions clientes sont réparties entre les différents noeuds. De cette façon :
    • chaque nÅ“ud du cluster peut être hébergé par un serveur de moindre puissance.
    • il est facile d'ajouter de nouveaux noeuds au fur et à mesure de l'augmentation du nombre de clients.
      Cas d'utilisation : les bases de données dont le nombre de clients peut être très élevé (sites web par exemple) ou dont le nombre de clients est amené à varier en fonction du temps.
  • Resynchronisation automatique des noeuds défaillants
    En cas d'incident sur une des machines du cluster, le noeud défaillant est automatiquement exclu du cluster. Lorsque le problème a été corrigé (machine réparée ou changée, liaison réseau restaurée, ...), il suffit de remettre la machine en service. HFSQL Cluster va alors automatiquement réassocier le noeud au cluster et resynchroniser son contenu. A l'issue de la resynchronisation, le noeud redeviendra accessible pour les clients du cluster.
  • Modification dynamique de la structure du cluster
    Les noeuds d'un cluster peuvent à tout moment être arrêtés ou démarrés depuis l'interface d'administration (le Centre de Contrôle HFSQL). Cela permet une évolution progressive de la configuration du cluster en remplaçant les noeuds un par un sans interruption de service.
Version minimum requise
  • Version 15
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 23/10/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale