Nous construisons une nouvelle application en .net 3.5 avec la base de données du serveur SQL. La base de données est assez grande avec environ 60 tables avec des charges sur les données. L'application .net dispose de fonctionnalités permettant d'importer des données dans cette base de données à partir de la saisie de données et de systèmes tiers. Une fois toutes les données disponibles dans la base de données, le système doit faire beaucoup de calculs. La logique de calcul est assez complexe. Toutes les données requises pour les calculs sont dans la base de données et la sortie doit également être stockée dans la base de données. La collecte de données aura lieu chaque semaine et le calcul doit être effectué chaque semaine pour générer les rapports requis.Traitement complexe dans les procédures stockées Application Vs .net
En raison du scénario ci-dessus, je pensais faire tous ces calculs en utilisant la procédure stockée. Le problème est que nous avons également besoin d'indépendance des données et que la procédure stockée ne sera pas en mesure de nous fournir cela. Mais si je fais tout cela dans .net par base de données de requêtes tout le temps, je ne pense pas qu'il sera en mesure de terminer le travail rapidement. Par exemple, j'ai besoin d'interroger une table qui me renverra 2000 lignes puis pour chaque ligne j'ai besoin d'interroger une autre table qui me renverra 300 résultats que pour chaque ligne de ceci j'ai besoin d'interroger plusieurs tables (environ 10) pour obtenir les données requises, faites le calcul et stockez la sortie dans une autre table.
Maintenant ma question devrais-je aller de l'avant avec la solution de procédure stockée et oublier l'indépendance de la base de données puisque la performance est importante. Je pense également que le temps de développement sera beaucoup moins si nous utilisons la solution de procédure stockée. Si un client souhaite cette solution sur une base de données Oracle (car il ne souhaite pas conserver une autre base de données), nous portons les procédures stockées dans la base de données Oracle et conservons deux versions pour les modifications/améliorations futures. De même, d'autres clients peuvent demander d'autres bases de données.
Les 2000 lignes que j'ai mentionnées ci-dessus sont des produits de skus. Les 300 lignes que j'ai mentionnées sont des attributs différents que nous voulons calculer, par ex. Les 10 tables que j'ai mentionnées contiennent des informations sur la conversion des devises, la conversion des unités, le réseau, la zone, la société, le prix de vente, le nombre de pièces vendues par jour, etc. objectif d'analyse et de rapport. L'objectif est d'obtenir des informations minutieuses sur le produit afin que l'on sache quel attribut d'une vente de produit nous coûte de l'argent et où nous pouvons faire l'amélioration.
Je ne cherche pas de mise en œuvre actuellement, l'information que j'ai donnée est juste pour donner une idée de la tâche que je veux accomplir. Je garderai votre suggestion à l'esprit lorsque nous commencerons la mise en œuvre. Actuellement, je veux savoir si je vais avec des procédures stockées ou extraire des informations dans l'application. –