Les cubes sont des objets à caractère informatif qui identifient les indicateurs ayant exactement les mêmes dimensions et pouvant être traités simultanément lors des diverses étapes : chargement des données, agrégation, stockage et interrogation. L'onglet Détails d'implémentation détermine le mode de stockage physique des données.
Important : afin d'obtenir des recommandations sur ces options, exécutez la fonction de conseil de dispersion après avoir mis le cube en correspondance.
Ordre des dimensions et dispersion
Sélectionnez les dimensions creuses.
L'ordre des dimensions est important pour les composites, mais n'a aucun effet sur les composites compressés. Pour trier les dimensions, cliquez sur les flèches afin de déplacer les dimensions creuses vers la fin de la liste, après les dimensions denses. Toutes les dimensions que vous avez identifiées comme creuses (en cochant la case Dispersé) doivent être regroupées.
Si vous n'utilisez pas la fonction de conseil de dispersion, suivez ces instructions de base :
Pour accélérer le chargement des données et les analyses temporelles, indiquez d'abord la dimension temps. Généralement dense, cette dimension peut être creuse si le niveau de base est Day (Jour) ou si le cube comporte de nombreuses dimensions.
Pour les composites standard, répertoriez les dimensions creuses dans l'ordre, de celle qui comporte le plus de membres à celle qui en a le moins. Pour les composites compressés, répertoriez-les dans l'ordre inverse.
La fonction de conseil de dispersion n'est pas optimisée pour le chargement des données ou les analyses temporelles. Si vous souhaitez l'optimiser pour ces tâches, ne suivez pas les recommandations et indiquez d'abord la dimension temps.
Utiliser les composites globaux
Pour les cubes partitionnés non compressés, vous pouvez choisir d'utiliser un composite unique (global) ou des composites multiples. Cette option définit un seul et même composite pour le cube, au lieu d'un composite par partition. L'utilisation d'un composite global permet d'effectuer les opérations suivantes :
Eliminer les redondances générées par les composites multiples et, de ce fait, réduire les exigences de stockage.
Charger l'intégralité du composite en mémoire pour améliorer les performances globales.
Il peut être judicieux d'opter pour un composite global dans les cas suivants :
La dimension partitionnée est dense et les modèles de dispersion des autres dimensions sont cohérents dans l'ensemble des partitions.
La taille du composite agrégé ne dépasse pas la mémoire disponible (au moins 50 millions de valeurs).
Des composites standard sont utilisés. Les cubes compressés ne peuvent pas avoir recours aux composites globaux.
L'espace de travail analytique ne prend pas en charge les applications avec processus d'écriture multiples.
Remarque : un composite global ne permet pas d'agrégation parallèle dans l'ensemble des partitions. Si l'espace de travail analytique comporte moins de cubes que les processus disponibles, l'agrégation de partitions en parallèle peut davantage améliorer les performances de construction qu'un composite global.
En cas de doute, ne sélectionnez pas cette option. Le cube disposera d'un composite par partition.
Un cube non partitionné comporte toujours un composite pour le cube, qu'il soit compressé ou non. Un cube compressé partitionné a toujours un composite par partition.
Utiliser la compression
Sélectionnez cette option si les données du cube sont très dispersées. Ce phénomène de forte dispersion est très courant.
En général, on observe une forte dispersion dans les cas suivants :
Le cube comporte un grand nombre de dimensions (au moins sept).
Une dimension compte plus de 300 000 membres.
Deux dimensions ont plus de 100 000 membres chacune.
Les hiérarchies de dimension comptent de nombreux niveaux et le nombre de membres de dimension varie peu d'un niveau à l'autre, de sorte que de nombreux parents ne comportent qu'un seul descendant sur plusieurs niveaux contigus.
Le stockage compressé utilise moins d'espace et permet une agrégation plus rapide que le stockage dispersé standard pour les cubes très dispersés.
Certains opérateurs d'agrégation ne peuvent pas être compressés, car leurs valeurs peuvent varier d'un niveau à l'autre : c'est le cas de tous les opérateurs pondérés et à l'échelle, ainsi que de l'opérateur Hiérarchique - Moyenne (pondérée). Lorsque ces opérateurs sont utilisés dans un cube, le moteur d'agrégation compresse les dimensions (si possible), mais pas l'intégralité du cube.
Type de données du cube
Dans le stockage compressé, tous les indicateurs du cube doivent avoir le même type de données. Dans le stockage standard, chaque indicateur est associé à un type de données. Suivant le type de données sélectionné, vous pouvez définir les paramètres supplémentaires suivants :
Précision : nombre maximal de chiffres significatifs pour les décimales.
Nb de décimales : nombre de chiffres entre le séparateur décimal et le dernier chiffre significatif.
Taille : longueur maximale des types de données textuels, en octets.
Partitionner le cube
Sélectionnez cette option pour partitionner le cube. Le partitionnement augmente les performances des grands indicateurs. Les indicateurs contenant plus de 50 millions de lignes (tuples) composites doivent être partitionnés.
Dimension
Sélectionnez la dimension à utiliser pour le partitionnement du cube. Elle doit inclure au moins une hiérarchie basée sur les niveaux et ses membres doivent être répartis uniformément de sorte que tous les parents d'un niveau donné aient approximativement le même nombre d'enfants.
En général, la dimension temps, qui répond à ces critères, représente la meilleure option. En outre, les données sont chargées et traitées par période, ce qui permet de créer de nouvelles partitions et de supprimer les anciennes dans le cadre du processus de régénération des données.
Hiérarchie
Sélectionnez la hiérarchie à utiliser par défaut pour le partitionnement. Si la dimension inclut plusieurs hiérarchies, choisissez celle qui compte le plus de membres.
Niveau
Sélectionnez le niveau à utiliser pour le partitionnement. Chaque membre de dimension de ce niveau est stocké dans une partition distincte, avec ses descendants. Les membres de dimension de niveau supérieur ou ne figurant pas dans la hiérarchie sont stockés ensemble dans la partition par défaut. La taille de cette dernière ne doit pas dépasser la taille des partitions basées sur les niveaux.
Choisissez soigneusement le niveau de manière à ne pas créer un trop grand nombre de partitions. Par exemple, si la dimension temps inclut 10 ans de données aux niveaux de l'année, du trimestre, du mois et du jour, vous pouvez effectuer la partition au niveau du trimestre. 40 partitions sont alors créées, une pour chaque trimestre et ses descendants (mois et jours). Les 10 membres du niveau de l'année sont stockés ensemble dans la partition par défaut et peuvent être extraits rapidement pour obtenir une vue de niveau supérieur des données. Toutefois, si les données sont très dispersées, vous pouvez effectuer la partition au niveau de l'année.
Le partitionnement vise à créer des composites adaptés à la mémoire, ce qui optimise les performances. Plus votre ordinateur a de mémoire, plus les partitions peuvent être volumineuses tout en permettant d'atteindre cet objectif.
"Basic Elements of Oracle SQL", dans le manuel SQL Reference, pour en savoir plus sur les types de données et les conversions de type de données implicites.
Copyright © 2003, 2007, Oracle. Tous droits réservés.