RE: [pgsql-fr-generale] Estimation du coût d'une migration MYSQL vers PostgreSQL

From: ROS Didier <didier(dot)ros(at)edf(dot)fr>
To: "pgsql-fr-generale-owner(at)postgresql(dot)org" <pgsql-fr-generale-owner(at)postgresql(dot)org>
Cc: "pgsql-fr-generale(at)postgresql(dot)org" <pgsql-fr-generale(at)postgresql(dot)org>
Subject: RE: [pgsql-fr-generale] Estimation du coût d'une migration MYSQL vers PostgreSQL
Date: 2016-05-23 13:44:09
Message-ID: 95e0b7fbb38f4e108e2b0a064b60ccd8@PCYINTPEXMU001.NEOPROD.EDF.FR
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Bonjour Dimitri

Merci pour ta réponse
>
>Je ne comprends pas bien comment pgloader pourrait estimer la complexité d'une migration MySQL vers PostgreSQL : dans quelle unité exprime-t'on la complexite d'une migration ?
>
A EDF, nous devons migrer plusieurs centaines de bases de données MYSQL vers PostgreSQL. Une des approches possibles est de déterminer celles qui sont le plus facile à migrer .
Voici une proposition de critères qui permettrait de classifier la complexité de la migration:
- moteur CSV, InnoDB ou MyISAM (avec InnoDB c'est plus simple car possibilité d'utiliser des Foreign Keys)
- Jeux de caractères utilisés (un ou plusieurs) par colonne avec ou sans conversion de caractères
- types d'objets et leur nombre (tables, index, procédures, triggers, event...)
- colonnes de type binaires
- tables partitionnées
- contraintes
- code stocké en base (fonctions et procédures)
- réplication ou non
- type de réplication
- la volumétrie
- type et qualité des données

En fonction des résultats obtenus, on pourrait classifier les migrations :
TYPE A :
Migration simple: Estimation entre 10 et 20 J/H

TYPE B :
Migration complexe : Estimation entre 20 et 60 J/H

Ce type d'information est très important pour les application qui prévoient de migrer vers PostgreSQL.

> Ensuite, il faudrait fournir, j'imagine, une estimation dans la bonne unité par ligne de code de trigger et une autre par éléments de logique SQL contenus dans les vues (jointures, groupements, etc)
> comme éléments de base du calcul ?
>
Non, sans aller jusque dans ces détail.
Souvent dans les grandes entreprises , une migration MYSQL vers PostgreSQL se gère en mode projet et il est souvent nécessaire d'estimer le coût de la migration avant le "GO".

Cordialement
Didier ROS

-----Message d'origine-----
De : pgsql-fr-generale-owner(at)postgresql(dot)org [mailto:pgsql-fr-generale-owner(at)postgresql(dot)org]
Envoyé : lundi 23 mai 2016 14:41
À : ROS Didier
Cc : pgsql-fr-generale(at)postgresql(dot)org
Objet : Re: [pgsql-fr-generale] Estimation du coût d'une migration MYSQL vers PostgreSQL

Bonjour,

ROS Didier <didier(dot)ros(at)edf(dot)fr> writes:
> Je souhaiterais savoir si les outils pgloader et
> ora2pg sont capables d'estimer la complexité d'une migration MYSQL vers PostgreSQL ?

pgloader fait directement la migration complète du schéma et des données, et aujourd'hui ne permet pas de migrer les vues et procédures stockées, ce qui pourrait être envisagé.

L'esprit de pgloader est de réaliser tout ce qui est automatisable directement sans intervention humaine, afin de pouvoir mettre en place des tests de migration complètement automatisés.

Une fois le schema et les données migrées, il reste à s'occuper du code applicatif et de la bascule de service. Ces aspects ne sont pas pris en charge par pgloader.

Je ne comprends pas bien comment pgloader pourrait estimer la complexité d'une migration MySQL vers PostgreSQL : dans quelle unité exprime-t'on la complexite d'une migration ?

Ensuite, il faudrait fournir, j'imagine, une estimation dans la bonne unité par ligne de code de trigger et une autre par éléments de logique SQL contenus dans les vues (jointures, groupements, etc) comme éléments de base du calcul ?

J'aimerais autant intégrer la capacité de prendre tout cela en charge directement dans pgloader lui-même.
--
Dimitri Fontaine
http://2ndQuadrant.fr PostgreSQL : Expertise, Formation et Support

--
Envoi via la liste pgsql-fr-generale (pgsql-fr-generale(at)postgresql(dot)org)

Ce message et toutes les pièces jointes (ci-après le 'Message') sont établis à l'intention exclusive des destinataires et les informations qui y figurent sont strictement confidentielles. Toute utilisation de ce Message non conforme à sa destination, toute diffusion ou toute publication totale ou partielle, est interdite sauf autorisation expresse.

Si vous n'êtes pas le destinataire de ce Message, il vous est interdit de le copier, de le faire suivre, de le divulguer ou d'en utiliser tout ou partie. Si vous avez reçu ce Message par erreur, merci de le supprimer de votre système, ainsi que toutes ses copies, et de n'en garder aucune trace sur quelque support que ce soit. Nous vous remercions également d'en avertir immédiatement l'expéditeur par retour du message.

Il est impossible de garantir que les communications par messagerie électronique arrivent en temps utile, sont sécurisées ou dénuées de toute erreur ou virus.
____________________________________________________

This message and any attachments (the 'Message') are intended solely for the addressees. The information contained in this Message is confidential. Any use of information contained in this Message not in accord with its purpose, any dissemination or disclosure, either whole or partial, is prohibited except formal approval.

If you are not the addressee, you may not copy, forward, disclose or use any part of it. If you have received this message in error, please delete it and all copies from your system and notify the sender immediately by return message.

E-mail communication cannot be guaranteed to be timely secure, error or virus-free.

--
Envoi via la liste pgsql-fr-generale (pgsql-fr-generale(at)postgresql(dot)org)

In response to

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Damien Clochard 2016-05-23 14:27:08 Re: [pgsql-fr-generale] Estimation du coût d'une migration MYSQL vers PostgreSQL
Previous Message Dimitri Fontaine 2016-05-23 12:40:52 Re: Estimation du coût d'une migration MYSQL vers PostgreSQL