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

 > 

étude d'une migration de Sybase vers PostgreSQL


par Virginie Quesnay
IUP Génie des systèmes industriels - ANNECY - Master 2004
  

sommaire suivant

Copyright (c) Virginie QUESNAY

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation;

with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU

Free Documentation License".

 

VIRGINIE QUESNAY
Master OTSI
Année 03/04

C.C.I. DE LA
HAUTE-SAVOIE

5 rue du 27ème BCA - BP 2072
74011 Annecy CEDEX

MEMOIRE PROFESSIONNEL

Étude d'une migration de Sybase vers PostgreSQL

Enseignant tuteur : Christian BRAESCH

Maître de stage : Christophe POLLIER INSTITUT UNIVERSITAIRE PROFESSIONNALISE

DE GENIE DES SYSTEMES INDUSTRIELS

Genie des systèmes d'information

 

VIRGINIE QUESNAY
Master OTSI
Année 03/04

C.C.I. DE LA
HAUTE-SAVOIE

5 rue du 27ème BCA - BP 2072
74011 Annecy CEDEX

MÉMOIRE PROFESSIONNEL

Étude d'une migration de Sybase vers PostgreSQL

 

VIRGINIE QUESNAY
Master OTSI
Année 03/04

C.C.I. DE LA
HAUTE-SAVOIE

5 rue du 27ème BCA - BP 2072
74011 Annecy CEDEX

?

RÉSUMÉ:

Ce mémoire a été réalisé lors de mon stage de fin d'études de Master a l'IUP-GSI d'Annecy le Vieux. Celui-ci s'est déroulé au sein de la Chambre de Commerce et d'Industrie de la Haute-Savoie du 8 mars au 25 juin 2004.

Le but de ce stage était d'étudier les possibilités de migration d'une base de données de Sybase vers PostgreSQL.

Ce mémoire est donc composé de trois parties:

