Je suis en train d'implémenter une application Rails qui doit regrouper les résultats de recherche à partir de N bases de données hétérogènes indépendantes. Un cas d'utilisation exemple serait:Application Extensible Rails qui se connecte à plusieurs bases de données
- requêtes de l'utilisateur « XPTO »
- La requête est soumise à toutes les bases de données enregistrées sur le système
- Les résultats sont transformés et combinés dans un format prédéfini
- utilisateur obtient les résultats
L'application doit fournir un point d'extensibilité pour l'introduction de nouvelles bases de données dans le système. Une base de données peut être de différents types: un fichier plat, une base de données SQL, une interface REST vers une base de données SQL, etc.
Si je travaillais en C#/Java, en ignorant les problèmes de vitesse, je définirais une gestion de plug-in système où chaque hôte aurait un plug-in qui saura comment interroger et transformer les résultats de l'hôte. De nouveaux hôtes seraient facilement introduits en définissant un nouveau plug-in et en configurant l'hôte dans le système. Je suis nouveau venu aux rails et je cherche des idées, des outils ou des modèles de conception qui peuvent m'aider à résoudre ce problème.
mieux en faire un wiki communautaire – clyfe