Existe-t-il un moyen de développer des solutions Bi (Business Intelligence) avec Django? Par conséquent, il devrait être possible de définir des modèles avec plus d'une source de données. Est-ce que quelqu'un a déjà expérimenté BI avec Django? Comment cela a-t-il pu fonctionner?BI avec Django?
Répondre
Je ne suis pas sûr de votre définition de BI ou de la raison pour laquelle vous supposez qu'une solution de BI requiert plus d'une source de données. Dans mon expérience, BI signifie l'analyse statistique des données. Un schéma de rapport, utilisant des techniques dimensionnelles, peut en être la base. Les données sont généralement ETL provenant de diverses sources transactionnelles dans le schéma dimensionnel unique, qui devient alors la source de toutes les analyses.
Si ce que je dis est correct, alors vous n'avez pas besoin de plusieurs sources de données. Peut-être une autre façon de penser à la question est: est-ce que les techniques ORM intégrées à Django se prêtent à la modélisation d'un schéma en étoile dimensionnel utilisant des objets?
C'est faisable, je l'ai fait pour mon travail. Je ne peux pas encore l'ouvrir, j'ai été capable de sortir l'application de réplication hétérogène jusqu'ici, mais je n'ai pas abandonné.
J'utilise Django ORM pour les données du projet, copié et collé la fonction "load_backend()" de Django pour pouvoir se connecter à plus d'un DB. La base de données utilisée comme source (DB d'entreprise dans ORACLE) pour les tables & est interrogée en SQL brut (l'ORM de Django ne ferait que gêner, beaucoup de jointures complexes &).
Les graphiques sont faits avec 'jqPlot', les tables sont faites en utilisant 'jqGrid'. Le compte utilisateur et l'authentification sont effectués à l'aide de 'ldap-groups' avec des correctifs simples et liés à l'arborescence Active Directory.
L'application de réplication est ici Django-Replication et peut vous donner un exemple de connexion à plusieurs DB de Django. Il comporte également des requêtes limitées dans le temps (expirables via un timeout) et des requêtes simultanées via les bibliothèques de threads multiprocesseurs & de python.
--essayé de poster des images de l'application, mais les nouveaux utilisateurs ne sont pas autorisés à--
Vous avez raison, merci – Helmut