Bonjour,
Si vous voulez bien m'aider, il faudra prévoir un peu plus que quelques secondes !
Voici ma problématique :
J'ai une base de données MySQL (base 1) utilisée par un système de gestion de communications téléphoniques.
Je dois concevoir une application d'administration qui permettra de gérer toutes les fonctionnalités de ce système via une interface web, sans avoir à toucher à cette base de données.
Cette base est très bas niveau, et pour avoir une conception plus orientée client, on va créer une nouvelle base de données (base 2), en MSSQL cette fois-ci, qui sera une abstraction de la base 1 et ajoutera des informations client.
On veut que l'appli web d'administration dialogue uniquement avec cette nouvelle base. Il faut donc un sous-système qui répercute automatiquement les changements de la base 2 à la base 1, sachant que :
- la synchronisation est unilatérale : on considère que la base 1 ne change pas d'elle-même; et si elle le fait, elle ne doit pas en informer la base 2.
- les répercutions sont non triviales : un ajout de tuple dans la base 2 se traduira souvent par des requetes complexes dans plusieurs tables de la base 1.
- Cette synchronisation doit être automatique.
J'ai plusieurs idées :
- un compilateur qui recoit des messages de l'appli web à chaque changement de la base 2, les analyse et effectue les opérations adéquates sur la base 1. Beaucoup de boulot en perspective: le compilo, le protocole pour les messages.
- un simple parseur pourrait suffire ? (expressions regulères...)
- des triggers sur la base 2 ? Ca me semble très lourd de tout coder via des triggers, et ca n'offre peut-etre pas toute la puissance nécessaire (commits, logs...)
Votre avis m'intéresse bigrement !
Partager