- Le contexte du stage (l'existant);

- La problématique de migration de base de données;

- L'illustration de cette problématique par le cas concret qu'était mon étude.

MOTS-CLEFS:

PostgreSQL, Sybase, Perl, SQL, Migration, Traduction

Remerciements

Je tiens tout d'abord à remercier mon maître de stage et chef de projet Mr Christophe POLLIER, pour m'avoir proposé un sujet aussi interressant et formateur et de m'avoir guidée dans mon travail tout en me laissant un maximum de libertés et d'initiatives.

Je tiens également à remercier tous les collaborateurs de la CCI et tout particulièrement ceux du services TIC dans lequel j'ai travailé : Grégory BENOIST, Vincent AUGIERMICOU, Laurence BOQUET et Laurent POSSETY pour leur accueil sympathique et chaleureux.

Enfin, je remercie Christian BRAESCH, mon tuteur de l'IUP GSI.

Table des matières

Remerciements i

Liste des illustrations v

Liste des tableaux vi

Liste des codes sources vii

Introduction 1

I L'existant 2

1 Presentation de la C.C.I 3

1.1 Son Histoire 3

1.2 Son implantation 3

1.3 Sa mission et ses objectifs 4

1.4 Son organisation 5

1.4.1 Les élus 5

1.4.2 Les collaborateurs 6

1.5 Le service TIC 6

1.5.1 Ses missions 6

1.5.2 Ses acteurs 6

2 Sujet et Objectifs 7

2.1 Presentation du contexte 7

2.1.1 Le Système d'Information de la CCI 7

2.1.2 Caracteristiques techniques du Système d'Information 7

2.2 Presentation du projet 8

3 La problematique Système d'Information 9

II Étude de la problematique de migration de base de données 11

4 Les approches possibles 12

4.1 L'approche "systematique" 12

4.2 L'approche "empirique" 13

4.3 Combinaison de l'approche "systematique" et de l'approche "empirique" 15

TABLE DES MATIÈRES

 
 
 

5 Les outils et technologies applicables 16

5.1 Utiisation d'une interlangue 16

5.2 Traduction "manuelle" 18

5.3 Traduction automatique "monotraducteur" 18

5.4 Utiisation d'outils de "reverse-engenering" 19

6 Les méthodes de gestion de projet informatique 20

6.1 Méthode non formelle 20

6.2 XP : eXtreme Programing 20

6.3 RUP : Rational Unified Process 21

6.4 DSDN (RAD) 22

7 Combinaison des approches, des technologies et des méthodes 23

8 Proposition d'une démarche et de "bonnes pratiques" 25

8.1 Déterminer la nature du problème 25

8.2 Vérifier s'il existe des solutions 25

8.3 Effectuer la Migration 26

8.3.1 Si une solution existante a été trouvée 26

8.3.2 Si aucune solution existante ne convient 26

III Application au contexte du stage 27

9 Les choix managériaux et technologiques 28

9.1 La gestion de projet 28

9.2 La démarche suivie 28

9.3 Les technologies utilisées 29

9.3.1 PostgreSQL 29

9.3.2 RedHat Database 30

9.3.3 Perl 30

10 Le travail réalisé 32

10.1 Évaluation de l'état de la base de données existante 32

10.1.1 Découverte du fonctionnement et des spécificités 32

10.1.2 Quelques chiffres 32

10.2 Étude des différentes techniques de migration 33

10.3 Écriture d'un traducteur en Perl 33

10.3.1 L'approche utiisée 33

10.3.2 Fonctionnement de l'application 34

10.4 Estimation du travail restant à effectuer 34

10.4.1 Méthode d'estimation 35

10.4.2 Réalisation des mesures 35

10.4.3 Résultats de l'estimation 36

11 Bilan du stage 38

11.1 Évaluation du travail réalisé 38

11.2 Problèmes rencontrés 38

11.2.1 Les problèmes techniques 38

TABLE DES MATIÈRES

 
 
 

11.2.2 Les problèmes liés à l'organisation 39

11.2.3 Les problèmes liés au manque de connaissance 39

Conclusion 40

Annexes 41

A Les CCI en France 42

B La CCI de la Haute-Savoie 47

C Les Chiffres de la CCI de la Haute-Savoie 49

D Organigramme 51

E La licence BSD (Berkeley Software Distribution) 52

F Limitations de PostgreSQL 53

G Phases pour réaliser l'ensemble de la migration 54

H Options pour l'utilisation de sybase2postgresql 56

I Documentation de sybase2postgresql 58

J Problèmes spécifiques a chaque type d'information a migrer 60

K Mesures pour les indicateurs de complexité des procédures 66

L Installation de modules supplémentaires pour Perl 69

M Enregistrement d'un fichier en UTF-8 sous Emacs 71

N Webographie 72

Bibliographie 74

Glossaire 76

Liste des illustrations

1.1 Nouveau bâtiment de la CCI dans le quartier Galbert 3

1.2 Implantations de la C.C.I. en Haute-Savoie 4

1.3 Organisation globale de la CCI 5

4.1 Utiisation d'une méthode systématique pour la traduction de textes . . 12 4.2 Utiisation d'une méthode empirique pour la traduction de textes . . . . 14

5.1 Méthode de traduction avec une interlangue 16

5.2 Méthode de traduction sans interlangue 17

5.3 Méthode de traduction automatique 18

7.1 Corrélation entre les approches, les technologies, les méthodes et la

taille de l'équipe 23
7.2 Exemple de mauvaise corrélation entre les approches, les technologies,

les méthodes et la taille de l'équipe 24
7.3 Exemple de bonne corrélation entre les approches, les technologies, les

méthodes et la taile de l'équipe 24

A.1 Positionnement des CCI entre privé et public 43

A.2 Une organisation pyramidale mais non hiérarchisée 45

C.1 Répartition des ressources de la CCI (13 328 M€) 49

C.2 Part de l'IATP dans le budget de la CCI 50

C.3 Répartition des ressortissants par secteur d'activité en 2003 50

D.1 Organigramme simplifié de la CCI de la Haute-Savoie 51

K.1 Nombre de lignes par procédure 66

K.2 Nombre d'instructions SQL par procédure 67

K.3 Nombre de structures if ou while par procédure 67

K.4 Nombre de curseurs par procédure 68

K.5 Répartition des procédures par type 68

Liste des tableaux

10.1 Dénombrement du contenu des bases de données 32

10.2 Catégories de procédures 36

10.3 Estimation du temps de développement par catégorie de procédures . 37

C.1 Répartition de la taxe professionelle départementale 49

F.1 Limitations of PostgreSQL 53

Liste des codes sources

H.1 Options de sybase2postgresql affichées grâce à l'option -h 56

H.2 Exemple de fichier de configuration de sybase2postgresql 57

J.1 Création des fonctions suser_id() et suser_id(username) 62

J.2 Création d'une fonction de conversion de type (varchar vers int) 63

J.3 Création d'une fonction de conversion de type (smallint vers bit) 63

L.1 Fichier de configuration du module MCPAN 69

sommaire suivant