Les utilitaires Optimiser le cube Référence, Mémoire cache de calcul, Ordre de résolution et Répartition des données vous permettent d'affiner vos cubes pour une performance optimale.
Utilitaire | Données retournées |
---|---|
Référence | Mesures de performance du cube |
Ordre de résolution | Ordre de résolution des membres dans le cube |
Mémoire cache de calcul | Données pour vous aider à choisir la meilleure valeur de mémoire cache de calculateur pour le cube |
Répartition des données | Données pouvant vous aider à choisir les dimensions à rendre denses ou creuses. |
Les mesures suivies dans l'utilitaire Référence présentent les performances du système. Utilisez ces mesures pour déterminer la performance de référence, ainsi que pour mesurer les avantages apportés par les optimisations subséquentes que vous apporterez.
Avant d'utiliser cet utilitaire, vous devez créer un classeur d'application, y compris la structure, les paramètres de configuration, les scripts de calcul et les interrogations à inclure dans le cube.
Lorsque vous exécutez l'utilitaire, celui-ci crée le cube, charge les fichiers de données sélectionnés, exécute les scripts de calcul sélectionnés et exécute les interrogations du classeur d'application. Il est important d'avoir un exemple représentatif des interrogations de vos utilisateurs.
L'utilitaire Référence crée un tableau de bord des processus d'application et opérationnels, ce qui peut vous aider à concevoir et à optimiser le cube. Alors que vous mettez en oeuvre les modifications afin de recréer le cube, la référence vous aide à comparer les itérations des modifications du cube. Dans l'onglet Essbase.Stats.Baseline du classeur d'application, l'utilitaire Référence ajoute de nouvelles tables avec les données les plus récentes pour chaque itération.
Préparer l'exécution de l'utilitaire Optimiser le cube - Référence sur un cube en mode hybride
Réalisez les tâches suivantes avant d'exécuter l'utilitaire de référence :
Pour créer un classeur d'application, vous pouvez télécharger un exemple de classeur d'application et le modifier en fonction de vos besoins. Voir Explorer les modèles de galerie.
Si les feuilles d'interrogation ont des métadonnées provenant d'un autre serveur, le concepteur de cube affiche un avertissement et met le traitement sur pause, jusqu'à ce que vous lui répondiez.
Paramètre | Valeur |
---|---|
ASODYNAMICAGGINBSO | FULL |
HYBRIDBSOINCALCSCRIPT | NONE |
INDEXCACHESIZE | 100M |
DATACACHESIZE | 100M |
ASODEFAULTCACHESIZE | 100 |
MAXFORMULACACHESIZE | 102400 |
INPLACEDATAWRITEMARGINPERCENT | 20 |
CALCCACHEDEFAULT | 200000 |
LONGQUERYTIMETHRESHOLD | -1 |
Exécuter l'utilitaire Optimiser le cube - Référence sur un cube en mode hybride
L'utilitaire Référence identifie les dimensions denses et creuses, la taille des données (tailles des fichiers PAG et IND), la taille de bloc ainsi que les tailles des données, de l'index et de la mémoire cache du calculateur. De plus, il présente les mesures pour le chargement de données, le calcul et l'interrogation.
Pour exécuter l'utilitaire Référence :
Les feuilles de calcul sont exécutées dans l'ordre présenté dans le classeur d'application. Optimiser le cube ignore la propriété Exécuter le calcul des feuilles de calcul.
Seuls les scripts de calcul qui peuvent être exécutés à partir des tâches sont pris en charge par Optimiser le cube. Vous ne pouvez pas exécuter les scripts de calcul qui dépendent du contexte actuel de la grille Smart View (par exemple, les calculs définis en utilisant la fonction @GRIDTUPLES ou ceux qui utilisent les variables de remplacement à l'exécution définies dans les balises <svLaunch>).
Si vous n'avez pas de feuille de données dans le classeur d'application, le système vous demandera de sélectionner des fichiers de données et de règles à partir du catalogue. Une bonne pratique consiste à stocker les fichiers de données et de règles dans un répertoire partagé dans le catalogue afin d'éviter de perdre les fichiers nécessaires à la recréation du cube.
La création du cube nécessite un certain temps.
Essbase génère la feuille Essbase.Stats.Baseline et l'ajoute au classeur.
Modifier une dimension dynamique pour la mettre en stockage réduit cette quantité.
Vérifiez l'ordre de résolution des membres calculés et apportez des modifications pour réduire le nombre d'exécutions de formule et améliorer les performances. Vous pouvez également considérer le stockage d'un membre calculé contenant des formules pour de réduire le nombre d'exécutions de formule et améliorer les performances.
L'utilitaire Ordre de résolution vous offre une représentation visuelle du flux de résolution utilisé dans l'application. Il peut vous aider à diagnostiquer les problèmes de performances d'interrogation associés aux formules.
Pour exécuter l'utilitaire Optimiser l'ordre de résolution du cube :
Utilisez les informations de la feuille Essbase.Stats.SolveOrder pour ajuster l'ordre de résolution afin d'optimiser la performance des interrogations. Voir Optimiser le cube pour le mode hybride et Ordre de résolution en mode hybride.
L'utilitaire Mémoire cache de calcul recommande le paramètre optimal de mémoire cache du calculateur pour le cube.
L'utilisation du bon paramètre de mémoire cache de calcul peut avoir une incidence importante sur la performance lors du calcul des dimensions creuses en entier pour un script de calcul. Le calcul des dimensions creuses en entier est une technique pour réduire le nombre de blocs requis par une interrogation.
La valeur par défaut de la mémoire cache du calculateur est de 200 000 octets. La valeur maximale est de 20 000 000 octets.
La mémoire cache du calculateur doit être réglée à une taille suffisante pour contenir les dimensions creuses calculées dans le script de calcul. Régler la mémoire cache du calculateur à une valeur plus grande que nécessaire aura une incidence négative sur la performance.
Le meilleur choix est normalement la dimension la plus grande.
L'algorithme de mémoire cache du calculateur sélectionne les dimensions creuses à placer dans la mémoire cache, en commençant par la première dimension creuse.
Le cube doit être créé pour que l'utilitaire Mémoire cache de calcul fonctionne.
Cet utilitaire affiche les paramètres adéquats de mémoire cache vis-à-vis de chaque dimension, jusqu'à 20 Mo. Lorsque la taille dépasse 20 Mo, S.O. est affiché. Généralement, les réglages dépassant quelques mégaoctets ne sont pas utiles.
Ajoutez cette valeur à la section Paramètres d'application de la feuille de calcul Cube.Settings. Facultativement, vous pouvez régler cette valeur dans les paramètres de configuration d'application dans l'interface Web d'Essbase. Une bonne pratique consiste à arrondir à l'unité supérieure afin de permettre un peu plus de latitude.
L'utilitaire Répartition des données vous aide à mieux comprendre les données dans une application, ce qui vous permet de rendre les décisions importantes concernant la manière d'optimiser votre cube.
Les dimensions denses définissent les blocs d'une application de stockage par blocs. Idéalement, un bloc devrait contenir les dimensions avec le plus de données et représenter la disposition d'interrogation prédominante pour l'application. Pour les applications de production de rapports financiers, cela signifie normalement que les dimensions de temps et de compte doivent être denses.
Un des facteurs pouvant affecter la performance de l'interrogation est le nombre de blocs demandés par l'interrogation. Si le nombre de blocs demandés est trop élevé, la performance de l'interrogation sera affectée. Pour réduire le nombre de blocs demandés, effectuez un précalcul des membres de niveau supérieur pour une ou plusieurs dimensions creuses. Premièrement, réglez l'attribut de stockage de dimension des membres supérieurs à un attribut de stockage (Stocker ou Ne jamais partager), puis exécutez un script de calcul qui fait l'agrégation de la dimension en utilisant CALC DIM ou bien AGG.
Pour optimiser le script de calcul servant à l'agrégation des dimensions creuses stockées, utilisez la commande FIXPARALLEL. Il est important de sélectionner les bonnes dimensions de tâche. Une dimension de tâche est celle qui détermine comment le calcul est fractionné entre différents fils et exécuté en parallèle. Une ou plusieurs dimensions creuses devraient contenir le plus de données possibles afin de réduire les tâches vides et, idéalement, les données devraient être réparties de manière uniforme.
L'exécution de ce processus peut nécessiter beaucoup de temps, en particulier dans le cas des modèles volumineux.