Chapitre 8 Les entrepôts de données 1. Introduction : stockage de données dynamiques Les entrepôts de données 1.1 Définition des données dynamiques Pour leur fonctionnement, plusieurs des services contribuant à l'infrastructure du domaine Oracle WebLogic Server requièrent un stockage temporaire d'informations. Bien que temporaire, ce stockage d'informations doit permettre une conservation des données au-delà d'un arrêt et d'une relance du serveur d'applications. Une forme de persistance des données stockées est donc nécessaire. Ce stockage d'informations est assuré par les entrepôts de données. La configuration, la supervision et l'administration de ces ressources sont indispensables au fonctionnement correct de l'infrastructure. En effet, les entrepôts de données, bien que peu visibles pour les utilisateurs, sont des entités sous-jacentes à plusieurs services essentiels tels que la gestion des transactions globales et les échanges de messages via JMS. Ils contribuent ainsi fortement à la qualité du service rendu. Remarque La notion de stockage persistant mentionnée ici ne doit pas être confondue avec un stockage d'information tel que la journalisation ou la collecte des images de diagnostic. Les données sauvegardées dans ces entrepôts de stockage ont vocation à être consommées ultérieurement par le serveur d'applications. Ce qui n'est pas le cas des données de journalisation ou d'images de diagnostic.
500 Oracle WebLogic 12c Mise en œuvre, administration et exploitation 1.2 Utilisation des entrepôts de données Les principaux services utilisant les fonctionnalités de stockage de données dynamiques sont les échanges de messages JMS (Java Messaging System) et leur déclinaison SAF (Store And Forward), les services de diagnostic et de métrologie de l'infrastructure et les transactions globales. Dans le contexte d'échanges de messages JMS, les entrepôts de données sont utilisés pour le stockage des messages persistants et/ou à destination des abonnés permanents ainsi que pour les fonctionnalités de pagination permettant de limiter l'empreinte mémoire des messages (dans les contextes de forte activité avec des volumes de données importants, une partie des messages est stockée dans les entrepôts de données et non directement en mémoire). Pour le service SAF, les entrepôts de données permettent le stockage des messages dans l'attente de leur transfert vers leur destination. Les entrepôts de données sont également utilisés pour le stockage des informations relatives aux transactions globales. Ce stockage permet les attentes des autres participants aux transactions et la reprise en cas d'incident. Les fonctionnalités de supervision de l'infrastructure portées par le framework de diagnostic WLDF (WebLogic Diagnostic Framework) utilisent les entrepôts de données pour le stockage des informations de métrologie collectées au cours du fonctionnement de l'infrastructure. 2. Les entrepôts de données 2.1 Typologie des entrepôts de données Deux types de supports sont disponibles dans les environnements Oracle WebLogic Server pour les entrepôts de données : les fichiers et les bases de données. Un entrepôt de données de type fichier, FileStore, s'appuie sur un ou plusieurs fichiers hébergés dans un même répertoire. Un entrepôt de type base de données, JDBCStore, est supporté par une table dans une base de données. Une source de données JDBC est nécessaire pour accéder à cette table. Editions ENI - All rights reserved
Les entrepôts de données Chapitre 8 501 Remarque Une exception à la seconde règle est à signaler : l'entrepôt des données de diagnostic, dans sa déclinaison JDBC, repose sur une structure avec deux tables. Ce point est détaillé dans la section Gestion de l'entrepôt des données de diagnostic plus loin dans ce chapitre. 2.2 Configuration par défaut La configuration minimale pour un serveur d'applications Oracle WebLogic Server comporte deux entrepôts de données de type fichier : Un entrepôt par défaut utilisé pour le fonctionnement interne du serveur d'applications et pour la gestion des transactions globales. Un entrepôt pour les informations de diagnostic. Ces deux entrepôts de données sont indispensables au fonctionnement du serveur d'applications. Ils sont hébergés chacun dans un répertoire spécifique, respectivement default et diagnostic, sous le dossier data/store dans l'arborescence dynamique du serveur d'applications. Dans la suite de cette section, ces entrepôts de données sont identifiés comme les entrepôts d'infrastructure. Leur gestion et leur supervision sont traitées dans la section Gestion des entrepôts de données de l'infrastructure plus loin dans ce chapitre.
502 Oracle WebLogic 12c Mise en œuvre, administration et exploitation 2.3 Les données de configuration Les informations de configuration relatives aux entrepôts de données sont toutes hébergées dans le fichier de configuration du domaine Oracle WebLogic Server, config.xml. Ces informations concernent la configuration des entrepôts de données ainsi que leur utilisation par les autres ressources du domaine. Les sections suivantes illustrent ces différents blocs de configuration. 2.3.1 Configuration d'un entrepôt de données associé à un fichier La configuration d'un entrepôt de données de type fichier comporte la mention du répertoire où sont stockés les fichiers ainsi que les informations de déploiement et le paramétrage éventuel des accès. <file-store> <name>filestore-0</name> <directory>dddd</directory> <synchronous-write-policy> Direct-Write-With-Cache </synchronous-write-policy> <cache-directory>eeee</cache-directory> <min-window-buffer-size>1048576</min-window-buffer-size> <max-window-buffer-size>2097152</max-window-buffer-size> <io-buffer-size>1048576</io-buffer-size> <block-size>1024</block-size> <initial-size>1048576</initial-size> <target>adminserver</target> </file-store> 2.3.2 Configuration d'un entrepôt associé à une base de données Les informations de configuration d'un entrepôt de données supporté par une structure de base de données comportent notamment la mention de la source de données JDBC ainsi qu'un attribut de préfixe permettant d'héberger plusieurs entrepôts dans une même structure. Les données de déploiement de l'entrepôt de données dans le domaine et les paramètres d'optimisation éventuelle des accès viennent compléter cette configuration. <jdbc-store> <name>jdbcstore-0</name> <prefix-name>store0</prefix-name> <create-table-ddl-file>oracle_blob.ddl</create-table-ddl-file> <data-source>samplegenericds001</data-source> <target>adminserver</target> <deletes-per-batch-maximum>25</deletes-per-batch-maximum> Editions ENI - All rights reserved
Les entrepôts de données Chapitre 8 503 <logical-name>logicalstore0</logical-name> <inserts-per-batch-maximum>25</inserts-per-batch-maximum> <deletes-per-statement-maximum>25</deletes-per-statement-maximum> <worker-count>2</worker-count> <worker-preferred-batch-size>15</worker-preferred-batch-size> <three-step-threshold>250000</three-step-threshold> </jdbc-store> 2.3.3 Références d'utilisation des entrepôts de données Les utilisations les plus fréquentes des entrepôts de données sont liées aux composants de l'infrastructure JMS. Les serveurs JMS et les agents SAF peuvent être associés à un entrepôt de données. L'encadré ci-dessous illustre la référence d'un serveur JMS vers un entrepôt de données. Cette référence est portée par la balise persistent-store. <jms-server> <name>jmsserverms05</name> <target>managedserver05</target> <persistent-store>filestoremanaged05</persistent-store> </jms-server> À côté de la référence vers l'entrepôt de données, ce bloc de configuration comporte une information de déploiement. Cette information doit être cohérente avec celle de l'entrepôt de données. À noter que cette déclaration est facultative car un serveur JMS peut être configuré pour ne pas utiliser d'entrepôt de données. Dans ce cas, le serveur JMS n'offre pas de service de persistance des données. Dans le second exemple, la référence d'un agent SAF vers son entrepôt de données est portée par la balise store. <saf-agent> <name>safagent001</name> <target>adminserver</target> <store>filestoreadminserver</store> <service-type>both</service-type> </saf-agent> Là aussi la déclaration de cette balise dans la configuration est optionnelle. Mais comme un entrepôt de données est indispensable au fonctionnement d'un agent SAF, si cette déclaration n'est pas mentionnée, l'agent SAF utilise l'entrepôt de données par défaut du serveur d'applications. Comme dans le premier exemple de référence, ce bloc de configuration comporte une information de déploiement qui doit être cohérente avec celle de l'entrepôt de données.
504 Oracle WebLogic 12c Mise en œuvre, administration et exploitation 3. Configuration des entrepôts de données Les procédures de configuration des entrepôts de données décrites dans cette section concernent uniquement les ressources de ce type explicitement ajoutées par rapport à une infrastructure de domaine Oracle WebLogic Server standard. Les entrepôts de données de l'infrastructure ne sont pas abordés ici car ils n'ont pas un cycle de vie classique (création, mise à jour et suppression). Ces ressources font l'objet de la section Gestion des entrepôts de données de l'infrastructure plus loin dans ce chapitre. 3.1 Le sommaire de gestion des entrepôts de données À l'image des autres écrans de cette catégorie, le sommaire de gestion des entrepôts de données présente l'ensemble des ressources de ce type définies dans la configuration du domaine Oracle WebLogic Server. Cet écran donne accès aux fonctionnalités de création, mise à jour, suppression et supervision pour chacun des entrepôts de données. L'accès à ce sommaire passe soit par le panneau Domain Structure soit par la page d'accueil de la console d'administration du domaine : dconnectez-vous sur la console d'administration du domaine. ddans le panneau Domain Structure, dépliez l'arborescence associée au nœud Services. dsélectionnez l'entrée Persistent Stores dans la liste affichée. La page de sommaire des entrepôts de données s'affiche : Editions ENI - All rights reserved