WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Mise en place d'un système de réplication de base de données entre sites distants

( Télécharger le fichier original )
par Roselin BILEY
Université de Dschang - Licence Professionnelle ès Génie logiciel 2009
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

     

    MINISTERE

    INSTITUT

    REPUBLIQUE

    DU CAMEROUN REPUBLIC OF CAMEROON

    ~~~~~~~~~

    BANDJOUN

    :

    ~~~~~~~~~

    DE L'ENSEIGNEMENT SUPERIEUR MINISTRY OF HIGHER EDUCATION

    ~~~~~~~~~

    ~~~~~~~~~

    UNIVERSITE DE DSCHANG UNIVERSITY OF DSCHANG

    ~~~~~~~~~

    ~~~~~~~~~

    UNIVERSITAIRE DE BANDJOUN

    THE UNIVERSITY INSTITUTE OF

    MISE EN PLACE D'UN SYSTEME DE REPLICATION
    DE BASE DE DONNES ENTRE SITES DISTANTS

    Rapport de fin de stage en vue de l'obtention du
    Diplôme de Licence Professionnelle

    OPTION : GENIE LOGICIEL

    Rédigé et présenté par :

    M. Roselin BILEY NDONGO

    Superviseur Académique : Superviseur Professionnel

    M. Euloge TAPANG M. Simon-Pierre MAKONDO

    Enseignant dans la filière Génie Directeur des Solutions Informatiques

    Logiciel à ISMA Groupe ACTIVA

    Année académique 2008-2009

     

    REPUBLIQUE DU CAMEROUN

     

    REPUBLIC OF CAMEROON

     
     
     
     
     
     
     

    MINISTERE DE L'ENSEIGNEMENT SUPERIEUR

     

    MINISTRY OF HIGHER EDUCATION

     
     
     
     
     
     

    UNIVERSITE DE DSCHANG

    UNIVERSITY OF DSCHANG

     
     
     
     
     
     

    INSTITUT UNIVERSITAIRE DE BANDJOUN

    THE UNIVERSITY INSTITUTE OF BANDJOUN

    MISE EN PLACE D'UN SYSTEME DE REPLICATION
    DE BASE DE DONNES ENTRE SITES DISTANTS

    Réalisé par :

    M. BILEY NDONGO Alphonse Roselin
    Etudiant en 3ème année Licence
    Professionnelle en Génie Logiciel

    Superviseur Académique : Superviseur Professionnel :

    M. Euloge TAPANG M. Simon-Pierre MAKONDO

    Enseignant dans la filière Génie Directeur des Solutions Informatiques

    Logiciel à ISMA Groupe ACTIVA

    A ma chère mère, Mme EKASSI OKALIA Marianne Epouse NDONGO,
    A ma fille BEYALA BILEY Agathe Diana et à son adorable mère EBA Carole,
    Pour tout le bonheur et la force que je puise en elles.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    REMERCIEMENTS

    Il me plaît d'adresser tous mes sincères remerciements à tous ceux qui m'ont aidé de près ou de loin dans la réalisation de mon projet et l'élaboration du présent document. Ces remerciements vont à :

    > M. Simon-Pierre MAKONDO ; > M. Euloge TAPANG ;

    > MM Ghislain KOUAM et Charles NANA ;

    > M. Henri GANYON ;

    > M. Dieudonné OKALIA ;

    > M. Basile EYATHA;

    > M. Richard ABENA ;

    > M. Joseph ABENA ;

    > Mme Estelle TOFEU;

    > Mme Anastasie Gertrude ADJEDJA ; > Toute ma Famille ;

    > Tous mes collègues en Entreprise; > Tous mes camarades de classe ;

    Je souhaite que vos aides quel qu'elles soient, trouvent leur récompense au succès de ma formation.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    SOMMAIRE

    DEDICACES I

    REMERCIEMENTS II

    SOMMAIRE III

    AVANT-PROPOS IV

    RESUME V

    ABSTRACT VI

    LISTE DES ABREVIATIONS VII

    LISTE DES FIGURES ET TABLEAUX VIII

    INTRODUCTION GENERALE 1

    PARTIE I : PRESENTATION DE L'ENTREPRISE ET ETUDE D'OPPORTUNITE 2

    CHAPITRE 1 : PRESENTATION DE L'ENTREPRISE 2

    CHAPITRE 2 : ETUDE D'OPPORTUNITE 6

    PARTIE II : ANALYSE TECHNIQUE ET FAISABILITE 14

    CHAPITRE 3 : PRESENTATION DU CONCEPT DE REPLICATION 14

    CHAPITRE 4: TOLERANCE AUX PANNES 17

    CHAPITRE 5 : ETUDE DE CAS : REPLICATION SOUS MICROSOFT® SQL SERVERTM 20

    CHAPITRE 6 : ETUDE DE FAISABILITE ET ANALYSE TECHNIQUE 29

    PARTIE III: IMPLEMENTATION DU SYSTEME DE REPLICATION 32

    CHAPITRE 7 : CONFIGURATION DE LA REPLICATION 32

    CHAPITRE 8 : OPTIMISATION DE LA REPLICATION 44

    CONCLUSION GENERALE 49

    REFERENCES BIBLIOGRAPHIQUES 50

    TABLE DES MATIERES 51

    ANNEXES 54

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    AVANT-PROPOS

    Créé par arrêté ministériel n° 06/0014/MINESUP/DDES du 02 Février 2006, le régime des études et des évaluations de la Licence Professionnelle dans les Universités d'Etat et les Institutions Privées d'Enseignement Supérieur connaît un essor prometteur depuis la mise en place du système LMD (Licence-Master-Doctorat) au Cameroun. Comme le stipule l'article 10 dudit arrêté, « la formation en milieu professionnelle vise à compléter la formation en milieu universitaire par l'expérience des pratiques professionnelles correspondant aux compétences requises et acquises. Elle permet également d'acquérir des qualités de rationalité, des attitudes, des comportements et de développer le sens des responsabilités par l'adaptation progressive aux exigences de l'emploi ».

    ISMA (Institut Supérieur de Management) a vu le jour à Douala en 1998 et comptait déjà plusieurs filières de formations pour des étudiants en préparation du BTS (Brevet Technicien Supérieur) qui s'étend sur deux années académiques, avec une admission en première année sur concours niveau Baccalauréat. S'étant distingué plusieurs fois parmi les meilleurs établissements supérieurs privés du Cameroun, ISMA, sous la demande pressante des diplômés de niveau BAC+2 et de certains professionnels en quête d'excellence, a demandé et obtenu en plus du cycle BTS, un agrément du MINESUP (Ministère de l'Enseignement Supérieur) en 2007 pour l'ouverture du cycle des licences professionnelles.

    Dans le cadre de leur formation, les étudiants sont appelés à effectuer des stages en Entreprise dont le dénouement est marqué par la rédaction d'un rapport de stage et la soutenance dudit rapport devant un jury. C'est dans cette optique que nous avons réalisé le présent document intitulé « Mise en place d'un système de réplication de base de données entre sites distants ».

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    RESUME

    La notion de haute disponibilité doit être établie par rapport à l'exigence de permanence de la solution informatique. Confrontés à des risques constants menaçant la continuité et la rapidité d'accès à leurs données, les entreprises mettent en place des systèmes assurant la sauvegarde et la duplication de leurs bases à travers le monde, en temps réel ou en décalé.

    Pour les entreprises qui gèrent des configurations matérielles et logicielles diverses dans des environnements distribués, il devient nécessaire de stocker les données de façon redondante. En outre, les besoins en termes d'autonomie et de cohérence des données diffèrent suivant les applications.

    Répliquer consiste à mettre sur pied un mécanisme qui envoie une copie du différentiel d'une base de données vers une autre. Dans un jargon générique, la base de données à copier est dite « maître » et le destinataire « esclave ».

    La réplication présente des avantages différents selon le type de réplication et les options choisis, mais l'intérêt général de la réplication est la disponibilité des données à tout moment et à travers divers sites distants.

    En général, la réplication comprend les étapes suivantes : configuration de la réplication, génération et application de la capture instantanée initiale, modification des données répliquées, puis synchronisation et propagation des données.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    ABSTRACT

    The notion of high availability must be established in relation to the requirement of permanence of the computer solution. Confronted to constant risks threatening the continuity and the speed of access to their data, the enterprises put the systems assuring the safeguard and the duplication of their bases through the world in place, in real time or baffled some.

    For the enterprises that manage various material and software configurations in distributed environments, it becomes necessary to stock the data in a redundant way. Besides, the needs in terms of autonomy and consistency of the data differ according to the applications.

    To retort consists in establishing a mechanism that sends a copy of the differential of a data base toward another. In a generic jargon, the data base to copy is said «master» and the recipient «slave».

    The replication presents different advantages according to the type of replication and the options chosen, but the general interest of the replication is at all times the availability of the data and through various distant sites.

    In general, the replication consists of the following stages: configuration of the replication, generation and application of the initial instantaneous capture, modification of the data retorted, then synchronization and propagation of the data.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    LISTE DES ABREVIATIONS

    i. ADSL: Asymmetric Digital Subscriber Line.

    ii. DTS: Data Transformation Service.

    iii. EXE : Extension des fichiers Exécutables.

    iv. HTTPS: HyperText Transfer Protocol Secured.

    v. LAN: Local Area Network.

    vi. MDB : Extension des fichiers associés à Microsoft Access.

    vii. OS: Operating System.

    viii. POP: Post Office Protocol.

    ix. POP3-SSL: Post Office Protocol version 3 - Secure Sockets Layer.

    x. RAID: Redundant Array of Independent Disks.

    xi. RAM: Random Access Memory.

    xii. RNIS : Réseau Numérique à Intégration de Service.

    xiii. RTC: Réseau Téléphonique Commuté.

    xiv. SATA: Serial Advanced Technology Attachment.

    xv. SCSI: Small Computer System Interface.

    xvi. SOAP: Simple Object Access Protocol.

    xvii. VPN: Virtual private Network.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    LISTE DES FIGURES ET TABLEAUX

    Figure 1: Cryptage et Décryptage des messages. 11

    Figure 2: Clients VPN et Serveur d'accès distant. 12

    Figure 3 : Exemple d'un processus de réplication 22

    Figure 4 : Exemple de baie de disques. 30

    Figure 5 : Architecture globale du système de réplication. 33

    Figure 6 : Principales entités de la réplication. 34

    Figure 7 : Algorithme du processus de réplication. 35

    Figure 8 : Clic-droit sur le serveur à configurer comme éditeur / distributeur. 36

    Figure 9 : Clic-gauche sur « Propriétés » du menu contextuel. 36

    Figure 10 : Clic sur onglet « réplication » puis sur « configurer ». 37

    Figure 11 : Lancement de l'assistant de configuration de publication et distribution. 37

    Figure 12 : Spécification du dossier de captures instantanées. 38

    Figure 13 : Choix de la base de données de publication. 38

    Figure 14: Choix du type de réplication. 39

    Figure 15 : Choix des articles à publier. 39

    Figure 16 : Finalisation de la création de publication. 40

    Figure 17 : Finalisation de la création de publication. 40

    Figure 19 : Assistant extraction d'abonnement. 41

    Figure 20 : Recherche de publications disponibles. 41

    Figure 21 : Choix du serveur de distribution. 42

    Figure 21 : Redondance des bases locales. 43

    Tableau 1 : Exemples de pannes possibles avec une proposition de solution. 7

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    INTRODUCTION GENERALE

    La haute disponibilité est un problème récurrent dans le monde de l'informatique en général, et des SGBDR1 en particulier. La réplication consiste à copier les informations d'une base de données sur une autre et vice-versa. Les copies effectuées doivent être les différentiels, de façon à obtenir deux bases de données identiques sur les sites distants reliés par ces opérations. La réplication qui est un processus de partage d'informations pour assurer la cohérence de données entre plusieurs sources de données redondantes répond à ces exigences. Elle améliore la fiabilité desdites données, la tolérance aux pannes et l'accessibilité. La question fondamentale est « Quel coût financier de la solution de continuité doit être envisagé en regard de la perte de production ? ». Elle pose directement le problème d'un retour sur investissement, même si l'investissement à des chances de ne jamais être consommé (absence d'incident).

    La Compagnie d'Assurances ACTIVA VIE possède un serveur d'applications dans lequel sont stockées les bases de données utilisées par les applications-métiers. ACTIVA VIE possède en dehors de son siège d'Akwa à Douala, des agences dans les villes de Douala, Yaoundé, Bafoussam, Bamenda et Garoua qui elles, effectuent leurs opérations dans des bases locales dont les données doivent être transférées après au siège. C'est dans cette optique que nous sommes appelés à mettre en place un système de réplication qui facilitera les transferts de données.

    Le but du présent document est de permettre au lecteur de comprendre le concept général de « réplication » et de démontrer les avantages qu'offre ce système non moins gourmand en ressources matérielles et logicielles, mais efficace. Nous allons dans un premier temps présenter l'Entreprise hôte de notre stage, puis nous ferons une étude théorique et conceptuelle de notre thème ; enfin, nous verrons par la pratique le fonctionnement d'une réplication de bases de données entre deux sites dans un environnement de simulation.

    1 Système de Gestion des Bases de Données Relationnelles

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    PARTIE I : PRESENTATION DE L'ENTREPRISE ET ETUDE D'OPPORTUNITE

    CHAPITRE 1 : PRESENTATION DE L'ENTREPRISE Section 1 : Fiche d'Identité

    NOM : ACTIVA

    SIEGE SOCIAL : DOUALA, RUE PRINCES DE GALLES AKWA

    E.MAIL : activa.assur@group-activa.com

    BP: 12970 DOUALA-CAMEROUN

    TEL : 237 - 33 50 13 00

    STATUT : SOCIETE ANONYME

    CREATION : 1998

    CAPITAL : FCFA 1.575.000.000

    BRANCHES :

    > NON VIE (IARDT2, SANTE, AUTOMOBILE)

    > VIE (RETRAITE, ETUDES, SANTE, OBSEQUES)

    Section 2 : Historique

    Créée en 1998 par des opérateurs privés camerounais, avec un capital de FCFA 400.000.000, ACTIVA ASSURANCES S.A. est une société d'assurance exerçant tant dans la branche vie qu'en non vie ou IARDT.

    2 Incendie, Accident, Risques Divers et Transport

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    · Partenaire minoritaire d'ACTIVA ASSURANCES, le groupe NSIA détient 27% du capital social.

    · En 2000, ce capital social est porté à FCFA 650.000.000.

    · La filiale assurance vie dénommée ACTIVA VIE est créée en 2001.

    · En 2004, le capital social est porté à FCFA 1 050.000.000.

    · Le partenariat entre ACTIVA et le Groupe NSIA prendra fin en 2006.

    · En 2007, ACTIVA a connu un essor remarquable par l'augmentation de son capital à FCFA 1.575.000.000, son installation dans le nouvel immeuble siège. ACTIVA ASSURANCES et ACTIVA VIE ont un Chiffre d'Affaires de plus de FCFA 12.000.000 au 31 Décembre 2007. C'est encore en cette année qu'avec d'autres confrères africains, Activa créa le premier réseau panafricain multilingue d'assurance : « Réseau Globus ».

    · En 2008, ACTIVA ASSURANCES fête ses 10ans d'existence. Et plus que l'amour, ACTIVA célèbre la passion qu'il a pour ses clients d'où son slogan « passionnément clients ».

    · En 2009, le groupe ACTIVA connaît la venue au monde d'un autre membre dénommé ACTIVA INTERNATIONAL sis à Accra au GHANA. Ce dernier était avant son achat, une structure appartenant à un groupe international sud-africain.

    Section 3 : Organisation de l'Entreprise

    Activa assurances est un groupe de sociétés qui utilisent plus d'une centaine de coéquipiers dynamiques expérimentés et formés pour être à la hauteur sur le plan national et international en matière d'assurances.

    La fusion est faite avec le groupe NSIA de Côte d'Ivoire dont M. Richard LOWE, PDG de Activa assurances est le Président du Conseil d'Administration. Après neuf

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    années de collaboration, c'est à dire à la fin de l'année 2006, les deux entités décident de mettre un terme à leur partenariat, suite à l'augmentation du pourcentage des bénéfices de 5 à 10 %, et l'évolution de leurs stratégies respectives. Après ce « divorce », Activa devient second membre du réseau GLOBUS créé en octobre 2007 (groupe panafricain multilingue comptant 21 pays au départ, et 27 à présent dont 16 francophones, 5 anglophones, 3 lusophones et 2 arabophones).

    Cette évolution est le résultat d'un travail assidu et d'une persévérance à toute épreuve : ACTIVA fait ses débuts dans la ville de Douala en automobile, santé, transport maritime et IARD de 1998 à 2001, avec un capital de un milliard cinquante millions (FCFA 1.050.000.000) de Francs CFA, actuellement porté à un milliard cinq cent soixante quinze millions (FCFA 1.575.000.000), avec la création de la branche vie en 2001, laquelle prit effet au second semestre 2002.

    ACTIVA VIE débute ainsi, avec un capital de cinq cent millions de franc CFA. Son effectif réduit au départ à 38 personnes a progressivement augmenté à 69 en 2006, parmi lesquels des cadres de direction, des cadres simples, des agents de maîtrise, et quelques employés. Par la suite, elle s'est étendu à travers le pays, en créant des agences notamment à Yaoundé, Garoua, Bamenda, Bafoussam, et deux agences dans la ville de Douala.

    Aujourd'hui, elle opère dans plusieurs pays, avec 18 agences ainsi réparties :

    · 6 en Afrique centrale ;

    · 8 en Afrique de l'ouest ;

    · 4 en Afrique australe et de l'Est.

    Sur ces 18 agences, 13 sont dans des pays francophones, 2 dans des pays anglophones et les 3 autres en pays lusophones.

    ACTIVA est en partenariat avec six réassureurs, six courtiers internationaux, sept courtiers nationaux et six agents généraux. Sa production lui a permis de bâtir son immeuble siège comportant huit niveaux au dessus du sol et trois sous-sols. Cet immeuble a été inauguré le 23 octobre 2007.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    ACTIVA s'est ainsi positionné solidement sur le marché avec une carte d'identité plus qu'honorable.

    Section 4 : Organigramme3

    L'organigramme est une représentation schématique des liens fonctionnels, organisationnels et hiérarchiques d'un organisme, d'un programme, etc. Il se doit de posséder une référence documentaire.

    Puisque nous avons voulu montrer les différentes Directions que comporte le groupe ACTIVA, nous nous sommes limités aux Directeurs sans mentionner la suite de l'arbre hiérarchique dans les organigrammes VIE et NON VIE que nous vous présenterons.

    3 Voir organigramme d'ACTIVA ASSURANCES en annexe

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    CHAPITRE 2 : ETUDE D'OPPORTUNITE Section 1 : Le besoin d'un système de réplication

    Le Groupe ACTIVA comporte plusieurs agences comme précisé en introduction au présent document. Le Groupe ACTIVA est principalement représenté par trois Entreprises : ACTIVA ASSURANCES et ACTIVA VIE ayant leur siège à Douala, ACTIVA INTERNATIONAL ayant son siège à Accra au GHANA. Dans sa Société VIE pour ne parler que d'elle, on distingue six agences réparties dans les villes : Douala1 et Douala2, Yaoundé, Bafoussam, Bamenda et Garoua.

    La mise à jour des bases de données des agences se fait une fois par mois et via un support magnétique (CD-R ou Clé USB) qui est envoyé à ces agences en colis express. Il se pose alors un sérieux problème de confidentialité car, le fichier qui contient les informations n'étant pas verrouillé, tout individu doté d'une curiosité pourrait facilement y avoir accès en toute tranquillité sans que nous l'expéditeur ni les destinataires ne soient au courant. Et de plus, ce fichier, de type « .mdb », s'ouvre sous Microsoft® Office AccessTM qui est un logiciel qu'on trouve dans la quasi-totalité des ordinateurs possédant l'environnement Windows : d'où la facilité de l'ouvrir. D'autre part, il faut profiter des missions effectuées par certains personnels pour expédier les supports possédant les mises à jour des bases de données. Pour plus d'efficacité, il faut donc penser une nouvelle méthode pour obtenir les données des agences, et ensuite, envoyer le différentiel de leurs informations par rapport au siège central.

    Il convient de prendre en compte la force et la gravité d'un incident comme critère à intégrer dans le processus de haute disponibilité. Il n'est pas toujours possible, de prendre en compte tous les incidents sans tenir compte du coût ou de la logistique globale de mise en oeuvre de la solution de dépannage.

    Par exemple en cas d'incendie ou doit considérer le redémarrage "global" du système : nouveaux locaux, information du personnel... autant de préalables qui finalement font du coût de la solution de haute disponibilité, un élément presque anecdotique.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    On comprend donc qu'assurer une haute disponibilité avec une perte nulle de la production et pour tous les types d'incident est relève d'une gageure financière pas toujours en adéquation avec les budgets informatiques.

    Section 2 : Eventuelles défaillances du système de haute disponibilité

    Pannes possibles

    Remède

    Coupure réseau électrique

    Onduleur

    Défaut de RAM

    Mise à niveau par ajout de barrettes

    Défaut du sous système de contrôle disque (RAID, SCSI, SA TA...)

    Enficher les disques DATA et LOG du serveur en panne dans le serveur de secours. Copier les fichiers nécessaires au redémarrage. Lancer les procédures adéquates pour reprendre la main sur SQL ServerTM et la base de production.

    Défaillance d'un disque

    Remplacement à chaud du disque

    Défaillance d'un fichier

    Si fichier OS ou exe : enficher les disques DATA et LOG du serveur en panne dans le serveur de secours. Copier les fichiers nécessaires au redémarrage. Lancer les procédures adéquates pour reprendre la main sur SQL ServerTM et la base de production.

    Si fichier DATA SQL : procédure de reprise depuis fichier LOG SQL.

    Si fichier LOG SQL : procédure de reprise depuis fichier DATA SQL.

    Défaillance processeur

    Enficher les disques DATA et LOG du serveur en panne dans le serveur de secours. Copier les fichiers nécessaires au redémarrage. Lancer les procédures adéquates pour reprendre la main sur SQL ServerTM et la base de production.

     

    Tableau 1 : Exemples de pannes possibles avec une proposition de solution.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Plusieurs solutions se proposent alors pour garantir une continuité de service au vue de ces pannes ; pour minimiser les pertes éventuelles, notre choix a été de travailler avec une solution de réplication, malgré les investissements supplémentaires à prévoir.

    Section 3 : Avantages et inconvénients de la réplication de base de données

    La réplication présente des avantages différents selon le type de réplication et les options choisis, mais l'intérêt général de la réplication est la disponibilité des données à tout moment et en tout lieu.

    Les autres avantages sont les suivants :

    V' Possibilité pour plusieurs sites de conserver des copies des mêmes données. Cela est utile lorsque plusieurs sites ont besoin de lire les mêmes données ou requièrent des serveurs différents pour les applications de création de rapport.

    V' Autonomie accrue. Les utilisateurs peuvent manipuler des copies de données hors connexion, puis propager leurs modifications aux autres bases de données lorsqu'ils sont connectés.

    V' Davantage de méthodes pour accéder aux données, comme l'exploration de données à l'aide d'applications Web par exemple.

    V' Amélioration des performances de lecture des agrégats.

    V' Rapprochement des données par rapport aux utilisateurs individuels ou aux groupes. Cela permet de réduire les conflits liés aux modifications de données et requêtes impliquant plusieurs utilisateurs ; en effet, les données peuvent être distribuées sur l'ensemble du réseau et partitionnées en fonction des besoins des différents utilisateurs ou unités de l'entreprise.

    V' Utilisation de la réplication dans le cadre d'une stratégie de serveur en attente personnalisée. La réplication est l'une des options de la stratégie de serveur en attente.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Parmi les autres options disponibles dans certains SGBD, figurent l'envoi de journaux et la gestion de clusters avec basculement qui fournissent des copies des données en cas de défaillance d'un serveur.

    La mise à jour des bases de données des agences se fait manuellement en ce moment. Pour ce faire, il faut toujours déplacer un informaticien qui fera, à partir de supports magnétiques une mise à jour dans les différentes agences. Une méthode consiste à envoyer en colis postal lesdits supports afin que le personnel local des agences s'en serve pour les mises à jour, guidé au téléphone par le personnel du Siège. Plusieurs aléas sont à quand même prévoir avec un système de réplication :

    + Consommation élevée des ressources du serveur suivant la position du distributeur ;

    + Les modifications de schéma peuvent ne pas être prises en compte suivant le mode de réplication ;

    + Les problèmes de réplication suivants affectent la performance de vos réseaux :

    · Volume et taille usuelle des données circulant sur le réseau.

    · Nombre d'abonnés à un éditeur particulier.

    · Vitesse de la connexion.

    · Capacité de traitement de l'éditeur, du distributeur et des abonnés. Section 4 : Etude de la technologie d'interconnexion appropriée

    Plusieurs technologies et topologies existent pour interconnecter des sites distants. Mais les flux de données des échanges peuvent être exposés si la sécurité n'est pas bien pensée. Pour sécuriser ces flux, il existe plusieurs manières de le faire :

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    · utiliser des connexions privées pour relier les différents points

    · utiliser des protocoles de niveau 7 gérant de manière native le cryptage : HTTPS, POP3-SSL...

    · sécuriser le canal de communication tout en restant sur un canal non- sécurisé par l'utilisation d'un VPN

    Parmi ces différentes méthodes de sécurité, le choix reste facile lorsqu'il faut tenir compte des coûts afférents pour certaines et la facilité technique d'implémentation pour d'autres.

    a) Connexions privées

    C'est la solution idéale, on reste maître de tout ce qui circule sur le canal. Les personnes ayant accès à des routeurs sur ce canal étant identifiées. Avec ce type de connexion, on est pleinement en possession des ressources matérielles utilisées car, des câbles, fibres optiques ou autres équipements ont été installés spécialement pour nous ; dans ce cas, on a pas besoin d'une implémentation particulière d'un système de sécurité puisque le flux de données appartient à la seule personne détentrice de la connexion.

    Le principal (et peut-être unique) problème de cette solution est son coût. En effet, il coute beaucoup plus cher de faire tirer une ligne spécialisée qu'utiliser des canaux existants.

    b) Protocoles nativement cryptées

    C'est une solution efficace en général mais qui a le désavantage de laisser l'implémentation du système de cryptage/décryptage aux applications (serveurs ou clientes). En effet, si un client ou un serveur ne gère pas l'implémentation en crypté, il n'est pas possible d'utiliser le protocole crypté. Par exemple, certaines versions d'Outlook ne supportent pas le POP3-SSL et donc obligent l'utilisation du POP3 classique.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 1: Cryptage et Décryptage des messages.

    Un autre point problématique est que les flux entre les deux machines restent Identifiables. Les protocoles cryptés utilisent des ports identifiés. Il reste donc possible à l'attaquant de savoir à quel service le client fait appel.

    c) Le VPN (Virtual Private Network / Réseau privé virtuel)

    Le VPN permet de relier deux réseaux distants à travers Internet. Il est ainsi possible de faire communiquer ces deux réseaux comme s'ils étaient connectés directement ensemble. Dans la quasi-totalité des implémentations d'un VPN, un cryptage est rajouté entre les deux connectiques.

    Ainsi, par exemple, on peut avoir deux réseaux distants d'une même Entreprise reliés à travers un VPN.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 2: Clients VPN et Serveur d'accès distant.

    Pour avoir une interconnexion des réseaux à faible coût mais pour un fort niveau sécurité, nous choisirons de travailler avec un VPN. Le coût d'un VPN est un avantage pour différentes raisons :

    V' Pas de liaisons physiques comme les LAN (Local Area Network) ; V' Pas de points d'accès comme les Wireless ;

    V' Les différents LAN d'un VPN sont connectés sur Internet mais selon le cas de l'Entreprise et de sa taille : ADSL, RTC, RNIS ; donc pas de problème de budgétisation ;

    V' Passage de l'Entreprise à une phase de gestion dynamique, collaborative et en temps réel : donc, plus fiable et constructive.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Dans la suite de notre document, nous considérerons que les configurations de cette interconnexion sont faites et nous nous limiterons aux limites de l'étude de notre thème. Nous pourrons simplement montrer en pratique la procédure d'une connexion cliente à un réseau VPN.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    PARTIE II : ANALYSE TECHNIQUE ET FAISABILITE CHAPITRE 3 : PRESENTATION DU CONCEPT DE REPLICATION Section 1 : Définition générale de la Réplication

    Le terme « réplication » a été emprunté à la biologie. On aurait pu dire simplement « duplication ». Dans le jargon informatique en général, et dans celui des bases de données en particulier, ce terme désigne un mécanisme de copie automatique d'une base de données vers une autre, permettant de rapprocher des données de l'utilisateur, dans un système distribué.

    En informatique, la réplication est un processus de partage d'informations pour assurer la cohérence de données entre plusieurs sources de données redondantes, pour améliorer la fiabilité, la tolérance aux pannes, ou l'accessibilité. On parle de réplication de données si les mêmes données sont dupliquées sur plusieurs périphériques.

    Une application de base de données repose sur un modèle client-serveur. Dans ce modèle, le client se connecte au SGBD pour passer des ordres. Ces ordres sont de deux natures : lecture (on parle alors de requêtes) ou mise à jour (on parle alors de transactions). Pour les transactions il y a une modification des données sur le serveur, mais cela reste des ordres de courte durée. A l'inverse, dans le cas d'une lecture, il n'y a pas de modification des données mais les traitements peuvent être longs et porter sur une grande masse de données. On comprend donc aisément que, dans le cadre d'un site web par exemple, un nombre important de requêtes peut surcharger partiellement (ou complètement) le serveur. Il existe plusieurs solutions pour palier à ce genre de problèmes et, ça tombe bien, la réplication en est une.

    La réplication n'est pas à confondre avec une sauvegarde : les données sauvegardées ne changent pas dans le temps, reflétant un état fixe des données, tandis que les données répliquées évoluent sans cesse à mesure que les données sources changent.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    La réplication est aussi considérée comme la capacité à maintenir à jour une base de données distribuée sur plusieurs machines reliées en réseau, en recopiant à intervalles réguliers des morceaux ou l'intégralité de la base d'une machine à l'autre. Plusieurs méthodes de réplication existent selon la configuration matérielle présente.

    Section 4 : Principes de la Réplication

    L'objectif principal de la réplication est de faciliter l'accès aux données en en augmentant la disponibilité. Soit parce que les données sont copiées sur différents sites permettant de répartir les requêtes, soit parce qu'un site peut prendre la relève lorsque le serveur principal s'écroule. Une autre application tout aussi importante est la synchronisation des systèmes embarqués non connectés en permanence.

    Ce qui peut se résumer à l'aide des trois types de scénarii suivants :

    · deux serveurs distants sur lesquels les données doivent être consistantes ;

    · deux serveurs, un comme serveur principal, l'autre comme serveur de backup à chaud ;

    · plusieurs serveurs en cluster utilisés pour de l'équilibrage de charge et de la tolérance à la panne.

    Le principe de la réplication, qui met en jeu au minimum deux SGBD, est assez simple et se déroule en trois temps :

    y' La base « maître » reçoit un ordre de mise à jour (INSERT, UPDATE ou DELETE).

    y' Les modifications faites sur les données sont détectées et stockées (dans une table, un fichier, une queue) en vue de leur propagation.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    y' Un processus de réplication prend en charge la propagation des modifications à faire sur une seconde base dite esclave. Il peut bien entendu y avoir plus d'une base esclave.

    Bien entendu il est tout à fait possible de faire de la réplication dans les deux sens (de l'esclave vers le maître et inversement). On parlera dans ce cas-là de réplication bidirectionnelle ou symétrique.

    Dans le cas contraire la réplication est unidirectionnelle (seulement du maître vers l'esclave) et on parle de réplication en lecture seule ou asymétrique. De plus la réplication peut être faite de manière synchrone ou asynchrone. Dans le premier cas, la résolution des conflits éventuels entre deux sites intervient avant la validation des transactions ; Dans le second cas, la résolution est faite dans des transactions séparées. Il est donc possible d'avoir quatre modèles de réplication :

    · Réplication asymétrique (maître/esclave) avec propagation asynchrone ;

    · Réplication asymétrique (maître/esclave) avec propagation synchrone ;

    · Réplication symétrique ou Peer-to-peer (update everywhere) avec propagation asynchrone ;

    · Réplication symétrique avec propagation synchrone.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    CHAPITRE 4: TOLERANCE AUX PANNES

    Le concept de tolérance aux pannes se réfère à une méthode de conception d'un système de telle façon qu'il puisse continuer à fonctionner, potentiellement de manière réduite, au lieu de tomber complètement en panne dès que l'un de ses composants ne fonctionne plus correctement.

    Noter la différence entre :

    · les systèmes informatiques conçus pour ne pratiquement pas être ralentis en cas de défaillance matérielle ou logicielle ;

    · les critères définis pour représenter la fiabilité. Section 1: Critères de tolérance aux pannes

    Aucune machine, y compris en électronique et en informatique, n'est fiable à 100%, ni inusable. Le fabricant, ou un laboratoire d'essais indépendant, définit, après des tests traduisant une utilisation plus ou moins sévère, un critère de tolérance aux pannes de ladite machine. Ce critère s'exprime soit en un nombre moyen d'heures entre panne (en anglais MTBF, ou mean time between failure), soit en un nombre d'heures de fonctionnement avant la « fin de vie » de la machine. On lui associe en général un autre paramètre, le MTTR (mean time to repair), le temps moyen de réparation. La combinaison des deux permet d'établir le taux de disponibilité prévisible.

    La « disponibilité » correspond donc à : et peut

    s'exprimer en pourcentage (%).

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Section 2: Degrés de gravité des défaillances

    1. panne franche (« fail stop ») : soit le système fonctionne normalement (les résultats sont corrects), soit il ne fait rien. Il s'agit du type de panne le plus simple ;

    2. panne transitoire : des messages sont perdus en entrée ou en sortie ou les deux. Elle est considérée comme une panne temporelle de durée infinie ;

    3. panne temporelle : le temps de réponse du système dépasse les exigences des spécifications ;

    4. panne byzantine : le système donne des résultats aléatoires. Section 3: Méthodes de tolérance aux pannes

    > Les composants tolérants aux pannes. Si chaque composant, à son tour, peut continuer à fonctionner lorsque l'un de ses sous-composants est en panne, alors le système entier pourra continuer à fonctionner. Utiliser le véhicule de l'exemple, certaines voitures ont des pneus run flat (pour " roule à plat "), qui contiennent de la gomme solide à l'intérieur pour leur permettre d'être encore utilisés lorsque la chambre à air est crevée. Ils peuvent seulement être utilisés pour une durée limitée et à vitesse réduite, mais c'est une amélioration substantielle par rapport aux pneus traditionnels.

    > Redondance. Cela signifie avoir une sauvegarde des composants qui peut prendre la relève dès qu'un composant tombe en panne. Par exemple, des camions larges peuvent perdre un pneu sans grande conséquence. Ils ont tellement de pneus qu'aucun n'est critique (à l'exception des pneus avant, qui sont utilisés pour la direction).

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Section 4: Désavantages de la tolérance aux pannes

    Les avantages d'un système tolérant aux pannes sont évidents, mais qu'en est-il des désavantages ?

    > Interférence avec la détection de panne : Pour conserver l'exemple de la voiture capable de rouler avec un pneu crevé, il n'est peut être pas évident pour un conducteur que sa roue, équipée un système tolérant aux pannes, vient de crever. C'est souvent pris en charge par un système de détection automatique de pannes séparé. Dans le cas du pneu, un détecteur surveille la perte de pression d'air et averti le conducteur. L'alternative est la détection de panne manuelle, comme aller inspecter manuellement tous les pneus à chaque arrêt.

    > Réduction de priorité de la correction de pannes : Même si l'administrateur est au courant de la panne, avoir un système tolérant aux pannes est comme réduire l'importance de la réparer. Si la panne n'est pas corrigée, cela pourrait tout de même mener à une défaillance système, lorsque le composant tolérant aux pannes tombe en panne complètement ou lorsque tous les composants redondants ont également cessé de fonctionner.

    > Difficulté du test : Pour certains systèmes de tolérance aux pannes, tels que des réacteurs nucléaires, il n'y a pas de moyen facile pour vérifier que les composants de sauvegarde sont opérationnels. L'exemple le plus horrible est Tchernobyl, où le système de rafraichissement de secours a été testé en désactivant les systèmes primaire et secondaire. Le système de secours n'a pas fonctionné, provoquant l'explosion et l'échappement du nuage radioactif.

    > Coût : Les composants tolérants aux pannes et les composants redondants ont tendance à accroître les coûts. Cela peut être un coût purement économique ou également inclure des mesures autres, telles le poids. Les vols spatiaux habités, par exemple, ont tellement de systèmes redondants et de composants tolérants aux pannes que leur poids est accru drastiquement par rapport aux systèmes non-habités, qui n'ont pas besoin du même niveau de sécurité.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    CHAPITRE 5 : ETUDE DE CAS : REPLICATION SOUS MICROSOFT®

    SQL SERVERTM

    Section 1 : Généralités

    Le SGBD4 que nous utiliserons pour l'implémentation de notre projet est Microsoft® SQL ServerTM 2000 puisqu'il est celui utilisé dans l'Entreprise au moment de notre stage. Microsoft® SQL ServerTM permet trois différents types de réplication :

    ü Réplication de capture instantanée.

    ü Réplication transactionnelle.

    ü Réplication de fusion.

    Chaque type offre des fonctionnalités différentes en fonction de l'application, et des niveaux différents de propriétés ACID (atomicité, cohérence, isolement, durabilité) pour les transactions et l'autonomie du site. La réplication de fusion, par exemple, permet aux utilisateurs de travailler et de mettre à jour des données de manière autonome, bien que les propriétés ACID ne soient pas assurées. Dès lors, lorsque les serveurs sont connectés, tous les sites de la topologie de réplication convergent vers les mêmes valeurs de données. La réplication transactionnelle gère la cohérence des transactions, mais les sites abonnés ne sont pas aussi autonomes que lors de la réplication de fusion, car les éditeurs et les abonnés doivent être généralement connectés en permanence pour permettre la propagation des mises à jour vers les abonnés.

    Il arrive qu'une même application utilise plusieurs types et options de réplication. Une partie des données de l'application ne nécessite pas de mise à jour des abonnés, certains jeux de données requièrent éventuellement de rares mises à jour, effectuées sur un seul

    4 Système de Gestion de Base de Données

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    serveur ou un faible nombre d'entre eux, tandis que d'autres jeux de données peuvent nécessiter une mise à jour quotidienne sur plusieurs serveurs.

    Le type de réplication que vous choisissez pour votre application dépend de vos exigences basées sur les facteurs de données distribuées, que vos données doivent être mises à jour ou pas sur l'abonné et quel que soit votre environnement de réplication ainsi que les besoins et exigences des données qui seront répliquées. Pour plus d'informations, reportez- vous à Planification de la réplication.

    Chaque type de réplication commence par la création et l'application de l'instantané sur l'abonné, il est donc important de comprendre la réplication d'instantané en complément de tout autre type de réplication et d'options que vous avez choisies.

    Section 2 : Entités présentes dans une Réplication

    Microsoft s'est inspiré de l'industrie de l'édition pour modéliser le processus de réplication SQL Server. On parle ici quelquefois de la métaphore éditeur abonné. Dans cette « métaphore » de l'industrie de l'édition, on retrouve plusieurs entités qui jouent ici un rôle spécifique dans la réplication ; ces entités sont : l'éditeur, le distributeur, les abonnés, les publications, les articles, les abonnements.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 3 : Exemple d'un processus de réplication

    La présentation de ces derniers est faite ipso facto et de manière non exhaustive, juste pour appréhender les concepts qu'ils représentent :

    a) L'éditeur

    Un Éditeur est un serveur correspondant à la source des données à répliquer. L'Éditeur définit un article pour chaque table ou autre objet de base de données à utiliser comme source de réplication. L'éditeur est en réalité le serveur qui rend disponible les données destinées à être répliquées. Les données sont organisées en groupes logiques appelés « publication ». Un éditeur peut avoir plusieurs publications différentes. Les publications constituent un moyen pratique de regrouper des données et des objets associés que vous souhaitez répliquer ensemble.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    De plus, l'éditeur, en fonction du type de réplication (nous verrons cela plus loin) détermine les données qui ont été modifiées et maintient à jour ces informations pour la réplication.

    b) Le distributeur

    Un Distributeur est un serveur qui effectue différentes tâches lors du transfert des articles entre les Éditeurs et les Abonnés. Les tâches effectivement réalisées varient en fonction du type de réplication effectué.

    Le rôle du distributeur dépend beaucoup du type de réplication que l'on implémente. On distingue néanmoins deux types de distributeur : distributeur local et distributeur distant. Un distributeur local est un serveur qui est configuré pour être en même temps un éditeur et un distributeur alors qu'un distributeur distant est un serveur qui est séparé de l'éditeur et qui n'est configuré que pour distribuer les réplications.

    c) Les abonnés

    Un Abonné est un serveur qui reçoit les données répliquées par l'Éditeur. L'Abonné définit un abonnement à une publication particulière. L'abonnement spécifie à quel moment l'Abonné reçoit la publication de l'Éditeur, et mappe les articles aux tables et autres objets de base de données dans l'Abonné.

    Les abonnées s'abonnent à des publications (et non à des articles dans une publication), de plus, ils ne s'abonnent qu'aux publications dont ils ont besoin et non à toutes les publications présentes chez l'éditeur.

    En fonction du type de réplication et des options choisies, l'abonné peut propager les changements qu'il fait aux données à l'éditeur, et même les publier pour les autres abonnés.

    a) Un article

    Un article est un objet de la base de données destiné à être répliqué. Il peut s'agir d'une table entière, d'une partie de la table (filtres horizontaux et verticaux), d'une procédure stockée, d'une vue, d'une vue indexée, d'une fonction utilisateur.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    b) Une publication

    Une publication est le regroupement d'un ou plusieurs articles d'une même base de données. La possibilité de regrouper les articles en publication facilite la conception, et permet de définir un ensemble homogène et logique de données que l'on souhaite répliquer ensemble.

    c) Un abonnement

    Un abonnement est la demande de recevoir une publication. Il définit quelle publication sera reçue, où et quand.

    d) Différents types d'abonnements + Abonnement envoyé :

    Avec ce type d'abonnement, l'éditeur est responsable de la synchronisation des données avec l'abonné, sans que celui-ci n'ait à demander cette synchronisation.

    + Abonnement extrait :

    Dans un abonnement extrait, la synchronisation des données est initiée par

    l'abonné.

    Section 3 : Agents de Réplication

    Les agents de réplication SQL ServerTM s'occupent des processus de copie et de distribution des données. Il existe l'agent SQL Server, ainsi que des agents spécifiques à chaque type de fusion. Découvrons-les maintenant.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    a) Agent SQL Server

    L'agent SQL ServerTM gère et organise les agents utilisés dans la réplication, c'est le moyen le plus efficace de lancer les agents de réplication. Il s'occupe également de différentes tâches en dehors de la réplication.

    b) Agent de capture instantanée

    Cet agent est utilisé dans tous les types de réplication. Il prépare le schéma, les fichiers de données et les procédures stockées devant être répliqués. Il enregistre aussi les informations de synchronisation dans la base de données de distribution.

    c) Agent de lecture du journal

    Il est utilisé pour la réplication transactionnelle. Il surveille le journal des transactions de chaque base de données et identifie les transactions devant être répliquées. L'agent copie ensuite les transactions dans la base de données de distribution, elles seront donc distribuées aux abonnés. Il est à noter que chaque base de données possède son propre agent de lecture du journal.

    d) Agent de distribution

    L'agent de distribution est utilisé dans la réplication de capture instantanée et dans la réplication transactionnelle. Son rôle est de distribuer aux abonnés les captures instantanées et les transactions présentes dans la base de données de distribution.

    Il s'exécute au niveau du distributeur pour les abonnements envoyés et au niveau de l'abonné pour les abonnements extraits.

    e) Agent de fusion

    Utilisé dans la réplication de fusion, cet agent applique la capture instantanée initiale à l'abonné. Ensuite, il doit propager et fusionner les changements faits aux données (le processus de résolution de conflit est initié par cet agent).

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    f) Agent de lecture de file d'attente

    Cet agent est utilisé avec la réplication de capture instantanée ou transactionnelle si l'option de mise à jour en attente est activée ou si l'option de mise à jour immédiate avec mise à jour en attente en cas de problème est activée.

    Son rôle est de propager les messages de file d'attente aux publications appropriées, c'est un agent multithread exécuté sur le distributeur.

    Contrairement aux autres agents, un seul agent de lecture de file d'attente s'occupe de tous les éditeurs et publications d'un distributeur donné.

    Section 4 : La réplication de capture instantanée

    La réplication de capture instantanée distribue les données exactement telles qu'elles apparaissent à un moment précis dans le temps (d'où le terme d'instantanée) et ne surveille pas les changements faits sur les données répliquées car ces changements ne sont pas répliqués aux abonnés.

    Dans ce mode de réplication, ce sont l'intégralité des données répliquées qui sont redistribuées aux abonnés lors de la synchronisation, et non pas les seuls changements de façon incrémentielle.

    Comme l'ensemble des données est répliqué, le temps de traitement peut être plus long qu'en réplication transactionnelle, en revanche ce type de réplication demande moins de ressources processeur car il n'est pas nécessaire de surveiller les changements en continu sur le(s) serveur(s) source(s). De plus, les données sont en général répliquées moins souvent que dans les autres types de réplication.

    Elle est préférable à la réplication transactionnelle lorsque les changements faits sur les données sont conséquents mais peu fréquents. La réplication de capture instantanée est idéale pour répliquer des données qui ne sont que rarement modifiées, des données dont on

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    n'a pas besoin d'avoir les dernières valeurs, ou bien encore des données destinées à la lecture seule, comme une liste de prix par exemple.

    Il peut cependant être nécessaire pour les abonnés de pouvoir modifier les données de réplication. Dans ce cas, la « consistance » des transactions, c'est-à-dire le fait que les transactions soient validées sur tous les serveurs le nécessitant ou sur aucun est assuré par un protocole de validation à deux phases.

    Section 5 : La réplication transactionnelle

    En réplication transactionnelle, la première phase consiste en fait à faire une réplication instantanée. L'ensemble des données destinées à la réplication est distribué aux abonnés. En revanche, la suite du processus est différente de la réplication instantanée. Une fois les données répliquées la première fois, ce sont chaque transaction, de façon individuelle qui sera propagée aux abonnées. Les transactions seront propagées de façon continue ou différée.

    En réalité, SQL ServerTM surveille les instructions INSERT, DELETE et UPDATE et d'autres changements faits sur les données et enregistre ces données dans la base de données qui joue alors un rôle de file d'attente. Les transactions sont ensuite propagées dans l'ordre dans lequel elles ont été effectuées.

    Ce mode de réplication est riche de possibilités, on peut choisir de propager les transactions quand elles ont lieu (presque en temps réel) ou à intervalle régulier. On peut en outre choisir de pouvoir faire des modifications ou non sur les abonnés, pour propager ensuite ces changements à l'éditeur et aux autres abonnés.

    Il faut faire attention à la façon dont sont utilisées ces options. En effet, certaines configurations peuvent engendrer des conflits ; si on choisit par exemple de propager les transactions de façon différée, et que l'on décide de pouvoir faire des modifications sur les abonnés, il peut en résulter des conflits. Par exemple, L'abonné peut effacer des données

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    qu'une transaction antérieure sur le serveur source a modifiées, mais cette transaction n'a pas encore été propagée. Quand l'abonné la recevra, une erreur surviendra car la transaction devra modifier des données qui n'existent plus.

    Section 6 : La réplication de fusion

    La réplication de fusion associe les avantages des réplications de capture instantanée et de réplication transactionnelle. Elle consiste à répliquer les données de l'éditeur aux abonnés, puis à laisser l'éditeur et les abonnés faire des modifications pendant qu'ils sont connectés ou déconnectés et enfin de fusionner ces transactions entre les différents sites quand ils sont connectés.

    La réplication de fusion permet à plusieurs sites de travailler indépendamment les uns des autres, de faire des modifications sur les données de réplication chacun de son côté, puis fusionne toutes ces modifications en un ensemble cohérent.

    Les modifications sont propagées immédiatement, à intervalle régulier ou à la demande. Comme des copies de données peuvent être modifiées en même temps à plusieurs endroits, des conflits peuvent apparaître au moment de la fusion des modifications. SQL ServerTM permet de configurer la façon dont ces conflits seront résolus en fonction de l'utilisation que l'on a.

    Après avoir vu les trois grands types de réplication, nous allons maintenant amorcer une étude technique qui sera une ouverture vers le niveau pratique que nous aurons d'atteindre avec le système de gestion de base de données Microsoft® SQL ServerTM 2000.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    CHAPITRE 6 : ETUDE DE FAISABILITE ET ANALYSE TECHNIQUE Section 1 : Etude de Faisabilité

    La réalisation de notre projet de réplication dépend de plusieurs facteurs, humains, financières, matériels et logiciels. Gérer ce projet nous amène à l'organiser avec la méthode appropriée, de sorte que l'ouvrage réalisé par le maître d'oeuvre réponde aux attentes du maître d'ouvrage et qu'il soit livré dans les conditions de coût et de délai prévus initialement. Pour ce faire, la gestion de projet a pour objectifs d'assurer la coordination des acteurs et des tâches dans un souci d'efficacité et de rentabilité.

    a) Facteur humain

    L'élaboration et le dénouement du projet exigent la présence d'un maître d'oeuvre et d'un maître d'ouvrage. Le maître d'oeuvre est l'auteur du projet ; il assure la direction des travaux et peut en être l'architecte. Une fois son projet validé par le maître d'ouvrage qui auprès de lui tient un rôle de patron, le maître d'oeuvre est responsable du bon déroulement des travaux et joue un rôle de conseil dans le choix des entreprises qui vont les réaliser. Il est responsable du suivi des délais et des budgets selon les modalités définies dans le cahier des clauses administratives particulières. Dans notre cas, à ACTIVA, la DSI (Direction des Solutions Informatiques) tient ce rôle pour ce qui est du projet réel de réplication. La maîtrise d'ouvrage reviendra à la Direction Générale ou au « comité de Direction » constitué des responsables de certaines Directions stratégiques.

    Dans le cadre de notre document, la maîtrise d'oeuvre est assurée par l'encadreur académique. La maîtrise d'ouvrage est tenue par ISMA, qui se comporte dans ce cas comme le commanditaire du projet.

    Une fois le projet réalisé et livré, il est important de déléguer la responsabilité du suivi du système mis en place à un personnel spécial. Une fois au moins tous les deux mois, l'on doit s'assurer de l'intégrité des données répliquées et surtout, vérifier les conséquences dues aux pannes liées aux éventuelles pertes de connexions.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    b) Contraintes matérielles

    Pour mener à terme ce projet, plusieurs ressources matérielles seront sollicitées. Outre le dispositif à prévoir pour la connexion entre les agences et le siège, l'achat de nouveaux ordinateurs à qui on donnera des rôles précis est à envisager.

    Le souci de haute disponibilité peut être satisfait entre autres, par la mise en place d'un SAN dont les avantages sont la gestion de la concurrence d'accès au disque partagé et la possibilité d'avoir une capacité de l'ordre de Téraoctets (To). Ce dispositif est constitué de plusieurs disques rangés dans une baie comme nous le montre la figure ci-après :

    Figure 4 : Exemple de baie de disques.

    Dans l'optique de prévenir des pannes liées au niveau des indicateurs de performance, les serveurs sur lesquels seront implémenter les opérations de réplication devront avoir un minimum de performances considérées comme ligne de base.

    Il faudra aussi prévoir les interruptions de courant électrique. Pour ce faire, l'achat d'onduleurs pour les ordinateurs et d'un groupe électrogène serait d'une grande nécessité.

    c) Contraintes logicielles

    La migration de SQL Server 2000 à une version beaucoup plus récente serait déjà à prévoir. Pour ce qui concerne le système d'exploitation utilisé, Microsoft® Windows 2003 ServerTM est actuellement installé sur les serveurs de production. La réplication est automatisable et, des progiciels spéciaux peuvent être développés pour booster mieux gérer ses différents processus ; c'est pourquoi il est utile de prévoir aussi un environnement de

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    développement. Pour le cas de SQL Server 2000, il est possible d'effectuer des tâches programmées sous Microsoft Visual Basic 6.0 et, pour les versions 2005 et 2008 de SQL Server, c'est la plate-forme .NET (dotnet) qui y est directement intégrée.

    d) Contraintes financières

    Les difficultés financières dépendent des besoins matériels, logiciels et humains. En effet, pour mener à bout un projet de réplication entre sites distants, il faut s'assurer de la possibilité du budget alloué de pouvoir entre autres :

    · avoir une connexion internet stable et constante ;

    · avoir un dispositif adéquat pour l'interconnexion ;

    · avoir des ordinateurs respectant une certaine ligne de base ;

    · avoir un personnel formé pour assurer la maintenance à la fois matérielle et logicielle ;

    · prévoir une redondance pour tout sous-système du système global à implémenter ;

    · prévoir les intempéries et autres pannes imprévues.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    PARTIE III: IMPLEMENTATION DU SYSTEME DE REPLICATION

    CHAPITRE 7 : CONFIGURATION DE LA REPLICATION Section 1 : Spécifications sur l'architecture du système

    Le système contient trois différents types d'élément qui peuvent être dans différents réseaux:

    > L'interface d'administration: seulement une dans le système; elle contient:

    o Le programme de l'interface d'administration ;

    o La base de données locale requise pour stocker l'information créée par le programme.

    > Le serveur de réplication: autant que nécessaire; il y a un programme de serveur de réplication sur chaque serveur de base de données qui est un publicateur; il contient:

    o Le programme de serveur de réplication qui est un Web service ;

    o La base de données locale requise pour sauver l'information nécessaire au Web service ;

    o La base de données du publicateur.

    Ø La base de données du souscripteur: autant que nécessaire; il n'a pas de programme spécifique installé dessus mis à part le serveur de base de données lui-même.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 5 : Architecture globale du système de réplication.

    Etape 1: L'administrateur utilise l'interface d'administration pour configurer et gérer un nombre infini de réplications. Pour chaque réplication, il définie les bases de données publicateur et souscripteur, quand et à quelle fréquence la tâche doit être exécutée, quelles données sont concernées sur le publicateur et quelques options également. Toutes ces informations sont sauvées localement dans la base de données Access et peuvent bien sûr être modifiées.

    Etape 2: Une fois que l'administrateur a fini de configurer une réplication et qu'il souhaite la rendre active, l'interface envoie toutes les informations décrites ci-dessus au serveur de réplication correspondant (celui qui se trouve sur le serveur de base de données publicateur). En fait, il envoie une requête SOAP au Web service de réplication. Le Web service stocke les informations dans sa base locale Access et est maintenant prêt à lancer les réplications par lui-même: l'interface d'administration n'a plus besoin d'être ouverte.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Etape 3: Le Web service est censé tourner tout le temps. Lorsqu'il se rend compte que c'est le bon moment pour démarrer une réplication selon son planning, il se connecte aux deux bases de données publicateur et souscripteur et commence alors le transfert des données. A la fin du processus, il sauvegarde tous les messages d'erreur dans sa base de données locale. Puis il les renverra à l'interface d'administration quand celle-ci les demandera.

    En général, la réplication repose sur 4 principales entités : l'éditeur, le distributeur, l'abonné et surtout la distribution car, c'est cette dernière qui représente la vue ou le segment de la base de données à distribuer. Une fois que ces quatre entités sont réunies, la mise en place d'un système de réplication est possible, avec au préalable une connexion reliant les différents serveurs de base de données. Considérons le schéma ci-après :

    Figure 6 : Principales entités de la réplication.

    Illustrons à présent l'algorithme du processus de réplication dans la figure ci-

    après :

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 7 : Algorithme du processus de réplication.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Section 2 : Configuration de la réplication sous MS SQL ServerTM 2000

    Etape1 : Définition de l'éditeur / distributeur

    Figure 8 : Clic-droit sur le serveur à configurer comme éditeur / distributeur.

    Figure 9 : Clic-gauche sur « Propriétés » du menu contextuel.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 10 : Clic sur onglet « réplication » puis sur « configurer ».

    Figure 11 : Lancement de l'assistant de configuration de publication et distribution.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 12 : Spécification du dossier de captures instantanées.

    Figure 13 : Choix de la base de données de publication.

    Figure 14: Choix du type de réplication.

    Figure 15 : Choix des articles à publier.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 16 : Finalisation de la création de publication.

    Figure 17 : Finalisation de la création de publication.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Etape 2 : Configuration de l'abonné

    Figure 18 : Assistant extraction d'abonnement.

    Figure 19 : Recherche de publications disponibles.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Figure 20 : Choix du serveur de distribution.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Section 3 : Redondance de chaque base locale

    Figure 21 : Redondance des bases locales.

    Dans chacun des sites, il existe une base de données de production et une base de données temporaire sur laquelle on paramétrera les options de réplication et, aussi, cette même base peut servir de redondance. En effet, lorsque la base de données principale est « down » à cause d'un quelconque incident, la seconde pourra servir de base de production. Pour transférer les données, il faudra implémenter un lot DTS5 qui aura pour but de Mettre à jour les lignes et colonnes des tables de la base secondaire (considéré ici dans notre cas comme tampon de réplication).

    5 Lot DTS : Ensemble de tâches groupées à exécuter, effectuant des traitements précis sur des bases de données.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    CHAPITRE 8 : OPTIMISATION DE LA REPLICATION Section 1 : Simulation de la réplication

    L'implémentation de la réplication a été effectuée avec succès au niveau de l'Entreprise, mais seulement, les machines virtuelles ayant des ressources limitées, ne nous permettent pas de vous en faire ici une démonstration.

    Néanmoins nous nous permettons de vous faire une démonstration de la configuration de la réplication d'une part, et l'utilisation d'un lot DTS pour le transfert et la mise à jour d'une base de données d'autre part.

    Section 2 : Optimisation de la réplication

    Une solution informatique est dite complète lorsqu'elle n'oublie point les critères de haute disponibilité. Cette solution doit pouvoir :

    · détecter des erreurs matérielles et logicielles ;

    · relancer le fonctionnement suite à une défaillance ;

    · réintégrer une machine tombée en panne.

    Au vu de ces obligations nous devons respecter une ligne de conduite pour optimiser notre système de réplication dans le but de réduire au mieux les défaillances techniques. Plusieurs habitudes sont à acquérir :

    1: Evitez de publier des données inutiles.

    Essayez de réduire le nombre de données publiées. Cela peut offrir de sérieux gains de performance étant donné que SQL ServerTM ne publiera que les nombres requis de données. De plus, cela peut réduire le trafic réseau et améliorer les performances générales de réplication.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    2: Mettez les logs de la base de données publiée et celui de la base de données de distribution sur des disques séparés.

    Parce que le fait de loguer prend du temps d'écriture, il est important que le tableau contenant les fichiers logs de SQL ServerTM puisse avoir accès à suffisamment de ressources en lecture/écriture. Séparer les fichiers logs sur deux disques est la solution de choix.

    3: Ne configurez pas la base de distribution pour qu'elle s'étende ou se réduise automatiquement.

    Microsoft recommande de fixer une taille pour la base de distribution. La régler en mode automatique amène des pertes de performance. Il faut donc choisir une taille raisonnable dès le début.

    4: Mettez le composant de réplication sur son propre serveur.

    Cette topologie est utilisée quand le niveau d'activité de réplication augmente ou quand les ressources serveur deviennent limitées. Elle réduit le chargement de l'Editeur (Publisher), mais augmente le trafic réseau général. Cette topologie requiert une installation MS-SQL ServerTM séparée: une pour l'Editeur et une pour le Distributeur.

    5: Lancez l'assistant de capture instantanée (Snapshot Agent) aussi rarement que possible.

    Le « Snapshot Agent » fait de multiples copies de données de l'Editeur vers le Distributeur, ce qui amène une dégradation de certaines performances. Essayez de ne planifier le lancement de l'assistant que durant les moments de faible usage du processeur et les périodes calmes pour minimiser les pertes de performances.

    6: Evitez la réplication continue.

    Si possible, planifiez les réplications à intervalles réguliers au lieu de choisir la réplication continue.

    7: Evitez de répliquer les colonnes text, ntext et image.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Ces types de données requièrent plus d'espace disque et de temps processeur que les autres types de données.

    8: Ne répliquez l'exécution de procédures stockées que quand un grand nombre de lignes est affecté.

    Par exemple, au lieu de répliquer un très grand nombre de déclarations INSERT, UPDATE et DELETE, vous pouvez créer une procédure stockée qui contient toutes ces déclarations. Ne répliquez que l'exécution de la procédure stockée. Cela peut réduire le traffic réseau et améliorer les performances globales de réplication.

    9: Sélectionnez l'option "Maximize Throughput for Network Applications"

    Cela peut améliorer les performances de SQL ServerTM étant donné que Windows NT allouera plus de RAM à SQL ServerTM qu'à son fichier cache.

    10: Sélectionnez l'option "Mémoire Serveur Minimale".

    Cette option est utilisée pour fixer une taille d'allocation mémoire minimum pour SQL Server. Si le serveur est un Distributeur externe ou un Editeur et Distributeur combinés, Microsoft recommande que l'option "Mémoire Serveur Minimale" soit fixée à au moins 16 Mo, pour éviter la disponibilité de mémoire basse pendant les activités de réplication

    11: Si vous travaillez avec SQL ServerTM 2000 dans un éditeur central avec une topologie distributeur externe (quand le composant de distribution de réplication se trouve sur son propre serveur dédié) et que l'Editeur est relié au Distributeur par un LAN ou WAN lent, pensez à compresser vos fichiers de capture instantanée.

    Cette nouvelle fonctionnalité de réplication de SQL ServerTM 2000 permet de diminuer le trafic réseau.

    12: Essayez de permettre le Pull ou les abonnements anonymes pour améliorer les performances du Distributeur.

    L'amélioration est due au fait que le travail de l'Assistant de Distribution (Distribution Agent) sera déplacé du Distributeur aux Abonnés.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    13: Augmentez la propriété « MxBcpThreads » de l'Assistant de Capture Instantanée.

    Cette propriété spécifie le nombre d'opérations de copies multiples qui peuvent être lancées en parallèle.

    En augmentant cette valeur, les opérations de copies multiples seront plus rapides, car elles se feront en même temps.

    Il ne faut pas non plus fixer cette propriété trop haute: cela peut amener à des dégradations de performance, car SQL ServerTM devra prendre plus de temps pour gérer les tâches supplémentaires. Incrémentez la propriété de deux en deux, et surveillez les performances...

    14: Mettez à zéro la propriété « OutputVerboseLevel » de l'Assistant de Distribution, de l'Assistant de Lecture de Logs et l'Assistant de Fusion et de l'Assistant de Capture Instantanée.

    Cette propriété spécifie si la sortie doit être complète. Elle peut avoir trois valeurs: - 0: seuls les messages d'erreur sont affichés

    - 1: tous les rapports de progression sont affichés

    - 2: tous les messages d'erreur et les rapports de progression sont affichés (valeur par défaut).

    15: Mettez à 1 la propriété « HistoryVerboseLevel » de l'Assistant de Distribution, de l'Assistant de Lecture de Logs et l'Assistant de Fusion et de l'Assistant de Capture Instantanée.

    Cette propriété spécifie la taille de l'historique à loguer.

    16: Si vous travaillez avec SQL ServerTM 2000, pensez à utiliser la propriété d'assistant « UseInprocLoader ».

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Si cette propriété est sélectionnée, le processus d'entrée BULK INSERT sera utilisé pour appliquer des fichiers de capture. Vous ne pouvez pas utiliser cette propriété avec le mode BCP, ni avec des abonnés OLE DB ou ODBC.

    17: Augmentez le paramètre « ReadBatchSize » de l'Assistant de Lecture de Log.

    Ce paramètre spécifie le nombre maximum de transactions lues à partir du fichier log de la base de publication. La valeur par défaut est 500. Cette option devrait être utilisée quand un grand nombre de transactions est écrit sur une base de publication, mais que seulement une partie de celles-ci sont marquées pour la réplication.

    18: Si vous travaillez avec la réplication transactionnelle, augmentez le paramètre « CommitBatchSize » de l'assistant de distribution.

    Ce paramètre spécifie le nombre de transactions envoyées avant que la déclaration COMMIT soit envoyée. La valeur par défaut est 100.

    19: Créez un index pour chaque colonne utilisée dans la clause WHERE du filtre.

    Si vous n'utilisez pas de tels index, alors SQL ServerTM devra lancer un scan sur la table entière.

    20: Si vous travaillez avec la réplication de fusion, utilisez des filtres statiques plutôt que dynamiques.

    Parce que SQL ServerTM requiert plus de temps processeur pour gérer les filtres dynamiques que statiques.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    CONCLUSION GENERALE

    La réplication se présente comme un avantage par rapport à la méthode de mise à jour manuelle utilisée actuellement à ACTIVA. Au-delà des besoins d'investissements supplémentaires à prévoir pour l'implémentation réelle de cette solution, la réplication est une nécessité qui rentre dans la même lignée que celle de la connexion à établir entre les agences et le Siège.

    La réalisation de ce projet résoudra à la fois des problèmes de sécurité, de disponibilité de données et, obligerait l'Entreprise à établir une connexion entre ses différents points de vente. Mais à postériori, la mise à niveau de l'environnement matériel et logiciel est à prévoir car les versions plus récentes des SGBD et autres logiciels offrent des outils qui simplifient encore davantage certains traitements.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    REFERENCES BIBLIOGRAPHIQUES

    A. OUVRAGES

    1) Arnold ROBBINS, Nelson-H-F BEEBE, Introduction aux scripts shell, Edition O'Reilly, 2005.

    B. ARTICLES

    1) Gopal ASHOK (Microsoft Corporation), Paul S. RANDAL ( SQLskills.com), «SQL SERVER 2008 REPLICATION: Providing High Availability», SQL Server Technical Article, PP 3-5.

    2)

    Stéphane GANÇARSKI, Hubert Naacke, «Réplication des Bases de données», LIP6, Université de Paris 6.

    3) Linux Magazine France HS n°18 - Février 2004, PP 1-4.

    C. DIVERS

    1) www.3com.com, « VPN Configuration Guide ».

    2) www.developpez.com, « Haute disponibilité avec SQL Server 2000 ».

    3) fr.wikipedia.org/wiki.

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    TABLE DES MATIERES

    DEDICACES I

    REMERCIEMENTS II

    SOMMAIRE III

    AVANT-PROPOS IV

    RESUME V

    ABSTRACT VI

    LISTE DES ABREVIATIONS VII

    LISTE DES FIGURES ET TABLEAUX VIII

    INTRODUCTION GENERALE 1

    PARTIE I : PRESENTATION DE L'ENTREPRISE ET ETUDE D'OPPORTUNITE 2

    CHAPITRE 1 : PRESENTATION DE L'ENTREPRISE 2

    Section 1 : Fiche d'Identité 2

    Section 2 : Historique 2

    Section 3 : Organisation de l'Entreprise 3

    Section 4 : Organigramme 5

    CHAPITRE 2 : ETUDE D'OPPORTUNITE 6

    Section 1 : Le besoin d'un système de réplication 6

    Section 2 : Eventuelles défaillances du système de haute disponibilité 7

    Section 3 : Avantages et inconvénients de la réplication de base de données 8

    Section 4 : Etude de la technologie d'interconnexion appropriée 9

    a) Connexions privées 10

    b) Protocoles nativement cryptées 10

    c) Le VPN (Virtual Private Network / Réseau privé virtuel) 11

    PARTIE II : ANALYSE TECHNIQUE ET FAISABILITE 14

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    CHAPITRE 3 : PRESENTATION DU CONCEPT DE REPLICATION 14

    Section 1 : Définition générale de la Réplication 14

    Section 4 : Principes de la Réplication 15

    CHAPITRE 4: TOLERANCE AUX PANNES 17

    Section 1: Critères de tolérance aux pannes 17

    Section 2: Degrés de gravité des défaillances 18

    Section 3: Méthodes de tolérance aux pannes 18

    Section 4: Désavantages de la tolérance aux pannes 19

    CHAPITRE 5 : ETUDE DE CAS : REPLICATION SOUS MICROSOFT® SQL SERVERTM 20

    Section 1 : Généralités 20

    Section 2 : Entités présentes dans une Réplication 21

    a) L'éditeur 22

    b) Le distributeur 23

    c) Les abonnés 23

    a) Un article 23

    b) Une publication 24

    c) Un abonnement 24

    d) Différents types d'abonnements 24

    Section 3 : Agents de Réplication 24

    a) Agent SQL Server 25

    b) Agent de capture instantanée 25

    c) Agent de lecture du journal 25

    d) Agent de distribution 25

    e) Agent de fusion 25

    f) Agent de lecture de file d'attente 26

    Section 4 : La réplication de capture instantanée 26

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    Section 5 : La réplication transactionnelle 27

    Section 6 : La réplication de fusion 28

    CHAPITRE 6 : ETUDE DE FAISABILITE ET ANALYSE TECHNIQUE 29

    Section 1 : Etude de Faisabilité 29

    a) Facteur humain 29

    b) Contraintes matérielles 30

    c) Contraintes logicielles 30

    d) Contraintes financières 31

    PARTIE III: IMPLEMENTATION DU SYSTEME DE REPLICATION 32

    CHAPITRE 7 : CONFIGURATION DE LA REPLICATION 32

    Section 1 : Spécifications sur l'architecture du système 32

    Section 2 : Configuration de la réplication sous MS SQL ServerTM 2000 36

    Section 3 : Redondance de chaque base locale 43

    CHAPITRE 8 : OPTIMISATION DE LA REPLICATION 44

    Section 1 : Simulation de la réplication 44

    Section 2 : Optimisation de la réplication 44

    CONCLUSION GENERALE 49

    REFERENCES BIBLIOGRAPHIQUES 50

    TABLE DES MATIERES 51

    ANNEXES 54

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    ANNEXES

    1) Organigramme IARD

    2) Organigramme VIE

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    3) Localisation ACTIVA

    4) Lexique

    i. ADSL: Technique de communication qui permet d'utiliser une ligne téléphonique d'abonné pour transmettre et recevoir des signaux numériques à débits élevés de manière indépendante du service téléphonique proprement dit.

    ii. DTS: Services inclus dans le SGBD SQL Server 2000 qui facilitent l'extraction, la transformation et le chargement de données hétérogènes.

    iii. HTTPS: HTTPS (avec S pour secured, soit « sécurisé ») est la simple combinaison de HTTP avec une couche de chiffrement comme SSL ou TLS. Il permet au visiteur de vérifier l'identité du site auquel il accède

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    grâce à un certificat d'authentification. Il garantit la confidentialité et l'intégrité des données envoyées par l'utilisateur (notamment des informations entrées dans les formulaires) et reçues du serveur.

    iv. LAN: Réseau informatique d'échelle géographique restreinte.

    v. OLE : (Object Linking and Embedding) Protocole et un système d'objets distribués, mis au point par Microsoft. Il permet à des applications utilisant des formats différents de dialoguer. Par exemple, un traitement de texte peut insérer une image provenant d'un logiciel de traitement d'image.

    vi. OS: (Operating System, Système d'exploitation) Ensemble de programmes central d'un appareil informatique qui effectue les opérations de manipulation du matériel. Il sert à coordonner, optimiser et uniformiser l'utilisation du matériel informatique par les logiciels applicatifs.

    vii. POP3: protocole qui permet de récupérer les courriers électroniques situés sur un serveur de messagerie électronique. Ce protocole a été réalisé en plusieurs versions respectivement POP1, POP2 et POP3. Actuellement, c'est POP3, ou Post Office Protocol Version 3 qui est utilisé de façon standard.

    viii. RAID: Technologie permettant de stocker des données sur de multiples disques durs afin d'améliorer, en fonction du type de RAID choisi, la tolérance aux pannes et/ou les performances de l'ensemble.

    ix. RNIS : Liaison autorisant une meilleure qualité et des vitesses pouvant atteindre 2 Mbit/s (accès S2) contre 56 kbit/s pour un modem classique..

    x. SATA: Bus informatique principalement conçu pour le transfert de données entre un ordinateur et un disque dur mais aussi utilisé pour les lecteurs cd/dvd. C'est l'évolution du standard « Advanced Technology Attachment » (ATA ou IDE).

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN

    xi. SCSI: Standard définissant un bus informatique permettant de relier un ordinateur à des périphériques ou bien même à un autre ordinateur.

    xii. SOAP: (Ancien acronyme de « Simple Object Access Protocol ») est un protocole de RPC orienté objet bâti sur XML. Il permet la transmission de messages entre objets distants, ce qui veut dire qu'il autorise un objet à invoquer des méthodes d'objets physiquement situés sur un autre serveur. Le transfert se fait le plus souvent à l'aide du protocole HTTP, mais peut également se faire par un autre protocole, comme SMTP.

    xiii. SSL: Protocole de sécurisation des échanges sur Internet, devenu Transport Layer Security (TLS) en 2001.

    xiv. VPN: Extension des réseaux locaux qui préserve la sécurité logique que l'on peut avoir à l'intérieur d'un réseau local, correspondant en fait à une interconnexion de réseaux locaux via une technique de « tunnel ».

    Mise en place d'un système de réplication de base de données entre sites distants
    Par BILEY NDONGO ALPHONSE ROSELIN






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Piètre disciple, qui ne surpasse pas son maitre !"   Léonard de Vinci