Présentation technique de WebSphere eXtreme Scale

WebSphere eXtreme Scale est une grille de données élastique et évolutive, entièrement présente en mémoire. De manière dynamique, cette grille de données met en cache, partitionne, réplique et gère les données et les logiques applicatives sur une multiplicité de serveurs.

Etant donné que WebSphere eXtreme Scale n'est pas une base de données interne, vous devez tenir compte d'exigences de configuration spécifiques. La première phase du déploiement d'une grille de données consiste à démarrer un groupe central et un service de catalogue qui agit en tant que coordinateur de toutes les autres machines virtuelles Java qui font partie de la grille de données et à gérer les informations de configuration. Le démarrage des processus WebSphere eXtreme Scale s'effectue à l'aide de simples scripts de commandes appelés depuis la ligne de commande.

L'étape suivante consiste à démarrer les processus serveur WebSphere eXtreme Scale pour la grille de données permettant de stocker et d'extraire les données. Lorsque les serveur démarrent, ils s'enregistrent automatiquement auprès du groupe central et du service de catalogue pour leur permettre de coopérer en fournissant des services de grille de données. Un plus grand nombre de serveurs augmente la capacité et la fiabilité de la grille de données.

Une grille de données locale est une simple, une grille à instance unique dans laquelle toutes les données se trouvent dans la grille. Pour utiliser efficacement WebSphere eXtreme Scale comme espace de traitement de la base de données interne, vous pouvez configurer et déployer une grille de données répartie. Dans une grille répartie, les données sont réparties entre les divers serveurs eXtreme Scale qui les contiennent de manière à ce que chaque serveur n'en contienne qu'une partie, appelée précisément partition.

Un paramètre de configuration de grille de données répartie par clé correspond au nombre de paramètres dans la grille. Les données de la grille sont partitionnées dans ce nombre de sous-ensembles, chaque sous-ensemble étant appelé partition. Le service de catalogue se charge de repérer en fonction de sa clé la partition correspondant à une donnée particulière. Le nombre de partitions affecte directement la capacité et l'extensibilité de la grille de données. Un serveur peut contenir une ou plusieurs partitions de données de la grille. De ce fait, la taille des partitions est limitée par l'espace mémoire du serveur. Inversement, augmenter le nombre de partitions augmente la capacité de la grille de données. La capacité maximale d'une grille de données correspond au nombre de partitions multiplié par la taille de la mémoire utilisable de chaque serveur. Un serveur peut être une machine virtuelle Java, mais vous pouvez définir le serveur eXtreme Scale pour l'adapter à votre environnement de déploiement.

Les données d'une partition sont stockées dans un fragment. Pour la disponibilité, une grille de données peut être configurée avec des répliques qui peuvent être synchrones ou asynchrones. Les modifications apportées aux données de la grille sont effectuées dans le fragment primaire et répliquées vers les fragments secondaires. La mémoire totale qui est utilisée ou requise par une grille de données est donc égale à la taille de la grille multipliée par (1 (pour le fragment primaire) + le nombre de répliques).

WebSphere eXtreme Scale distribue les fragments d'une grille de données entre le nombre de serveurs de la grille. Ces serveurs peuvent se trouver sur le même serveur ou des serveurs différents. Pour que la disponibilité, les fragments de réplique sont placés sur des serveurs physiques distincts à partir de fragments primaires.

WebSphere eXtreme Scale surveille le statut de ses serveurs et déplace les fragments en cas de défaillance ou de reprise des serveurs de fragments ou physiques. Par exemple, si le serveur contenant un fragment de réplique est défaillant, WebSphere eXtreme Scale alloue un nouveau fragment de réplique et réplique les données du fragment primaire vers le nouveau fragment de réplique. Si un serveur qui contient un fragment primaire est défaillant, le fragment de réplique devient le fragment primaire et le nouveau fragment de réplique est construit. Si vous démarrez un serveur supplémentaire pour la grille de données, les fragments sont équilibrés sur tous les serveurs. Ce rééquilibrage est appelé scale-out. De même, pour le scale-in, vous pouvez arrêter l'un des serveurs pour réduire les ressources utilisées par une grille de données. Par conséquent, les fragments sont équilibrés sur les serveurs restants.