Comprendre la sémantique de transaction dans Essbase

Lorsqu'un cube est en mode de lecture/écriture, Essbase traite chaque demande de mise à jour soumise au serveur (par exemple un chargement de données, un calcul, ou un énoncé dans un script de calcul) comme une transaction.

Chaque transaction a un statut courant, qui peut être Active, Validée ou Abandonnée. Lorsque les données sont validées, elles sont extraites de la mémoire du serveur et écrites dans le cube sur le disque.

Les options Blocs de validation/Rangées de validation de l'onglet Transactions pour les paramètres de l'inspecteur de cube indiquent la fréquence à laquelle les blocs ou les rangées de données sont validés par Essbase.

Essbase permet aux transactions de maintenir des verrous en lecture/écriture bloc par bloc; Essbase libère un bloc une fois qu'il a été mis à jour mais ne le valide pas tant que la transaction n'est pas terminée ou tant que la limite définie (point de synchronisation) n'a pas été atteinte.

Vous contrôlez le moment où Essbase effectue une opération de validation explicite en spécifiant les paramètres de point de synchronisation suivants :


Illustration de l'option d'accès discontinu dans l'onglet Transactions pour les paramètres de l'inspecteur de cube dans l'interface Web d'Essbase.

  • Blocs de validation (nombre de blocs modifiés qui déclenche la création d'un point de synchronisation). Essbase valide les blocs lorsque le nombre de blocs spécifiés a été atteint. Cette fréquence peut s'ajuster de manière dynamique lors d'un calcul.

    Si vous réglez le paramètre Blocs de validation à 0, le point de synchronisation est créé à la fin de la transaction.

  • Rangées de validation (nombre de rangées à charger avant la création d'un point de synchronisation). La valeur par défaut est 0, ce qui signifie que le point de synchronisation est créé à la fin du chargement de données.

Si une valeur autre que zéro est indiquée pour l'option Blocs de validation ou pour l'option Rangées de validation, un point de synchronisation est créé lorsque le premier seuil est atteint. Par exemple, si la valeur des options Blocs de validation et Rangées de validation est réglée à 10 et à 0 respectivement et que vous chargez des données, un point de synchronisation est créé lorsque 10 blocs ont été mis à jour. Si la valeur des options Blocs de validation et Rangées de validation est réglée à 5 et que vous chargez des données, un point de synchronisation est créé lorsque 5 rangées ont été chargées ou lorsque 5 blocs ont été mis à jour, selon ce qui se produit en premier.

Si Essbase Server s'exécute sur une machine Oracle Exalytics In-Memory, les paramètres d'accès discontinu sont sans objet. La validation a lieu à la fin de la commande ou de la demande. Toute modification apportée aux paramètres Blocs de validation ou Rangées de validation est ignorée.

Si Essbase Server s'exécute sur un déploiement indépendant sous Windows, la valeur de l'option Blocs de validation est réglée à 3000 par défaut.

Si un seuil défini par l'utilisateur est dépassé lors d'une opération, Essbase crée un point de synchronisation pour valider les données traitées jusqu'à ce point. Essbase crée autant de points de synchronisation que nécessaire pour terminer l'opération.

Essbase analyse la valeur des options Blocs de validation et Rangées de validation lors de son analyse de faisabilité pour l'utilisation du calcul parallèle. Si Essbase estime que les valeurs définies sont trop basses, il les augmente automatiquement.

Essbase conserve les données redondantes pour imposer la sémantique transactionnelle. Prévoyez un espace disque correspondant au double de la taille de la base de données afin d'accueillir les données redondantes, en particulier si la valeur des deux options Blocs de validation et Rangées de validation est réglée à 0.

Pour définir des blocs et des rangées de validation
  1. Naviguez jusqu'à Transactions dans l'interface Web d'Essbase.
    Dans l'interface Redwood :
    1. Dans la page Applications, ouvrez l'application, puis ouvrez la base de données (cube).
    2. Cliquez sur Personnalisation, cliquez sur Paramètres, puis cliquez sur Transactions.
    Dans l'interface Web classique :
    1. Dans la page Applications, développez l'application.
    2. Dans le menu Actions, à droite du nom du cube, cliquez sur Paramètres, puis cliquez sur Transactions.
  2. Effectuez vos sélections et cliquez sur Enregistrer.