Calcul intelligent et statut des blocs de données
Lorsque l'option Calcul intelligent est activée, Essbase vérifie le statut de mise à jour des blocs dans une base de données et calcule uniquement les blocs "dirty" et leurs parents dépendants. Lorsqu'elle est désactivée, Essbase calcule tous les blocs de données dans la portée du calcul, qu'ils soient marqués comme non modifiés ou modifiés.
Blocs marqués comme propres
Essbase marque les blocs de données comme propres dans les types de calcul suivants :
-
Calcul complet (CALC ALL) d'une base de données (calcul par défaut).
-
Script de calcul qui calcule toutes les dimensions dans une instruction CALC DIM.
Par exemple, le script de calcul suivant calcule tous les membres de la base de données Sample Basic :
CALC DIM(Measures, Product, Market, Year, Scenario);Comparez ce script à un script de calcul qui calcule tous les membres à l'aide de deux instructions CALC DIM :
CALC DIM(Measures, Product); CALC DIM(Market, Year, Scenario);
Si vous utilisez deux instructions CALC DIM, Essbase effectue au moins deux passes de calcul dans la base de données. Dans ce calcul, Essbase ne marque pas les blocs de données comme propres par défaut. Etant donné que le calcul intelligent dépend de l'exactitude des statuts de nettoyage et de modification, vous devez gérer ces marqueurs avec soin.
Essbase marque les blocs de données calculés comme propres uniquement dans les situations décrites ci-dessus, sauf si vous utilisez la commande SET CLEARUPDATESTATUS dans un script de calcul. Reportez-vous à Commande SET CLEARUPDATESTATUS.
Blocs marqués comme "sales"
Dans les cas suivants, Essbase marque un bloc de données comme étant modifié :
-
Calculer le bloc de données pour un calcul partiel de la base de données uniquement si SET CLEARUPDATESTATUS AFTER ne fait pas partie de l'instruction de calcul partiel dans le script de calcul
-
Chargement de données dans le bloc de données
-
Restructuration de la base de données (en ajoutant un membre à une dimension dense, par exemple)
-
Copier des données dans le bloc de données, par exemple en utilisant DATACOPY
Maintenance du statut Nettoyé/Sale
Pour utiliser le calcul intelligent lors du calcul d'un sous-ensemble d'une base de données ou de l'exécution de plusieurs passes de calcul, examinez attentivement les implications de la façon dont Essbase marque les blocs de données comme propres, afin de vous assurer qu'Essbase recalcule la base de données aussi efficacement que possible.
Par exemple, lorsque vous calculez un sous-ensemble d'une base de données, les blocs de données nouvellement calculés ne sont pas marqués comme propres par défaut. Vous pouvez vous assurer que les nouveaux blocs calculés sont marqués comme propres à l'aide de la commande SET CLEARUPDATESTATUS AFTER dans un script de calcul. Avant de créer le script de calcul, reportez-vous à la section Commande SET CLEARUPDATESTATUS.