Censio

SAP Business Information Consulting


blog
Blog Resultats recherche article BI Archives

Comment accélérer vos requêtes sur BW (toutes versions) ?

Mercredi 18 avril 2007

De nombreuses possibilités sont offertes pour améliorer les performances d’une solution BW (Datawarehouse et requêtes). De l’optimisation à l’utilisation des fonctionnalités, le panel de possibilités est assez large.

Intéressons nous aux requêtes BW avant d’acheter des solutions de type BI Accelerator !

Vos requêtes sont longues à exécuter et vous ne savez pas comment et quoi faire pour diminuer les temps d’exécution.

1) Une requête web va plus vite qu’une requête Excel

En effet, une partie du calcul de l’affichage se fait sur Excel alors qu’en mode Web, le serveur prend la totalité des calculs.

2) Plus il y a d’éléments à afficher et plus c’est long !

C’est normal, entre une requête agrégée et une requête de type liste et détails, BW va mettre plus de temps. En cause : la lecture des différentes tables du schéma en étoile et le temps d’affichage des données. Pour expliquer le fonctionnement, lorsque vous exécutez une requête, BW va créer un fichier texte de l’ordre de quelques kilo octets lisibles l’outil de requêtage. Le temps sera bien plus long lorsqu’une liste de détails sera demandée. D’où la sempiternelle réflexion qui est : BW n’est pas optimisé pour faire de l’affichage de liste.

3) Le cache

Avez-vous déjà remarqué qu’une requête va plus vite à s’exécuter lorsque cela a déjà été fait une fois ? BW gère une mémoire cache en conservant les résultats de la dernière exécution lorsque bien sûr les informations n’ont pas été modifiées par un nouveau chargement. En version 2004s, il y a même la possibilité de gérer des caches delta. Pour obtenir les options, transaction RSRT, puis propriétés. Suivant la configuration de la taille de la mémoire cache, il y a plusieurs options :

- pas de cache Pour versions 3.x, si vous effectuez des chargements fréquents (ex 1 fois par heure), il vaut mieux désactiver le cache. - cache sans swap Lorsque le cache est plein, certaines informations sont retirées du cache par un algorithme particulier. Pour accéder aux informations supprimées, BW doit réalimenter le cache. - cache avec swap Lorsque le cache est plein, certaines informations sont sauvegardées dans un fichier et peuvent être rappelées ultérieurement.

- cache persistent Les informations de requêtes sont stockées dans une base de données ou un fichier.

- cross application cache persistent Les informations sont stockées sur un fichier dans le réseau informatique.

Ces 2 dernières options sont à considérer lorsque vous utilisez notamment plusieurs serveurs d’applications.

Bien sûr, il est possible d’industrialiser le lancement des requêtes pour que les utilisateurs aient accès directement aux données disponibles dans le cache soit via par le pré calcul de requêtes, soit par le broadcast.

4) Les modes de lecture

Dans la même lignée, on peut aussi modifier le volume de lecture des informations. Toujours dans la même transaction, il est possible de :

- Lire la totalité des informations relatives à une requête - Recalculer les informations à la navigation - Recalculer les informations au changement d’un nœud de hiérarchie

5) L’ordre des modes de lecture

Evidemment BW ne va pas utiliser toutes ces options à la fois. Il existe un ordre prédéfini d’ « essai » d’utilisation des options :

- Lecture du cache - BI Accelerator - Recalcul de la requête depuis un agrégat - Recalcul de la requête

Le constat est que dans un cadre BI 2004S, BI Accelerator n’est pas systématiquement la meilleure solution au niveau de l’optimisation et des coûts !

Une bonne optimisation du cache peut déjà permettre de faire des gains substantiels en temps de calcul des requêtes.

6) Création de requêtes sur un multiprovider

Lorsque vous faites une requête sur un multi-cube, BW va tenter de lire parallèlement les différentes sources.

Evidemment pour que ça aille plus vite, il serait sympathique d’aider BW pour qu’il trouve le chemin plus facilement en :

- rajoutant de manière explicite le nom du cube où est présent l’information - rajoutant via un user exit la manière de retrouver le cube où est présent l’information

N’oubliez pas que BW lance en parallèle la lecture des différentes informations mais lorsque c’est trop long, il abandonne et lance séquentiellement la lecture. Il est donc, évident qu’il faut désactiver la lecture parallèle lorsque le calcul est trop long. Petit test simple, voir comment se lit une requête à l’exécution via la gestion des processus dans SM50.

Il existe bien des moyens pour optimiser le calcul des requêtes. Malheureusement, cela restera toujours long si la partie datawarehouse est mal paramétrée et d’autres solutions peuvent alors intervenir : redimensionnement des cubes, partitionnement des cubes, découpage des cubes par pays jusqu’à la refonte de vos requêtes.

Evidemment, lorsque vous n’avez plus de solutions du tout et que vous êtes en 2004s, vous avez toujours la possibilité d’acheter un serveur dédié avec la solution BI-Accelerator. Son fonctionnement est quasi identique au mode cache, si ce n’est à la différence qu’il utilise un arbre de recherche de type TREX pour ranger les fichiers issus du calcul. Malheureusement, son coût n’est pas à la portée de toutes les bourses.

Si vous avez des questions ou besoin de conseils, n’hésitez pas à faire appel à Censio pour un audit rapide de vos solutions SAP BI.

Pour plus d'informations, http://www.censio.fr

Dauphine et CSC lancent un master "Consulting et ERP"

Lundi 2 avril 2007
Face aux difficultés de recrutement et de formation dans les métiers du Conseil en S.I., les écoles et entreprises s'organisent peu à peu.
Cependant, le processus de formation au sein des entreprises reste long, en effet, un consultant SI est pleinement opérationnel et efficace au bout de 3 ans (il faut apprendre l'outil, mais aussi toutes les notions de management associées)
Pour accélérer le processus, CSC s'allie à l'université Paris-Dauphine. Dès la rentrée prochaine, ils lancent un Master consulting et ERP en apprentissage, qui sera ouvert tant aux ingénieurs qu'aux étudiants en sciences sociales justifiant d'un niveau d'études à Bac + 4.
Pendant un an, les candidats sélectionnés suivront un programme alternant cours à l'université et travail d'application en entreprise.

En lisant cette info, plusieurs questions :
Le marché se dirige vers l'externalision de la formation des consultant. Est-ce une bonne chose ? Une des forces du conseil étant la diversité des expériences, n'allons nous pas vers une uniformisation des profils ?
De plus, de nombreux candidats, ayant fait une spécialisation 'management de projet', espèrent en arrivant sur le marché du travail passer directement à la case chef de projet, sans passer par le nécessaire apprentissage de l'outil, des méthodes... n'allons nous pas encore amplifier ce phénomène ?