Forum Programmation.php Migration de wiki

Posté par (page perso) .
Tags : aucun
0
1
jan.
2009
Bonjour,

j'ai un site web depuis pas mal d'années.
J'utilise le wiki Wikini http://www.wikini.net
J'envisage de passer à un autre wiki (même syntaxe) : WikkaWiki http://wikkawiki.org
J'ai un nombre très important de pages donc je souhaite automatiser un peu la migration.
Les tables sont sensiblement les mêmes mais sur certaines tables il n'y a pas un champ donné (et vice verça)
Comment procéderiez-vous pour effectuer cette migration ?
Installer le deuxième wiki à côté et faire un script PHP qui se connecte à la base et qui récupère les données du premier et fait des INSERT INTO sur le second.
J'ai également entendu parler ETL (Talend...)
Est-ce adapté à mon besoin ?
J'ai aussi entendu par d'ORM (Doctrine...)
mais je n'ai pas pratiqué
Idéalement j'aimerais définir un schéma de mes tables du wiki initial
définir un schéma des tables du wiki final.
indiquer d'où proviennent les informations (créer éventuellement des fonctions de conversion s'il y a besoin de reformater les données)
et que ça se "dépatouille" tout seul (oui je sais que Noël est passé !)

Quelle stratégie adopteriez-vous ?

Merci d'avance
  • # Un script python ?

    Posté par . Évalué à 2.

    Moi, personellement, je me garderai bien de faire une conversion en ligne.

    Quelque chose de simple, serait de répliquer les tables de la base de donnée sur une machine locale, faire la conversion (par exemple avec un script Python, il y a tout ce qu'il faut pour ne pas se prendre la tête), puis répliquer les nouvelles tables sur le serveur, avec le nouveau code PHP.

    Simple, rapide et efficace.
  • # Talend peut être une bonne idée

    Posté par (page perso) . Évalué à 2.

    De ce que tu décris que tu veux faire, oui un ETL comme Talend est adapté.

    Par contre, si tu connais déjà bien un langage de programmation, c'est bien possible que cela te prenne moins de temps de faire un bout de code PHP plutôt qu'un job Talend, par contre, ça te permettra d'apprendre l'utilisation d'ETL, ce qui sera un gain de temps pour d'autres migrations ou synchronisations.

    J'ai déjà fait des jobs de synchronisation avec Talend, notamment d'un ERP proprio vers une boutique OSCommerce, est c'est vrai que ça permet de faire de chouettes trucs comme des jointures entre DB incompatibles (dans ce cas précis, c'était Ms SQL et My SQL).

    Après, ce n'est pas un logiciel magique, il y a des cas simples où ça ira plus vite de faire un script qu'un job.

    Sinon, l'ORM n'est pas vraiment adapté à ton besoin à ma connaissance, ça sert surtout à faire abstraction du type de DB.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.