Brevet FR2868569A1 — publié le 20051007

SYSTEME DE GRAPPE DE MIROIR DE DONNÉES, PROCÉDÉ ET PROGRAMME INFORMATIQUE POUR SYNCHRONISER DES DONNÉES DANS UN SYSTEME DE GRAPPE DE MIROIR DE DONNÉES CONTEXTE DE L'INVENTION Domaine de l'invention La présente invention concerne un système de grappe de miroir de données et un procédé pour synchroniser des données, et particulièrement un système de grappe et un procédé capable de synchroniser des données de multiples serveurs à grande vitesse. Description de l'art connexe Dans le système de grappe de miroir de données, les noeuds respectifs sont connectés l'un à l'autre en utilisant une section de connexion comme un réseau local (LAN) ou un élément similaire en tant qu'interconnexion pour synchroniser les données entre les noeuds. Néanmoins, lorsqu'un protocole comme le protocole de contrôle de transmission/protocole internet TCP/IP est utilisé, une pile de logiciels à utiliser dans le protocole est profonde et la communication est effectuée par l'intermédiaire d'un dispositif d'entrée/sortie (E/S) ou d'un élément similaire ce qui provoque un problème dans lequel la latence est accrue. L'interconnexion utilisée ici est une section de connexion, qui sert d'interface d'entrée/sortie entre un serveur d'exploitation et un serveur en attente (il est possible d'avoir de multiples serveurs en attente) qui configurent la grappe pour synchroniser des données entre le serveur d'exploitation et le serveur en attente. En outre, la latence indique une différence de temps de synchronisation entre le début du traitement de synchronisation et la fin de celui-ci lorsque des données du serveur d'exploitation actualisées par le serveur d'exploitation sont synchronisées avec le serveur en attente. Dans le système de grappe de miroir de données, il est nécessaire d'actualiser une base de données du système en attente en fonction d'un changement de données stockées dans la base de données du serveur d'exploitation pour obtenir une synchronisation entre le serveur d'exploitation et le serveur en attente. Dans le cas du système ayant une grande latence, il faut beaucoup de temps pour effectuer la synchronisation de données entre le serveur d'exploitation et le serveur en attente. Puisque les intervalles de temps de synchronisation de données sont accrus, il existe un cas dans lequel une quantité de données à transférer dans un traitement de synchronisation est augmentée. Par conséquent, lorsque le serveur d'exploitation tombe en panne et passe sur le système en attente, une quantité d'informations perdues est augmentée puisque la synchronisation avec le système en attente n'est pas obtenue pendant la panne, de sorte que les mérites résultant de la combinaison avec la configuration de grappe sont réduits. La demande de brevet japonais KOKAI non examinée N H04-299435 décrit l'un des procédés de contrôle de synchronisation dans un système de grappe. Dans ce système de grappe, chacun d'un serveur d'exploitation et d'un serveur en attente a une base de données différente. Ce système de grappe peut effectuer une synchronisation dans une base de données entre le serveur d'exploitation et le serveur en attente dans un état en ligne. Néanmoins, dans ce système de grappe, aucune idée de réduction de latence n'est apportée. La demande de brevet japonais KOKAI non examinée N H08-221289 décrit un autre procédé de configuration de système de grappe améliorée. Dans ce système de grappe, chaque n ud a un espace d'adresse de mémoire du système correspondant et un espace d'adresse de mémoire de l'autre système. En outre, il existe une symétrie dans une structure logique entre l'espace d'adresse de mémoire du système correspondant et l'espace d'adresse de mémoire de l'autre système. Néanmoins, dans cette configuration, la gestion de l'espace d'adresse de mémoire du système correspondant et de l'espace d'adresse de mémoire de l'autre système est compliquée. De plus, une conversion d'adresse entre l'espace d'adresse de mémoire du système correspondant et l'espace d'adresse de mémoire de l'autre système est nécessaire. La demande de brevet japonais KOKAI non examinée N H11-149388 décrit un autre procédé de configuration de système de grappe améliorée. Dans ce système de grappe, chacun d'un serveur d'exploitation et d'un serveur en attente a deux dispositifs de stockage principaux. Lorsque des données sont stockées dans un premier dispositif de stockage principal d'un appareil de serveur, les données sont transférées vers un second dispositif de stockage principal de l'autre appareil de serveur pour effectuer une synchronisation en utilisant le transfert DMA (accès direct à la mémoire). Néanmoins, dans cette configuration, la gestion des espaces d'adresse de mémoire des deux dispositifs de stockage principaux est compliquée. En outre, un contrôleur DMA doit être initialisé à un moment de début de transfert DMA, ce qui peut provoquer un goulot d'étranglement de latence. Comme cela a été mentionné ci-dessus, dans le système de grappe de miroir de données conventionnel, il existe des problèmes en ce qu'il faut beaucoup de temps pour effectuer une synchronisation de données entre le serveur d'exploitation et le serveur en attente et la gestion des espaces d'adresse de mémoire est compliquée. La présente invention est proposée en tenant compte des circonstances susmentionnées, et un objet de la présente invention consiste à réduire une quantité de données défaillantes dans une synchronisation de miroir au moment où un problème se produit. De plus, un autre objet de la présente invention consiste à proposer un système de grappe avec un contrôle facile et une gestion facile et son procédé de contrôle. RESUME DE L'INVENTION Pour réaliser l'objet ci-dessus, un système de grappe de miroir de données selon la présente invention comprend de multiples appareils de serveurs, l'un d'eux servant de système d'exploitation et au moins un autre servant de système en attente. Chacun des appareils de serveur comprend une base de données et une mémoire partagée accessible à partir des appareils de serveur. Les appareils de serveur sont connectés l'un à l'autre par des interconnexions qui peuvent transférer des données changées de chacune des bases de données à la mémoire partagée du partenaire de communication. Chacun des appareils de serveur comprend une section de pilote de mémoire pour le système d'exploitation qui écrit un changement de données sur la base de données du système d'exploitation dans la mémoire partagée existant dans l'appareil de serveur en attente lorsque l'appareil de serveur associé fonctionne en tant que système d'exploitation, et une section de pilote de mémoire pour le système en attente qui écrit des données transférées sur la mémoire partagée du système en attente par l'intermédiaire de l'interconnexion avec la base de données du système en attente lorsque l'appareil de serveur associé fonctionne en tant que système en attente. Par exemple, la section de pilote de mémoire du système d'exploitation écrit directement des données sur la mémoire partagée existant dans l'appareil de serveur en attente par l'intermédiaire de l'interconnexion. Il est souhaitable que l'interconnexion et la mémoire partagée soient multiplexées. Il est souhaitable que chacun des appareils de serveur comprenne un port d'entrée/sortie pour se connecter à un circuit externe, et que l'interconnexion soit un circuit dédié qui est utilisé lorsqu'un appareil de serveur accède à la mémoire partagée de l'autre appareil de serveur. Pour réaliser l'objet ci-dessus, un procédé de contrôle de synchronisation selon la présente invention est un procédé de synchronisation de données dans un système de grappe de miroir de données comprenant de multiples appareils de serveur connectés l'un à l'autre par l'intermédiaire d'une interconnexion et chacun des appareils de serveur ayant une mémoire partagée qui est partagée avec les multiples appareils de serveur. Le procédé de contrôle de synchronisation détecte une actualisation de données dans la base de données d'un appareil de serveur d'exploitation, écrit des données représentant les données actualisées dans la mémoire partagée existant physiquement dans un appareil de serveur en attente par l'intermédiaire de l'interconnexion, détecte une actualisation de données sur la mémoire partagée de l'appareil de serveur en attente, et actualise la base de données de l'appareil de serveur en attente en fonction des données sur la mémoire partagée existant dans l'appareil de serveur en attente. Selon la présente invention, puisque la 30 synchronisation de données est obtenue par les multiples appareils de serveur en utilisant la mémoire partagée et l'interconnexion, la grappe de miroir avec une petite latence peut être configurée à grande vitesse. Cela rend possible de réduire une quantité de données perdues au moment où un problème se produit, par comparaison avec le cas conventionnel, et d'améliorer la disponibilité du système. En outre, puisque la mémoire partagée est utilisée par les multiples appareils de serveur, la gestion est facile. Plus précisément, pour réaliser l'objet ci-dessus, un système de grappe de miroir de données selon la présente invention peut comprend de multiples appareils de serveur connectés entre eux par l'intermédiaire d'une interconnexion et l'un des multiples appareils de serveur servant de système d'exploitation et au moins un autre des multiples appareils de serveur servant de système en attente. Chacun desdits appareils de serveur peut comprendre une base de données, une mémoire partagée accessible à partir des appareils de serveur, un pilote de mémoire pour le système d'exploitation qui écrit des données représentant un changement de données stockées dans la base de données du système d'exploitation sur ladite mémoire partagée existant dans l'appareil de serveur en attente par l'intermédiaire de l'interconnexion lorsque l'appareil de serveur associé fonctionne en tant que système d'exploitation, et un pilote de mémoire pour le système en attente qui actualise des données stockées dans la base de données du système en attente en fonction des données stockées dans ladite mémoire partagée du système en attente qui sont stockées par ledit système d'exploitation par l'intermédiaire de l'interconnexion lorsque l'appareil de serveur associé fonctionne en tant que système d'attente. Les données représentant le changement peuvent comprendre des données changées proprement dites, ledit pilote de mémoire pour le système d'exploitation peut écrire directement les données changées sur ladite mémoire partagée existant dans ledit appareil de serveur en attente par l'intermédiaire de l'interconnexion et ledit pilote de mémoire pour le système en attente peut écrire les données changées stockées dans ladite mémoire partagée sur la base de données existant dans ledit appareil de serveur en attente. Chacun des appareils de serveur peut avoir un premier et un second espace d'adresse de mémoire, le premier espace d'adresse de mémoire peut être affecté à la mémoire partagée existant dans celui-ci, le second espace d'adresse de mémoire peut être affecté à la mémoire partagée existant dans un appareil de serveur de contrepartie, le pilote de mémoire pour le système d'exploitation peut écrire les données représentant le changement dans le second espace d'adresse de mémoire, moyennant quoi les données peuvent être écrites dans le premier espace d'adresse de mémoire dans l'appareil de serveur de contrepartie par l'intermédiaire de l'interconnexion. Il est préférable que le pilote de mémoire pour le système en attente actualise les données stockées dans la base de données en fonction des données écrites dans un premier espace de mémoire de celui-ci. Chacun des appareils de serveur peut ne pas avoir une mémoire partagée à laquelle un second espace d'adresse de mémoire est affecté, le second espace d'adresse de mémoire peut être affecté à la mémoire partagée d'un appareil de serveur de contrepartie et la mémoire partagée de l'appareil de serveur de contrepartie est affectée à un premier espace de mémoire de l'appareil de serveur de contrepartie. Le pilote de mémoire pour le système d'exploitation peut actualiser les données stockées dans la base de données et écrire les données représentant le changement dans la base de données sur la mémoire partagée existant dans l'appareil de serveur en attente. Le pilote de mémoire pour le système d'exploitation peut actualiser les données stockées dans la base de données et envoyer les données représentant le changement dans la base de données au pilote de mémoire pour le système en attente par l'intermédiaire de l'interconnexion, le pilote de mémoire pour le système en attente peut recevoir les données représentant le changement, écrire les données reçues sur la mémoire partagée existant dans l'appareil de serveur en attente, et actualise les données dans la base de données existant dans l'appareil de serveur en attente en fonction des données stockées dans la mémoire partagée. Il est préférable qu'au moins l'une de l'interconnexion et de ladite mémoire partagée soit 30 multiplexée. Ladite interconnexion peut être une interconnexion exclusive pour transmettre des données pour une synchronisation des données stockées dans les bases de données des multiples appareils de serveur. Chacun desdits appareils de serveur peut comprendre un port d'entrée/sortie pour se connecter à un circuit externe, dans lequel l'interconnexion peut être un circuit dédié qui est utilisé lorsqu'un appareil de serveur accède à ladite mémoire partagée de l'autre appareil de serveur. Les pilotes de mémoire partagée peuvent écrire les données sur des sections de mémoire locale et sur des sections de mémoire partagée en fonction d'instructions provenant de programmes exécutés par une unité centrale. Pour réaliser l'objet ci-dessus, un procédé de synchronisation de données, selon la présente invention, dans un système de grappe de miroir de données, également selon la présente invention, peut comprendre de multiples appareils de serveur connectés l'un à l'autre par l'intermédiaire d'une interconnexion. Chacun des appareils de serveur ayant une mémoire partagée qui est partagée avec les multiples appareils de serveur peut comprendre une détection d'une actualisation de données dans une base de données d'un appareil de serveur d'exploitation, une écriture de données représentant les données actualisées sur la mémoire partagée existant physiquement dans un appareil de serveur en attente par l'intermédiaire de l'interconnexion, une détection d'une actualisation de données sur la mémoire partagée de l'appareil de serveur en attente, et une actualisation de la base de données de l'appareil de serveur en attente en fonction des données sur la mémoire partagée existant dans l'appareil de serveur en attente. Ladite écriture peut comprendre une écriture directe de données représentant les données actualisées sur ladite mémoire partagée existant dans ledit appareil de serveur en attente par l'intermédiaire de l'interconnexion. L'écriture peut écrire les données représentant les données actualisées dans un espace d'adresse de mémoire qui n'est pas affecté à une mémoire existant dans le système d'exploitation mais qui est affecté à la mémoire partagée par l'intermédiaire de l'interconnexion L'écriture peut comprendre un envoi des données représentant les données actualisées vers le système en attente par l'intermédiaire de l'interconnexion, une réception des données représentant les données actualisées par l'intermédiaire de l'interconnexion, et une écriture des données reçues sur la mémoire partagée existant dans l'appareil de serveur en attente. Enfin, pour réaliser l'objet ci-dessus, la présente invention propose un programme informatique contrôlant un ordinateur connectable à un autre ordinateur par l'intermédiaire d'une interconnexion, pour contrôler une base de données, partager une mémoire partagée avec un autre ordinateur, écrire des données représentant un changement des données stockées dans la base de données de cet ordinateur sur une mémoire partagée existant dans l'autre ordinateur fonctionnant en tant que système en attente d'un système de grappe de miroir de données, également objet de la présente invention, lorsque cet ordinateur fonctionne en tant que système d'exploitation du système de grappe de miroir de données, et actualiser la base de données de cet ordinateur en fonction des données stockées dans ladite mémoire partagée existant dans celui-ci lorsque cet ordinateur fonctionne en tant que système en attente du système de grappe de miroir de données. BREVE DESCRIPTION DES DESSINS Ces objets et d'autres objets et avantages de la présente invention ressortiront plus clairement à la lecture de la description détaillée ciaprès, faite en référence aux dessins annexés, sur lesquels: la figure 1 est un schéma de principe illustrant une configuration d'un système de grappe de miroir de données selon un mode de réalisation de la présente invention; la figure 2 est une vue illustrant une carte de mémoire logique de chacun d'un système d'exploitation et d'un système en attente; les figures 3A et 3B sont des organigrammes expliquant chacun un fonctionnement d'un pilote de traitement de synchronisation de chacun du système d'exploitation et du système en attente; la figure 4 est une vue expliquant un timing d'opération de synchronisation, une latence, et une taille des données changées pour une synchronisation dans chacun d'un système de grappe de miroir conventionnel et d'un système de grappe de miroir de la présente invention; la figure 5 est une vue illustrant un exemple de configuration d'une interconnexion en duplex; et les figures 6A, 6B et 6C sont des vues expliquant un fonctionnement lorsqu'un problème se produit dans une interconnexion en duplex. DESCRIPTION DETAILLEE DU MODE DE REALISATION PREFERE Un système de grappe de miroir de données selon un mode de réalisation de la présente invention va être expliqué en référence aux dessins. La figure 1 est un exemple de configuration d'un système de grappe de miroir de données selon un mode de réalisation de la présente invention comprenant deux appareils de serveur 100 et 200. Les appareils de serveur 100 et 200 ont une même configuration matérielle. Sur la figure 1, l'appareil de serveur 100 est un appareil de serveur d'exploitation et l'appareil de serveur 200 est un appareil de serveur en attente. Les appareils de serveur 100 et 200 sont connectés l'un à l'autre par une interconnexion qui peut transférer des contenus changés d'une base de données appartenant à un appareil et un signal de synchronisation vers l'autre noeud (appareil de serveur) 200 ou 100 à grande vitesse. Par exemple, sur la figure 1, l'interconnexion entre les n uds respectifs est duplexée pour améliorer une tolérance de défauts. Dans le mode de réalisation de la figure 1, une interconnexion 150 est généralement utilisée et une interconnexion 160 est utilisée en tant qu'alternative. L'appareil de serveur 100 comprend un module d'unité centrale module (CPU) 110, une base de données 120, un commutateur à barres croisées (XBAR SW) 130, et un dispositif E/S (d'entrée/sortie) 140. Le module d'unité centrale 110 comprend une ou plusieurs unités centrales (CPU) 170 et une mémoire 180, et un contrôleur de mémoire 190. Le module d'unité centrale 110 exécute un contrôle de l'appareil de serveur 100 et un traitement de données. La mémoire 180 comprend un dispositif de stockage principal et un dispositif de stockage auxiliaire. La mémoire 180 comprend une section de mémoire locale 181 qui ne peut être accédée qu'à partir de l'appareil de serveur 100 et une section de mémoire partagée 182 qui peut être accédée non seulement à partir de l'appareil de serveur 100 mais aussi de l'appareil de serveurs 200. La section de mémoire partagée 182 est une mémoire qui peut directement exécuter la lecture/écriture par l'intermédiaire de l'interconnexion 150 ou 160 à partir de l'appareil de serveur 200 en plus de l'appareil de serveur 100. Le contrôleur de mémoire 190 est un dispositif de contrôle qui peut accéder à la mémoire 180 comprenant la section de mémoire locale 181 et la section de mémoire partagée 182, et a un pilote de mémoire partagée 195 nécessaire pour accéder à la section de mémoire partagée 182. La base de données 120 existe physiquement sur un dispositif d'enregistrement connecté au dispositif d'entrée/sortie 140. Par exemple, dans le mode de réalisation de la présente invention, la base de données 120 existe physiquement sur un disque dur. Dans la mémoire 180, il existe une partie 183 de la base de données 120 développée sur la section de mémoire locale 181. Des contenus de données sont les mêmes que ceux de la base de données 120. Le contrôleur de mémoire 190 effectue un contrôle d'accès à la base de données 120 et à la partie 183 de la base de données développée sur la section de mémoire locale. Par exemple, lorsque des données de la base de données 120 sont recherchées, le contrôleur de mémoire 190 développe la méthode de recherche et le résultat de recherche sur la mémoire sous forme de mémoire cache et il les stocke. En outre, par exemple, lorsque des données de la base de données 120 sont recherchées, le contrôleur de mémoire 190 accède à la partie 183 de la base de données développée sur la mémoire de préférence pour pouvoir obtenir un résultat de recherche à grande vitesse. Le contrôleur de mémoire 190 est connecté au commutateur à barres croisées 130. En outre, le commutateur à barres croisées 130 est connecté aux interconnexions 150 et 160. Le commutateur à barres croisées 130 contrôle la réception et la transmission de données à partir de/ à une section de mémoire partagée 282 de l'appareil de serveur 200 par l'intermédiaire de l'interconnexion 150 ou 160. Par exemple, le commutateur à barres croisées 130 a une fonction qui surveille s'il y a un problème matériel dans les interconnexions 150 et 160 pour envoyer un avis à l'unité centrale 170 au moment où un problème se produit. La fonction de surveillance va être décrite par la suite. Le dispositif d'entrée/sortie 140 est connecté au contrôleur de mémoire 190 et reçoit et transmet des informations d'un/ à un dispositif externe par une instruction provenant de l'unité centrale 170. Le dispositif externe comprend par exemple un lecteur de disque dur, un lecteur de disque compact, un dispositif à bande magnétique et des éléments similaires. Le dispositif d'entrée/sortie 140 a une fonction commune aux interconnexions 150 et 160 en termes de point où les données sont reçues du dispositif externe et où les données sont transmises au dispositif externe. En outre, l'utilisation du procédé du dispositif d'entrée/sortie 140 apporte une polyvalence avec les interconnexions 150 et 160. Néanmoins, pour recevoir des données du dispositif externe et transmettre des données au dispositif externe en utilisant le dispositif d'entrée/sortie 140, il est nécessaire d'initialiser un pilote pour le dispositif externe. Pour cette raison, par comparaison avec utilisation du dispositif d'entrée/sortie 140, une grande vitesse de traitement de communication est obtenue en utilisant les interconnexions 150 et 160, qui constituent un circuit dédié pour la connexion à la mémoire partagée. L'appareil de serveur 200 a sensiblement la même configuration matérielle que celle de l'appareil de serveur 100. L'appareil de serveur 200 comprend un module d'unité centrale 210, une base de données 220, un commutateur à barres croisées 230 et un dispositif d'entrée/sortie 240. Le module d'unité centrale 210 comprend une ou plusieurs unités centrales 270, une mémoire 280 et un contrôleur de mémoire 290. L'unité centrale 270 exécute un contrôle de l'appareil de serveur 200 et un traitement de données. La mémoire 280 comprend un dispositif de stockage principal et un dispositif de stockage auxiliaire. La mémoire 280 comprend une section de mémoire locale 281 qui ne peut être accédée qu'à partir de l'appareil de serveur 200 et une section de mémoire partagée 282 qui peut être accédée non seulement à partir de l'appareil de serveur 200 mais aussi de l'appareil de serveur 100. La section de mémoire partagée 282 est une mémoire qui peut exécuter directement une lecture/écriture par l'intermédiaire de l'interconnexion 150 ou 160 à partir de l'appareil de serveur 100 en plus de l'appareil de serveur 200. Le contrôleur de mémoire 290 est un dispositif de contrôle qui accède à la mémoire 280 comprenant la section de mémoire locale 281 et la section de mémoire partagée 282, et a un pilote de mémoire partagée 295 nécessaire pour accéder à la section de mémoire partagée 282. La base de données 220 existe physiquement sur un disque dur connecté au dispositif d'entrée/sortie 240. Dans la mémoire 280, il existe une partie 283 de la base de données 220 développée sur la section de mémoire locale 281. Des contenus de données sont les mêmes que ceux de la base de données 220. Le contrôleur de mémoire 290 effectue un contrôle d'accès de la base de données 220 et de la partie 283 de la base de données développée sur la section de mémoire locale. Le contrôleur de mémoire 290 est connecté au commutateur à barres croisées 230. En outre, le commutateur à barres croisées 230 est connecté aux interconnexions 150 et 160. Le commutateur à barres croisées 230 contrôle la réception et la transmission de données à partir de/à la section de mémoire partagée 182 de l'appareil de serveur 100 par l'intermédiaire de l'interconnexion 150 ou 160. Par exemple, le commutateur à barres croisées 230 a une fonction qui surveille s'il y a un problème matériel dans les interconnexions 150 et 160 pour envoyer un avis à l'unité centrale 270 au moment où le problème se produit. Parmi les deux appareils de serveur 100 et 200 qui configurent la grappe, un fonctionne en tant qu'appareil de serveur d'exploitation et l'autre fonctionne en tant qu'appareil de serveur en attente. Dans un exemple représenté sur la figure 1, l'appareil de serveur 100 est utilisé en tant qu'appareil de serveur d'exploitation et l'appareil de serveur 200 est utilisé en tant qu'appareil de serveur en attente. Néanmoins, l'appareil de serveur 100 peut être utilisé en tant qu'appareil de serveur en attente et l'appareil de serveur 200 peut être utilisé en tant qu'appareil de serveur d'exploitation. Dans ce cas, aucune influence n'est exercée sur le fonctionnement du système de grappe de la présente invention. Lorsque le traitement exécuté par l'unité centrale 170 du système d'exploitation demande directement un changement de données de la base de données 120 du système d'exploitation, le contrôleur de mémoire 190 actualise la base de données 120 et écrit des données changées dans la section de mémoire partagée 282 de l'appareil de serveur en attente 200 par l'intermédiaire de l'interconnexion 150 ou 160. En outre, les données dont le changement est demandé par le traitement exécuté par l'unité centrale 170 du système d'exploitation existent dans la partie 183 de la base de données développée sur la mémoire locale, le contrôleur de mémoire 190 actualise la base de données 120 du système d'exploitation et la partie 183 de la base de données sur la mémoire. De plus, le contrôleur de mémoire 190 écrit les données changées sur la section de mémoire partagée 282 de l'appareil de serveur en attente 200 par l'intermédiaire de l'interconnexion 150 ou 160. Le contrôleur de mémoire 290 de l'appareil de serveur en attente 200 surveille toujours si des données changées sont écrites sur la section de mémoire partagée 282 à partir de l'appareil de serveur d'exploitation 100. Le contrôleur de mémoire 290 actualise la base de données 220 du système en attente en fonction des données changées écrites sur la section de mémoire partagée 282 par l'appareil de serveur d'exploitation 100. En conséquence, une synchronisation entre la base de données 120 du système d'exploitation et la base de données 220 du système en attente est effectuée pour mettre en oeuvre le système de grappe de miroir de données. Lorsqu'un problème se produit dans l'appareil de serveur d'exploitation 100, l'exécution d'une application est défaillante et passe sur l'appareil de serveur en attente 200 dans le système de grappe. Les données dont la synchronisation n'a pas encore été réalisée à ce stade sont perdues. Pour cette raison, une fois que le système est récupéré dans l'appareil de serveur en attente 200, l'application doit être re-exécutée pour enregistrer les données de nouveau. De plus, une fois que l'appareil de serveur 100 est récupéré, toutes les bases de données 120 et 220 doivent être synchronisées entre elles. L'utilisation du système de grappe de miroir de données selon la présente invention permet de réduire les intervalles de synchronisation de données entre le système d'exploitation et le système en attente et de minimiser la quantité de données perdues au moment où le problème se produit, par comparaison avec le système de grappe de miroir conventionnel. Une explication d'une affectation de mémoire du système de grappe de miroir de données configuré ci-dessus va ensuite être donnée par référence à la figure 2. La figure 2 illustre une carte de mémoire logique de chacun de l'appareil de serveur d'exploitation 100 et de l'appareil de serveur en attente 200. Comme cela a été décrit ci-dessus, l'appareil de serveur d'exploitation 100 et l'appareil de serveur en attente 200 ont les sections de mémoire partagée de lecture/d'écriture 182 et 282 respectivement. De plus, une adresse logique est attribuée à chacune des sections de mémoire partagée 182 et 282. L'adresse logique attribuée à l'appareil de serveur d'exploitation 100 comprend une zone de mémoire partagée 340. En outre, la zone de mémoire partagée 340 comprend une zone 342 existant physiquement dans le système d'exploitation et une zone 341 existant physiquement dans le système en attente. La zone 341 existant physiquement dans le système en attente est une zone d'adresse logique où les contenus de la section de mémoire partagée 282 du système en attente peuvent être vus à partir de l'appareil de serveur d'exploitation 100 par l'intermédiaire de l'interconnexion 150 ou 160. En d'autres termes, la section de mémoire partagée 282 existant dans l'appareil de serveur en attente 200 est reconnue en tant qu'espace de mémoire de la zone d'adresse logique 341 à partir de l'unité centrale 170 de l'appareil de serveur d'exploitation 100 et est reconnue en tant qu'espace de mémoire d'une zone d'adresse logique 441 à partir de l'unité centrale 270 de l'appareil de serveur en attente 200. En l'occurrence, les contenus de la zone d'adresse logique 341 du système d'exploitation sont les mêmes que ceux de la zone d'adresse logique 441 du système en attente. En conséquence, l'unité centrale 170 peut accéder à la zone de mémoire partagée 340 sans reconnaître si la mémoire physique est présente dans le système d'exploitation ou dans le système en attente. En l'occurrence, l'unité centrale 170 peut accéder à la section de mémoire partagée 282 du système en attente sans effectuer de traitement intermédiaire comme une conversion d'adresse, etc. De même, l'adresse logique attribuée à l'appareil de serveur en attente 200 comprend une zone de mémoire partagée 440. En outre, la zone de mémoire partagée 440 comprend une zone 441 existant physiquement dans le systeme en attente et une zone 442 existant physiquement dans le système d'exploitation. La zone 442 existant physiquement dans le système d'exploitation est une zone d'adresse logique où le contenu de la section de mémoire partagée 182 du système d'exploitation peut être vu à partir de l'appareil de serveur en attente 200 par l'intermédiaire de l'interconnexion 150 ou 160. En d'autres termes, la section de mémoire partagée 182 existant dans l'appareil de serveur d'exploitation 100 est reconnue en tant qu'espace de mémoire de la zone d'adresse logique 442 à partir de l'unité centrale 270 de l'appareil de serveur en attente 100 et est reconnue en tant qu'espace de mémoire de la zone d'adresse logique 342 à partir de l'unité centrale 170 de l'appareil de serveur d'exploitation 100. En l'occurrence, le contenu de la zone d'adresse logique 442 sur le système en attente est le même que celui de la zone d'adresse logique 342 du système d'exploitation. En conséquence, l'unité centrale 270 peut accéder à la zone de mémoire partagée 440 sans reconnaître si la mémoire physique est présente dans le système d'exploitation ou dans le système en attente. En l'occurrence, l'unité centrale 270 peut accéder à la section de mémoire partagée 182 du système d'exploitation sans effectuer de traitement intermédiaire commeune conversion adresse, etc. Une explication d'un fonctionnement du système de grappe susmentionné va ensuite être donnée par référence à la figure 2, à la figure 3A et à la figure 3B. Le contrôleur de mémoire 190 de l'appareil de serveur d'exploitation 100 comprend un pilote de mémoire partagée 195. Le pilote de mémoire partagée 195 lit des données de la section de mémoire locale 181 et de la section de mémoire partagée 182 en fonction d'une instruction provenant de l'unité centrale 170. De plus, le pilote de mémoire partagée 195 écrit des données dans la section de mémoire locale 181 et dans la section de mémoire partagée 182 en fonction d'une instruction provenant de l'unité centrale 170. En outre, le pilote de mémoire partagée 195 peut lire des données de la section de mémoire partagée 282 existant dans l'appareil de serveur en attente 200 en utilisant la zone de mémoire logique 341 en fonction d'une instruction provenant de l'unité centrale 170. De plus, le pilote de mémoire partagée 195 peut écrire des données dans la section de mémoire partagée 282 existant dans l'appareil de serveur en attente 200 en utilisant la zone de mémoire logique 341 en fonction d'une instruction provenant de l'unité centrale 170. De même, le contrôleur de mémoire 290 de l'appareil de serveur en attente 200 comprend un pilote de mémoire partagée 295. Le pilote de mémoire partagée 295 lit des données de la section de mémoire locale 281 et de la section de mémoire partagée 282 en fonction d'une instruction provenant de l'unité centrale 270. De plus, le pilote de mémoire partagé 295 écrit des données dans la section de mémoire locale 281 et dans la section de mémoire partagée 282 en fonction d'une instruction provenant de l'unité centrale 270. De plus, le pilote de mémoire partagée 295 peut lire des données de la section de mémoire partagée 182 existant dans l'appareil de serveur d'exploitation 100 en utilisant la zone de mémoire logique 442 en fonction d'une instruction provenant de l'unité centrale 270. De plus, le pilote de mémoire partagée 295 peut écrire des données dans la section de mémoire partagée 182 existant dans l'appareil de serveur d'exploitation 100 en utilisant la zone de mémoire logique 442 en fonction d'une instruction provenant de l'unité centrale 270. Les pilotes de mémoire partagée 195 et 295 qui lisent et écrivent des données des sections de mémoire partagée 182 et 282 effectuent le traitement illustré sur la figure 3A et sur la figure 3B. Par exemple, les pilotes de mémoire partagée 195 et 295 exécutent ce traitement en utilisant une interruption régulière. Comme cela est illustré sur la figure 3A, en actualisant la base de données 120 (étape S11: Oui sur la figure 3A), le pilote de mémoire partagée 195 du système d'exploitation écrit des données changées dans la zone de mémoire partagée 341 (étape S12 sur la figure 3A). Comme cela a été mentionné ci-dessus, des données de la zone de mémoire partagée 341 existant logiquement dans le système d'exploitation sont les mêmes que des données de la zone de mémoire partagée 441 existant logiquement dans le système en attente. En conséquence, l'écriture d'une donnée dans la mémoire partagée 341 par le système d'exploitation équivaut à écrire la donnée dans la mémoire partagée 441 par l'intermédiaire des interconnexions 150 et 160 (étape S13 sur la figure 3A). Le pilote de mémoire partagée 195 du système d'exploitation entre dans un état d'attente pour recevoir un accusé de réception de fin de réception de données de synchronisation (ACK) 470 de la part du système en attente (étape S14 sur la figure 3A). Le pilote de mémoire partagée 195 du système d'exploitation qui se trouve dans un état d'attente de réception d'ACK termine le traitement de synchronisation en recevant l'accusé de réception de fin de réception de données de synchronisation 470 à partir du système en attente (étape S15: Oui sur la figure 3A). Néanmoins, lorsque l'état d'attente de réception d'ACK dépasse un temps prédéterminé (étape S15: Non sur la figure 3A), l'état d'attente de réception d'ACK expire et le contrôleur de mémoire 190 du système d'exploitation passe au traitement d'erreur de synchronisation (étape S16 sur la figure 3A). Par ailleurs, comme cela est illustré sur la figure 3B, lorsque des données changées sont écrites dans la zone de mémoire partagée 441 par l'appareil de serveur d'exploitation 100 (étape S21: Oui sur la figure 3B) , le pilote de mémoire partagée 295 du système en attente actualise la base de données 220 du système en attente en fonction des données changées (étape S22 sur la figure 3B). Ensuite, le pilote de mémoire partagée 295 du système en attente écrit l'accusé de réception de fin de réception de données de synchronisation 470 dans la zone de mémoire partagée 442 (étape S23 sur la figure 3B). L'accusé de réception de fin de réception de données de synchronisation 470 est écrit dans la zone de mémoire partagée 342 par l'intermédiaire des interconnexions 150 et 160 (étape S24 sur la figure 3B). Le pilote de mémoire partagée 295 du système en attente termine le traitement en écrivant l'accusé de réception de fin de réception de données de synchronisation. En détectant l'écriture de l'accusé de réception de fin de réception de données de synchronisation 470, le pilote de mémoire partagée 195 du système d'exploitation reconnaît que le traitement de synchronisation est terminé et il met un terme à l'état d'attente de réception d'ACK (étape S15 sur la figure 3A). De cette manière, selon la présente invention, une synchronisation entre la base de données du système d'exploitation et la base de données du système en attente est obtenue en accédant aux mémoires partagées existant chacune dans l'appareil de serveur d'exploitation et dans l'appareil de serveur en attente. Dans le système de grappe de miroir de données, dans le cas où un problème se produit dans le serveur d'exploitation, une portion où la synchronisation de base de données n'est pas terminée intervient lorsque le fonctionnement du système est défaillant et passe sur le serveur en attente. Pour cette raison, un gestionnaire de système et un utilisateur doivent effectuer une tâche de re-exécution de l'application pour enregistrer des données de nouveau après la défaillance. En conséquence, dans le système de grappe ayant une grande latence, une portion où la synchronisation de base de données n'est pas obtenue au moment où un problème se produit est accrue, ce qui réduit la disponibilité de la base de données. Dans le système de grappe de miroir de données conventionnel, la grappe est configurée en utilisant TCP/IP en tant que protocole de communication entre les noeuds respectifs. La figure 4 est une vue illustrant de manière conceptuelle la relation entre la grandeur de la latence et la taille des données perdues au moment où un problème de système se produit. Comme cela est illustré sur la figure 4, dans le système conventionnel ayant un grand temps d'attente d'ACK (latence) 520, un traitement de synchronisation ne peut pas être effectué fréquemment. De plus, la taille des données qui sont transmises lors d'une synchronisation doit être accrue pour améliorer l'efficacité du traitement de synchronisation. Pour cette raison, la taille des données perdues lorsqu'un problème se produit dans le serveur d'exploitation est accrue, ce qui nécessite beaucoup de temps pour reenregistrer les données lors de la re-exécution de l'application. Par contraste avec cela, selon le procédé du présent mode de réalisation, des données changées sont écrites directement uniquement dans la mémoire partagée du partenaire de communication, ce qui permet d'obtenir une synchronisation entre la base de données 120 du système d'exploitation et la base de données 220 du système en attente. En conséquence, le système de grappe du présent mode de réalisation de réduire la latence à la synchronisation de la base de données par comparaison avec le cas conventionnel. En outre, le système de grappe du présent mode de réalisation peut synchroniser fréquemment les bases de données. En outre, la taille des données perdues lorsqu'un problème se produit peut être réduite et le ré-enregistrement des données peut se terminer rapidement lors de la ré-exécution de l'application à la reprise suite au problème. Dans la mesure où la synchronisation des bases de données 120 et 220 est maintenue, le format des données à stocker dans les mémoires partagées 441 et 342 et à transmettre par l'intermédiaire des interconnexions 150 et 160 est arbitraire. Par exemple, les données peuvent représenter une différence entre les données précédentes (avant l'actualisation) et les données actualisées. Dans ce cas, le pilote de mémoire 295 calcule les données actualisées en fonction des données reçues et des données précédentes, et il actualise la base de données 220. Une explication du duplexage de l'interconnexion en utilisant la mémoire partagée va être donnée par référence aux figures 5, 6A, 6B et 6C. Comme cela est illustré sur la figure 5, l'interconnexion est duplexée dans le présent mode de réalisation. Un chemin de données (interconnexion 150) est utilisé à un moment de fonctionnement général et un autre chemin de données (interconnexion 160) est utilisé comme chemin alternatif lorsqu'un problème se produit dans le chemin de données pour le fonctionnement général. Les commutateurs à barres croisées 130 et 230 comprennent des circuits de détection de problème 610 et 620. Les circuits de détection de problème 610 et 620 surveillent toujours si les interconnexions 150 et 160 peuvent être normalement utilisées. Lorsqu'un problème matériel se produit dans les interconnexions 150 et 160, les circuits de détection de problème 610 et 620 détectent le problème et notifient respectivement les unités centrales 170 et 270 de la détection du problème. Chacune des sections de mémoire partagée 182 et 282 est logiquement divisée en deux zones. Les figures 6A, 6B et 6C sont des vues qui illustrent plus précisément seulement la section de mémoire partagée dans les cartes de mémoire logique du serveur d'exploitation et du serveur en attente du présent mode de réalisation. L'ensemble de la zone de mémoire partagée 340 comprend une zone de mémoire partagée 1 (710) et une zone de mémoire partagée 2 (720). Bien qu'une adresse de mémoire logique différente soit attribuée à chacune de la zone de mémoire partagée 1 (710) et de la zone de mémoire partagée 2 (720), leurs structures de mémoire sont complètement identiques logiquement. De même, l'ensemble de la zone de mémoire partagée 440 comprend une zone de mémoire partagée 1 (810) et une zone de mémoire partagée 2 (820). Bien qu'une adresse de mémoire logique différente soit attribuée à chacune de la zone de mémoire partagée 1 (810) et de la zone de mémoire partagée 2 (820), leurs structures de mémoire sont complètement identiques logiquement. Les zones de mémoire partagée 1 (710, 810) et les zones de mémoire partagée 2 (720, 820) des deux noeuds sont associées respectivement à différentes interconnexions. Dans le présent mode de réalisation, les zones de mémoire partagée 1 (710, 810) sont associées à l'interconnexion de fonctionnement général 150 et les zones de mémoire partagée 2 (720, 820) sont associées à l'interconnexion alternative 160. En l'occurrence, le pilote de mémoire partagée 195 du système d'exploitation sélectionne la zone de mémoire partagée 1 (710) ou 2 (720) de l'adresse de mémoire logique, ce qui permet de décider quelle interconnexion duplexée est utilisée. De plus, le pilote de mémoire partagée 295 du système en attente sélectionne la zone de mémoire partagée 1 (810) ou 2 (820) de l'adresse de mémoire logique, ce qui permet de décider quelle interconnexion duplexée est utilisée. De plus, en ce qui concerne la zone de mémoire partagée qui est sélectionnée par chacun des pilotes de mémoire partagée 195 et 295, les deux pilotes utilisent les zones de mémoire partagée 1 ou les zones de mémoire partagée 2. De cette manière, selon le procédé du présent mode de réalisation, l'interconnexion est duplexée en 10 utilisant la mémoire partagée. Une explication d'un cas dans lequel un problème se produit dans l'interconnexion duplexée va ensuite être donnée. La figure 6A représente un cas à un moment de 15 fonctionnement général. Le pilote de mémoire partagée 195 du système d'exploitation actualise la base de données 120 et écrit des données changées 750 dans la zone de mémoire partagée 1 (710). En l'occurrence, le pilote de mémoire partagée 195 du système d'exploitation écrit les données changées 750 dans la mémoire partagée du système en attente en utilisant l'interconnexion de fonctionnement général 150. Le pilote de mémoire partagée 295 du système en attente actualise la base de données 220 du système en attente en fonction des données changées 750. Ensuite, le pilote de mémoire partagée 295 du système en attente écrit un accusé de réception de fin de réception de données de synchronisation 752 dans la zone de mémoire partagée 1 (810). En l'occurrence, le pilote de mémoire 295 du système en attente écrit l'accusé de réception de fin de réception de données de synchronisation 752 dans la mémoire partagée du système d'exploitation en utilisant l'interconnexion de fonctionnement général 150. En détectant l'accusé de réception de fin de réception de données de synchronisation 752, le pilote de mémoire partagée 195 du système d'exploitation détermine que le traitement de synchronisation s'est normalement terminé. La figure 6B représente un cas dans lequel un 10 problème se produit dans l'interconnexion de fonctionnement général 150. Le pilote de mémoire partagée 195 du système d'exploitation détecte l'expiration du traitement de synchronisation sans recevoir l'accusé de réception de fin de réception de données de synchronisation 752 de la part du serveur en attente en relation avec les données changées 750. En outre, les circuits de détection de problème 610 et 620 détectent qu'un problème s'est produit dans l'interconnexion 150 du système d'exploitation et ils notifient les résultats respectivement aux pilotes de mémoire partagée 195 et 295. Chacun des pilotes de mémoire partagée 195 et 295 change la zone de mémoire partagée qui est utilisée de la zone 1 à la zone 2. En l'occurrence, chacun des pilotes de mémoire partagée 195 et 295 change l'interconnexion qui est utilisée par l'interconnexion alternative 160. La figure 6C représente un cas juste après le changement de l'interconnexion par l'interconnexion 30 alternative 160. Le pilote de mémoire partagée 195 du système d'exploitation écrit des données changées 760 dans la zone de mémoire partagée 2. Les contenus des données changées 760 sont les mêmes que ceux des données changées 750. En l'occurrence, le pilote de mémoire partagée 195 du système d'exploitation effectue la réécriture des données changées dans la mémoire partagée en utilisant l'interconnexion alternative 160 et il ré-essaye un traitement de synchronisation. Le pilote de mémoire partagée 295 actualise la base de données 220 du système en attente en fonction des données changées 760. Ensuite, le pilote de mémoire partagée 295 du système en attente écrit un accusé de réception de fin de réception de données de synchronisation 762 dans la mémoire partagée du système d'exploitation en utilisant l'interconnexion alternative 160. En recevant l'accusé de réception de fin de réception de données de synchronisation 762, le pilote de mémoire partagée 195 du système d'exploitation détermine que le traitement de synchronisation s'est normalement terminé. Lorsqu'un problème se produit dans les deux interconnexions duplexées, les circuits de détection de problème 610 et 620 détectent que le problème intervient dans les deux interconnexions. Après cela, les circuits de détection de problème 610 et 620 envoient une notification de problème respectivement au pilote de mémoire partagée 195 du système d'exploitation et au pilote de mémoire partagée 295 du système en attente. Le pilote de mémoire partagée 195 du système d'exploitation arrête le traitement de synchronisation de base de données qui utilise les zones de mémoire partagées 1 et 2. Le pilote de mémoire partagée 295 du système en attente envoie une notification de problème à l'unité centrale 270 de l'appareil de serveur en attente. L'unité centrale 270 désactive la base de données 220 du système en attente. Lorsque les deux interconnexions ayant chacune un problème sont récupérées, le circuit de détection de problème 610 provoque une interruption matérielle de l'unité centrale 170. En recevant l'interruption, l'unité centrale 170 ordonne au pilote de mémoire partagée 195 de copier l'ensemble de la base de données 120 du système d'exploitation sur la base de données 220 du système en attente et d'obtenir une synchronisation. Lorsque la synchronisation de base de données est terminée, l'unité centrale 270 active la base de données 220 du système en attente. En conséquence, la base de données est dupliquée de nouveau. Comme cela a été mentionné ci-dessus, dans le système de grappe de miroir de données selon la présente invention, l'utilisation de mémoires partagées accessibles permet une synchronisation de bases de données à grande vitesse. En outre, il est possible d'améliorer la disponibilité des données lorsqu'un problème se produit. De plus, la présente invention n'est pas limitée au mode de réalisation susmentionné et diverses modifications et applications peuvent être possibles. En outre, la configuration de système susmentionnée et les étapes de traitement peuvent être changées arbitrairement. Par exemple, bien que le nombre d'appareils de serveur d'exploitation et le nombre d'appareils de serveur en attente soient un respectivement dans le présent mode de réalisation, le nombre d'appareils de serveur en attente peut être deux ou plus. De plus, dans la configuration sur les figures 6A, 6B et 6C, le nombre de zones de mémoire partagée est deux ou plus et l'interconnexion peut être multiplexée. En outre, dans la configuration des figures 6A, 6B et 6C, le nombre de zones de mémoire partagée est un et l'interconnexion peut être multiplexée. Divers modes de réalisation et divers changements peuvent être effectués dans le cadre des présentes sans départir de l'esprit élargi et sans sortir du champ d'application de l'invention. Le mode de réalisation décrit ci-dessus est destiné à illustrer la présente invention, mais pas à limiter le champ d'application de la présente invention. Le champ d'application de la présente invention est représenté par les revendications annexées au lieu du mode de réalisation. Diverses modifications apportées en respectant la signification d'un équivalent des revendications de l'invention et conformément aux revendications doivent être considérées comme entrant dans le champ d'application de la présente invention. 2868569 36 REVENDICATIONS 1. Système de grappe de miroir de données caractérisé en ce qu'il comprend de multiples appareils de serveur (100, 200) connectés entre eux par l'intermédiaire d'une interconnexion et l'un des multiples appareils de serveur (100) servant de système d'exploitation et au moins un autre des multiples appareils de serveur (200) servant de système en attente, chacun desdits appareils de serveur (100, 200) 10 comprenant: une base de données (120, 220) ; une mémoire partagée (182, 282) accessible à partir des appareils de serveur (100, 200) ; un pilote de mémoire (195) pour le système d'exploitation qui écrit des données représentant un changement de données stockées dans la base de données (120) du système d'exploitation sur ladite mémoire partagée existant dans l'appareil de serveur en attente (200) par l'intermédiaire de l'interconnexion lorsque l'appareil de serveur associé fonctionne en tant que système d'exploitation; et un pilote de mémoire (295) pour le système en attente qui actualise des données stockées dans la base de données (220) du système en attente en fonction des données stockées dans ladite mémoire partagée du système en attente qui sont stockées par ledit système d'exploitation par l'intermédiaire de l'interconnexion lorsque l'appareil de serveur associé fonctionne en tant que système d'attente. 2. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que des données représentant le changement comprennent des données changées proprement dites, ledit pilote de mémoire (195) pour le système d'exploitation écrit directement les données changées sur ladite mémoire partagée existant dans ledit appareil de serveur en attente (200) par l'intermédiaire de l'interconnexion et ledit pilote de mémoire (295) pour le système en attente écrit les données changées stockées dans ladite mémoire partagée sur la base de données (220) existant dans ledit appareil de serveur en attente (200). 3. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que chacun des appareils de serveur (100, 200) a un premier et un second espace d'adresse de mémoire (341, 342, 441, 442) ; le premier espace d'adresse de mémoire est affecté à la mémoire partagée (342, 441) existant dans celui-ci; le second espace d'adresse de mémoire est affecté à la mémoire partagée (441, 342) existant dans un appareil de serveur de contrepartie (400, 300) ; le pilote de mémoire (195) pour le système d'exploitation écrit les données représentant le changement dans le second espace d'adresse de mémoire, moyennant quoi les données sont écrites dans le premier espace d'adresse de mémoire dans l'appareil de serveur de contrepartie par l'intermédiaire de l'interconnexion. 4. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que le pilote de mémoire (295) pour le système en attente actualise les données stockées dans la base de données en fonction des données écrites dans un premier espace de mémoire de celui- ci. 5. Système de grappe de miroir de données selon la 10 revendication 1 caractérisé en ce que: chacun des appareils de serveur (100, 200) n'a pas une mémoire partagée à laquelle un second espace d'adresse de mémoire est affecté, le second espace d'adresse de mémoire est affecté à la mémoire partagée d'un appareil de serveur de contrepartie et la mémoire partagée de l'appareil de serveur de contrepartie est affectée à un premier espace de mémoire de l'appareil de serveur de contrepartie. 6. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que le pilote de mémoire (195) pour le système d'exploitation actualise les données stockées dans la base de données et écrit les données représentant le changement dans la base de données sur la mémoire partagée existant dans l'appareil de serveur en attente (200). 7. Système de grappe de miroir de données selon la 30 revendication 1 caractérisé en ce que: le pilote de mémoire (195) pour le système d'exploitation actualise les données stockées dans la base de données et envoie les données représentant le changement dans la base de données au pilote de mémoire (295) pour le système en attente par l'intermédiaire de l'interconnexion; le pilote de mémoire (295) pour le système en attente reçoit les données représentant le changement, écrit les données reçues sur la mémoire partagée existant dans l'appareil de serveur en attente (200), et actualise les données dans la base de données (220) existant dans l'appareil de serveur en attente (200) en fonction des données stockées dans la mémoire partagée. 8. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que au moins l'une de l'interconnexion et de ladite mémoire partagée est multiplexée. 9. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que ladite interconnexion est une interconnexion exclusive pour transmettre des données pour une synchronisation des données stockées dans les bases de données (120, 220) des multiples appareils de serveur (100, 200). 10. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que chacun desdits appareils de serveur (100, 200) comprend un port d'entrée/sortie (140, 240) pour se connecter à un circuit externe, dans lequel l'interconnexion est un circuit dédié qui est utilisé lorsqu'un appareil de serveur accède à ladite mémoire partagée de l'autre appareil de serveur. 11. Système de grappe de miroir de données selon la revendication 1, caractérisé en ce que les pilotes de mémoire partagée (195, 295) écrivent les données sur des sections de mémoire locale (181, 281) et sur des sections de mémoire partagée (182, 282) en fonction d'instructions provenant de programmes exécutés par une unité centrale (170, 270). 12. Procédé de synchronisation de données dans un système de grappe de miroir de données caractérisé en ce qu'il comprend de multiples appareils de serveur (100, 200) connectés l'un à l'autre par l'intermédiaire d'une interconnexion, chacun des appareils de serveur (100, 200) ayant une mémoire partagée qui est partagée avec les multiples appareils de serveur (100, 200), comprenant: une détection d'une actualisation de données dans une base de données (120) d'un appareil de serveur d'exploitation (100) ; une écriture de données représentant les données actualisées sur la mémoire partagée existant physiquement dans un appareil de serveur en attente (200) par l'intermédiaire de l'interconnexion; une détection d'une actualisation de données sur la mémoire partagée de l'appareil de serveur en attente (200) ; et une actualisation de la base de données (220) de l'appareil de serveur en attente (200) en fonction des données sur la mémoire partagée existant dans l'appareil de serveur en attente (200). 13. Procédé selon la revendication 12, caractérisé en ce que ladite écriture comprend une écriture directe des données représentant les données actualisées sur ladite mémoire partagée existant dans ledit appareil de serveur en attente (200) par l'intermédiaire de l'interconnexion. 14. Procédé selon la revendication 12, caractérisé en ce que l'écriture écrit les données représentant les données actualisées dans un espace d'adresse de mémoire qui n'est pas affecté à une mémoire existant dans le système d'exploitation mais qui est affecté à la mémoire partagée par l'intermédiaire de l'interconnexion 15. Procédé selon la revendication 12, caractérisé en ce que l'écriture comprend un envoi des données représentant les données actualisées vers le système en attente par l'intermédiaire de l'interconnexion, une réception des données représentant les données actualisées par l'intermédiaire de l'interconnexion, et une écriture des données reçues sur la mémoire partagée existant dans l'appareil de serveur en attente (200). 16. Programme informatique contrôlant un ordinateur connectable à un autre ordinateur par l'intermédiaire d'une interconnexion, pour: contrôler une base de données (120, 220) ; partager une mémoire partagée (182, 282) avec un autre ordinateur; écrire des données représentant un changement dedonnées stockées dans la base de données de cet ordinateur sur une mémoire partagée existant dans l'autre ordinateur fonctionnant en tant que système en attente d'un système de grappe de miroir de données lorsque cet ordinateur fonctionne en tant que système d'exploitation du système de grappe de miroir de données; et actualiser la base de données de cet ordinateur en fonction des données stockées dans ladite mémoire partagée existant dans celui-ci lorsque cet ordinateur fonctionne en tant que système en attente du système de grappe de miroir de données.