Migration base de données
Hors ligneVal74 Le 14/07/2013 à 17:08 Profil de Val74 Configuration de Val74

Bonjour ,

Je suis étudiante documentaliste en bases de données et ressources doucmentaires et dans le cadre de mon stage terminal une de mes missions concernne : "une étude de faisabilité pour faire migrer les données de deux anciennes bases vers la nouvelle".

Je dois imaginer les solutions mais n'étant pas informaticienne et n'ayant reçu que quelques bases la tâche me paraît compliqué : puis-je soliciter votre aide?

 

Voilà les informations dont je dispose :

- la première base a été créée sous dip maker pro en 1999. ( référencement d'objets de musées ) je possède le schéma du formulaires d'ajout d'un nouvel objet dans la base (champs à saisir) mais pas pr l'instant le modele conceptuel de la base

- la seconde base a été crée sous file maker pro : ( référencement de variétés anciennes de pommes et de poires) je possède le model conceptuel de la base (base de données relationnelle) et le formulaire avec les champs à saisir pour ajouter une nouvelle variété

-> les manuels d'utilisateurs de ces deux bases me disent qu'il est possible d'exporter les données. La lecture d'autres travaux de stagiaires rajoute que le format d'export le plus simple serait sous un fichier word  avec des séparations tabulées (ou encore sous excel)

- La base de données sur laquelle doivent migrer ces données comprend en réalité trois bases de données distinctes. Elle est crée en open source et non ps comme les précédente à aprtir d'un logiciel propriétaire. Ce choix avait été fait pour permettre une évolution.  Je possède le modèle conceptuel de chacune des trois bases (base document, base fiche patrimoine, base fiche toponymique) et les formulaires de saisie à renseigner pour créer des ajouts. 

 

Au jour d'aujourd'hui voilà les idées que j'ai eu :

- intégrer la base objets de musées à la base documents (les formulaires de saisie présentent beaucoup de champs communs)

- créeer une quatrième base pour les variétés de pommes et de poires (qui ne me paraît pouvoir être insérée dans aucune autre car trop spécifique)

-> Pouvez-vous me dire si je suis dans la bonne direction? Si d'autres alternatives existent? Comment est-il possible d'effectuer cela concrêtement? (passer d el'idée à la mise en oeuvre et tout ce que cela implique en terme d elogiciels , programmes etc...)

 

Merci d'avance,
Val

 

 

 

 

Hors ligneKoytlo2 Le 16/07/2013 à 14:58 Profil de Koytlo2 Configuration de Koytlo2

Fidèle à VIC. Ancien

salut

infos :

https://www.google.fr/search?q=dip+maker+pro&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a#client=firefox-a&hs=2fl&rls=org.mozilla:fr%3Aofficial&sclient=psy-ab&q=migration+dip+maker+pro&oq=migration+dip+maker+pro&gs_l=serp.12...13089.14896.0.19485.10.10.0.0.0.6.206.1612.0j9j1.10.0....0...1c.1.19.psy-ab.YjaxnXaaGkQ&pbx=1&bav=on.2,or.r_qf.&bvm=bv.48705608,d.ZG4&fp=b2e36906c1091d36&biw=1245&bih=840

 

► vers quel logs dois-tu le faire migrer car çà peut tout changer ?

► je suppose que que les deux logs sont en fait deux problèmes séparés qui n'ont aucun lien entre eux.

► dis moi la taille des données à transférer car il y a aussi l'option de tout retaper . c'est long mais il ne faut pas oublier que l'on parle de base de données et que le temps passé dépend de l'importance (pour une personne physique ou morale et non pas de la taille !) de cette base.

► il faut connaitre l'extension de la sauvegarde de base de données des logs A transférés et des outils en aval (sachant que pour ces dernier il y a peut etre  plusieurs possibilité) car :

- il y a la possibilité si l'extension de la base de données de l'utiliser tout simplement avec un autre logiciel sans transfert à proprement parlé

- il y a aussi de trouver des logs spécifiques pour convertir une extension en une autre ou carrément pour faire le transfert de manière logicielle d'un log à un autre.

 

► il y a certainement d'autres solutions mais si je comprends bien c'est le but de ton projet alors je te laisse faire.

► pour l'instant donne moi les renseignements que je t'ai demandé. Si tu veux m'en donner d'autres ne te prive pas.

salut

Hors ligneVal74 Le 21/07/2013 à 13:08 Profil de Val74 Configuration de Val74

Bonjour,

Merci pour ces informations. Voilà le informations que j'ai pu récolter depus la semaine dernière :

- Système d'exploitation Linux ; serveur web Apache version 2,2,9 ; langage d eprogrammation PHP 5,2,6-1 + lenny 9 ; système de gestion de base de données My SQL version 5,0

+ autres infos récoltées (je ne sais pas si elles sont importantes pour mon pb) :

modules nécessaires pr bon fonctionnement intranet : module rewrite (pr apache) et extensions CURL, GD, PDO, PDO_MYSQL , FTP (pr PHP)

tecnologies employées ds intranet : XHTML CSS2 Framework javascript (Jquery 1,4,2, plugins jquery.ui 1,8,2, thickbox, Jcrop 0,9,8, jqzoom 1,01, yoxview) et pour php : template power pr moteur de template, adodb pr abstaction avec base de données, fileuploadpr transfert de fichiers

 

- Les deux BDD devant migrer n'ont effectivement rien à voir entre elles : l'une recense des variétés de fuits qu'elles mets en lien avec des séries de données sur l'arbre et les fleurs de l'arbre correpondant et l'autre recense des objets de musées en fournissant toute une série d'info sur ces objets (données descriptives, juridiques, techniques)

pour fruits anciens : base créé avec file maker pro 8,5 advanced (windows xp)+ base de donnée relationelle avec 5 tables (données générales, arbre, fleur, fruit, photo + 1 autre table applée bioiversité pr faire les liaisons entre tables elle a des liens de type 1 à 1 vers chacune sauf vers table photo 1 à plusieurs (1 fuit pe être en lien avec plusieurs photos) + format d'export  tab, csv, slk, dbf, dif, wk1, bas, mer, html+ extension sauvegarde de la base fp7

 

pour objets de musées : base crée à partir de dip maker (windows 3,0) + pas d'infos sur la structure de la bdd (je n'ai pas encore pu accéder à la base et peu de doc écrite à son sujet laissée)+ les seules infos dt je dispose : liste des champs à renseigné sur une fiche inventaire objet + capture écran fiche de saisie 'un nouvel objet + info disant pr chaque chp s'il s'agit de données texte ou num et liste ouvertes ou fermées

 

- taille des infos à transférer 

je n'ai l'info qu'en nombre de notices à saisir pr l'instant et c assez important : 10 000 environ par base.

 

Voilà pr les renseignements que tu me demandais (ça m'aide à y voir plus claire de chercher tout ça), je te réécris un deuxième post par rapport aux solutions que tu me proposes et là où j'en suis de ma réflexion ( regard de néophyte)

Hors ligneKoytlo2 Le 21/07/2013 à 14:00 Profil de Koytlo2 Configuration de Koytlo2

Fidèle à VIC. Ancien

salut  laugh

je n'ai pas d'autres réponses car je ne m'y connais pas et je croyais la chose plus simple. De plus (à part que j'ai mal lu), tu ne me précises pas vers quel log tu veux les faire migrer. Car au dela de tous les aspects techniques que tu donnes je suppose qu'un log permettant la migration prendrait auto en compte ces différents aspects. Mais en attendant ce qui manque c'est de savoir vers quoi tu veux le faire migrer . En effet tu pourras faire une recherche sur google type : "migration base de données de Apache vers X" ou "transfert de données d'Apache vers X".

salut

Hors ligneVal74 Le 21/07/2013 à 16:45 Profil de Val74 Configuration de Val74

Re bonjour,

par log tu veux dire logiciel?

Du coup je pensais que la réponse à ta question c'était faire migrer de :

dip maker vers apache

file maker vers apache

le pb c qu'en interrogant ma collègue il ne semble pas y avoir de fonctionnalité prévu dans leur logiciel libre "fait maison" (à partir de la liste d'outils que j'ai listé : mysql, apache...)) pour importer nous même des données.

 

Si ce n'est pas l'information que tu souhaitais, peux tu me préciser ce que tu voulais pour que je puisse voir si je peux trouver ça (je ne suis pas sûr d'avoir compris non plus la question  :-) )

 

Merci d'avance,

Val 

 

 

Hors ligneKoytlo2 Le 23/07/2013 à 23:37 Profil de Koytlo2 Configuration de Koytlo2

Fidèle à VIC. Ancien

salut  wink

par log tu veux dire logiciel?

oui

dip maker vers apache

file maker vers apache

tu viens de me répondre

----------------------------------------

est-ce que çà un rapport avec toi ?

http://www.siteduzero.com/forum/sujet/migration-base-de-donnees-dip-maker-vers-mysql

------------------------

je n'ai pas plus de réponses aujourd'hui

mais il y a aussi la possibilité de faire un petit prog maison pour parvenir à tes fins ou tout du moins aider à la migration

--------------------

question : quelles sont les extensions de tes bases de données. Car en fait c'est plutot comme çà qu'il faut aborder la migration. par ex si tu dois passer de sql vers db il faut que tu cherches sur googles des explications ou des logs qui te permettront de faire se travail. tu tapes dans le moteur de recherche par ex : sql to db. Tu verras ainsi toutes les réponses possibles.

lien regroupant toutes les extensions de base de données : http://files.avanquest.com/file-extension-database/fr/

 

salut

 

Hors ligneTenebriox Le 24/07/2013 à 10:44 Profil de Tenebriox Configuration de Tenebriox

 Salut ! J'ai lu un peu en diagonale mais je crois que ce que tu veux faire est plutôt facile.
     * 1/ Il te faut choisir un sytème de gestion de base de données (sgbd). Tu veux quelque chose de standardisé, gratuit et performant j'imagine, alors prends postgresql ! Pour info, MySql est une daube maintenant et apache est un serveur web et non un sgbd !
     * 2/ Tu reconstruis les bases de données existantes sur postgresql
     * 3/ Tu exportes les données depuis tes logiciels propriétaires et tu les réeimportes dans postgresql

--
"Une société égalitaire, c'est le contraire d'une société de liberté et de responsabilité." N. Sarkozy
Hors ligneVal74 Le 28/07/2013 à 13:16 Profil de Val74 Configuration de Val74

Salut à tous,

 

Merci Koytlo2 , merci Tenebroix,

c'est vraiment appréciable et chouette de pouvoir trouver de l'aide!!! De mon côté j'ai l'impression que l'informatique me paraît un peu moins obscur et ça fait plaisir :-)

Kotlyo2 :

- oui j'ai posté en parallèle sur le site du zéro pour "multiplier les regards" (j'essaie de saisir toutes les opportunités pour avoir bcp de matière afin de synthétiser tout cela, et de mener ma réflexion en parallèle   

- concernant ta dernière piste de programme maison : veux tu parler d'une moulinette?

Si oui, j'ai explorer cette piste cette semaine avec un ingénieur commercial de chez DIP système , voilà ce qu'il me propose : 

"mettre en place une macro d'export au format csv avec des fichiers joints. Le fichier résultant de l 'export présentera les enregistrement sur une ligne pour chacune des notices bibliographiques à exporter avec les caractères de remplacement (ces derniers seront retraités au moment du ré-import dans le nouveau logiciel"

Ce type d'outil est-il compliqué à faire mettre en oeuvre par un étudiant en infromatique par exemple? (pour la gratuité...)

- merci pour ton dernier lien et pour répondre à ta question je ne connais que l'extension des fichiers créés sur filemaker : fp7 (pour dip je n'ai pas pu accéder pr l'instant)

 

Tenebriox :

-Si je reformules (pour être sûr que j'ai bien compris ta proposition) :

Reconstruire la structure de chacune de deux bases à l'aide du logiciel gratuit postgresql (plus intéressant que my sql)

Exporter les données de ces deux bases vers les nouvelles bases (qui sreont donc reconstruite à l'identique sur  postgresql : cela évitera donc de se poser des problèmes de correspondance entre les champs et eprmettra de reprendre tous les champs pré-existants).

- Les questions (ou remarques pour ma réflexion)  qui me viennent suite à cette solution

1) La solution que tu proposes est donc possible (en théorie)  en gardant my sql (même si ce n'est pas ce que tu préconises). Par là je veux dire : le raisonnnement serait le même?

2-) En imaginant ne pas garder my sql et prendre postgresql :

cela permet-il quand même d'accéder à ces deux bases via la même interface utilisateurs (sur le web) que pour les autres bases qui , elles, sont crées avec my sql

je m'explique : nos bases actuelles sont dans l'arboresence de notre intranet. Il ya trois bases distinctes. Elles ont été crées avec mysql. Le tout est mis en ligne sur internet via l'interface mémoire alpine.com et le visiteur peut interroger ces bases depuis chez lui en choisissant l'onglet correpondant à la base souhaité. Cela lui donne accès à des formulaires de requêtes différents selon la base (et donc la nature des informations qui y sont stockées)

-> donc j'imagine qu'il est possible de rajouter deux nouveaux onglets sur cette page web pour dire à l'ordinateur d'aller interroger les bases qui seraient crées à partir de postgresql?

-> n'est-il pas plus logique d'agrandir l'arborescence de l'intranet en rajoutant deux bases au côté des autres? (ou bien cela n'a -t-til aucune importance?)

3) Lorsqu'on veut importer des données (une fois les questions de formats réglés), faut-il télécharger un logiciel d'import? (ou cela est-il déjà prévu dans les fonctionnalités proposées par my sql ou postgresql?)

4) J'ai souvent lu des choses sur ODBC : est ce justement ce type de logiciel qui permet de faire le lien entre les données exportées et le logiciel où l'on veut les importer?

A tous les deux et aux autres :

- est-il possible d'accéder à la structure des bases de données (lorsqu'elle est inconnue) via le logiciel propriétaire (DIP Maker version3,1 dans mon cas). cela est-il à voir ay cas par cas selon les prestataires?

- de même est-il possible de retrouver le code sans passer par le prestataire?

- le travail à faire pour fair emigrer les deux bases vous paraît plus réaliste en passant par un professionnel (au vu des infos que je possède et de l'avancée de la réflexion) ou alors quelqu'un de suffisamment "calé" pourrait-il le réaliser à moindre coût sans trop de difficultés? 

- dernère question : ai je négligé des aspects de la réflexion qui ne permettent pas encore de répondre à la précédente???

 

Merci d'avance :-)

Val74

 

 

 

 

Hors ligneTenebriox Le 29/07/2013 à 15:15 Profil de Tenebriox Configuration de Tenebriox

1) La solution que tu proposes est donc possible (en théorie)  en gardant my sql (même si ce n'est pas ce que tu préconises). Par là je veux dire : le raisonnnement serait le même?

--> Oui tout à fait, c'est juste niveau performances que MySql est dépassé par PostGre maintenant.

cela permet-il quand même d'accéder à ces deux bases via la même interface utilisateurs (sur le web) que pour les autres bases qui , elles, sont crées avec my sql
--> Non, pour gérer les bases mysql, tu vas utiliser une interface web qui s'appelle phpmyadmin. Pour PostgreSql, c'est phppgadmin.
Bref deux interfaces web différentes ^^

donc j'imagine qu'il est possible de rajouter deux nouveaux onglets sur cette page web pour dire à l'ordinateur d'aller interroger les bases qui seraient crées à partir de postgresql?
--> Ouais sans problème

 -> n'est-il pas plus logique d'agrandir l'arborescence de l'intranet en rajoutant deux bases au côté des autres? (ou bien cela n'a -t-til aucune importance?)
Je suis pas sur de comprendre la question ! Mais si j'interprète bien, il est effectivement logique d'avoir toutes tes bases sur Postgre OU sur Mysql. Je pensais que tu étais libre de choisir ton sgbd mais si tu as une base existante sur mysql reste dessus et oublie postgre !
Ca a de l'importance (un peu) pour celui qui va coder les requêtes car il peut y'avoir des petites différences dans les syntaxes entre postgre et mysql.

Petite remarque par contre sur le nombre de database que vous avez ! Généralement, une application complète = UNE database !
Là avec vos 3 database, ça doit être un peu galère pour sauvegarder/restaurer, pour faire des requêtes car il faut à chaque fois savoir sur quelle databse aller...
Bref, moi j'aurais vu une seule database avec toutes les tables dedans, éventuellement avec des préfixes pour distinguer facilement les 3 catégories.
C'est probablement plus cohérent mais bon ce qui est fait est fait donc continue dans cette lignée ^^*

 3) Lorsqu'on veut importer des données (une fois les questions de formats réglés), faut-il télécharger un logiciel d'import? (ou cela est-il déjà prévu dans les fonctionnalités proposées par my sql ou postgresql?)
-->Tout est prévu de base ! Ce que tu veux faire là s'appelle du "bulk import". Tu peux faire ça à partir de fichiers csv. Tu trouveras plein de documentation pour faire ça

 4) J'ai souvent lu des choses sur ODBC : est ce justement ce type de logiciel qui permet de faire le lien entre les données exportées et le logiciel où l'on veut les importer?
-->Non je ne crois pas !
D'abord tu crées tes bases de données dont tu as besoin (mysql + postgresql par exemple).
Ensuite tu les ajoutes dans tes connexions Odbc.
Enfin, quand tu crées un programme, tu peux appeler ta database par ta connexion odbc (au lieu de la database directement).
L'utilité ?! Ben c'est de plus te casser la tête à savoir ce qu'il y'a comme sgbd derrière (mysql / postgre) puisque l'appel à ta base de données se fait toujours de la même manière.

 - est-il possible d'accéder à la structure des bases de données (lorsqu'elle est inconnue) via le logiciel propriétaire (DIP Maker version3,1 dans mon cas). cela est-il à voir ay cas par cas selon les prestataires?
--> Je connais pas ce logiciel désolé ! Par contre j'imagine qu'on peut modifier la structure d'une bdd existante sinon il n'aurait pas grand intérêt !
T'as essayé de faire Fichier/Ouvrir ? :p

 - de même est-il possible de retrouver le code sans passer par le prestataire?
--> Le code pour recréer la base de données ? J'imagine que oui mais idem que la question d'avant je connais pas ce logiciel ^^

 - le travail à faire pour fair emigrer les deux bases vous paraît plus réaliste en passant par un professionnel (au vu des infos que je possède et de l'avancée de la réflexion) ou alors quelqu'un de suffisamment "calé" pourrait-il le réaliser à moindre coût sans trop de difficultés?
--> Un stagiaire en fin de bts ou dut info pourrait faire ça sans souci mais la période pour les recruter est un peu passée pour cette année j'imagine !

 - dernère question : ai je négligé des aspects de la réflexion qui ne permettent pas encore de répondre à la précédente???
Oui tous lol ! Budget ? Délai ? Moyens internes ? Risques ?

--
"Une société égalitaire, c'est le contraire d'une société de liberté et de responsabilité." N. Sarkozy
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels