Concevoir et déployer un data warehouse

publicité
Concevoir
et déployer un
data warehouse
Ralph Kimball
Éditions Eyrolles
ISBN : 2-212-09165-6
2000
Définition de
l'architecture
technique
Planification
du projet
Définition
des
besoins de
l'entreprise
Modélisation
dimensionnelle
Installation
et sélection
des produits
Conception
du modèle
physique
Spécification de
l'application
utilisateur
Conception et
développement
des éléments
de la zone de
préparation
des données
Déploiement
Maintenance
et
croissance
11
Développement
de l'application
utilisateur
Gestion du projet
Infrastructure et métadonnées
L’infrastructure et les métadonnées sont les fondations des composantes architecturales que
nous avons décrites dans les chapitres 8, 9 et 10. L’infrastructure d’un entrepôt de données
inclut le matériel, les réseaux et les fonctions de bas niveau, telles que la sécurité, que les
composants de haut niveau considèrent comme acquises. Les métadonnées sont un peu moins
concrètes que l’infrastructure, mais constituent tout de même la couche de base des outils
d’arrière-plan (back room) et frontaux (front room). Ce chapitre identifie et définit les principaux composants de l’infrastructure et des métadonnées du data warehouse.
Dans la première partie de ce chapitre, nous examinons les principaux éléments à prendre en
compte en matière d’infrastructure des outils d’arrière-plan (back room). Ensuite, nous aborderons quelques considérations relatives au matériel, aux systèmes d’exploitation et aux
plates-formes de bases de données, en donnant au passage quelques définitions de base. Nous
en ferons ensuite de même pour les outils frontaux (front room). Enfin, pour relier l’ensemble,
nous évoquerons brièvement la connectivité et les réseaux.
La seconde partie de ce chapitre examine les métadonnées sous toutes les coutures. Il s’achève
par un exemple d’utilisation des métadonnées et par quelques réflexions sur leur maintenance.
2
Architecture
PARTIE 3
Bien qu’assez technique, ce chapitre concerne tous les membres de l’équipe ; il est en effet
important que chacun connaisse bien ces pièces maîtresses du data warehouse.
Infrastructure
Plusieurs facteurs doivent être combinés pour déterminer l’infrastructure adaptée à une implémentation donnée ; ils ne sont pas forcément tous techniques. Les auteurs de ce livre ne sont
pas des experts en infrastructure. Notre stratégie a toujours consisté à travailler en étroite
collaboration avec les experts en infrastructure de nos clients et à les aider à bien comprendre
les besoins en infrastructure de l’entrepôt. Cette section identifie et définit les principaux
composants de l’infrastructure d’un data warehouse typique.
Éléments clés de l’infrastructure
Même dans les couches techniques les plus profondes de l’entrepôt, les besoins métier restent
les éléments déterminants de la mise en œuvre. Au niveau de l’infrastructure, les besoins métier
sont représentés par des mesures plus techniques. Par exemple, l’activité détermine le niveau de
détail auquel l’entrepôt doit descendre et le nombre d’années d’historique qu’il doit conserver.
Ces informations nous indiquent le volume de données que l’infrastructure aura à gérer. La
fréquence de chargement des données et la complexité des règles régissant les processus de
transformation peuvent également fournir des indications. Estimez ainsi le « nombre de chevaux »
dont il faudra doter votre configuration matérielle pour que tout se passe bien.
Les problèmes techniques et système conduisent également à certains choix relatifs à l’infrastructure. Dans certains cas, le processus d’extraction représente une charge trop lourde pour
les systèmes opérationnels ; cette situation peut déboucher sur un investissement dans un environnement matériel miroir. Les compétences et l’expérience des équipes chargées de la mise
en œuvre de l’entrepôt entrent aussi en ligne de compte. Les équipes responsables des outils
d’arrière-plan (back room) expérimentées en gros systèmes auront tendance à développer des
entrepôts de données sur gros systèmes, et vice versa. Il en est de même pour les plates-formes
de base de données. Si les administrateurs des bases de données ont investi beaucoup de temps
et d’énergie dans l’apprentissage d’un SGBD bien précis, il ne sera pas aisé de les orienter
vers un autre produit.
Les problèmes politiques et organisationnels jouent également un rôle dans le choix de
l’infrastructure. Les gros investissements sont souvent soumis à des limites « temporaires » ;
dans un tel cas, vos réflexions sur l’infrastructure devront faire preuve de davantage de créativité. Par ailleurs, la stratégie informatique de l’entreprise guidera certaines décisions relatives
au matériel. En effet, la standardisation des plates-formes permet de réaliser d’importantes
économies d’échelle, de capitaliser les compétences, et enfin de développer des applications
dont le portage d’un système à un autre sera relativement aisé.
Évolution de l’infrastructure
L’infrastructure matérielle de l’entrepôt de données englobe les plates-formes matérielles de
chaque magasin de données, de chaque serveur d’applications et des postes de travail.
ASTUCE
À propos des plates-formes matérielles, il convient de garder à l’esprit qu’un entrepôt de données connaît
sa croissance la plus significative au cours des dix-huit premiers mois de son existence, à la fois en
termes de données et d’utilisation.
Infrastructure et métadonnées
CHAPITRE 11
La première étape consiste à déterminer les plates-formes réellement nécessaires. Quels
magasins de données allez-vous mettre en œuvre ? Parmi eux, combien devront disposer de
leur propre plate-forme ? La figure 11.1 illustre quelques configurations matérielles typiques
correspondant à des projets de tailles diverses.
Entrepôt et
préparation
Petit/début
Moyen/
deuxième
phase
Grand/
entreprise
Entrepôt de
données/
data mart
Préparation et
développement
Test/
développement
Zone de
préparation
des données
Data mart
de données
atomiques
Plusieurs
data marts
Plusieurs
data marts
Serveur
d’applications
Outils
du poste
de travail
Serveur
d’applications
Outils
du poste
de travail
Serveur
d’applications
Serveur
d’applications
Outils
du poste
de travail
Outils
du poste
de travail
Figure 11.1
Plates-formes matérielles correspondant à des entrepôts de données de tailles et de maturité variées.
Chaque boite de cette figure représente une machine ou un ensemble de composants physique
de l’entrepôt. Un environnement à deux niveaux (2 tiers) suffit pour un projet modeste ou pour
un premier déploiement. Cependant, même les systèmes les plus petits doivent prévoir un
serveur d’applications pour permettre l’accès aux données via le Web. Dans les entrepôts de
données plus ambitieux ou arrivés à maturité, la zone de préparation des données est généralement séparée de l’entrepôt ou du data mart. De nombreuses entreprises commencent directement à ce niveau, car elles ont l’intention de faire croître leur data warehouse en évitant
d’avoir à migrer vers une architecture à trois niveaux (3 tiers). Au bas de la figure, un entrepôt
de données étendu à toute l’entreprise est implémenté sur plusieurs serveurs séparés. Bien
entendu, les variantes possibles de ces trois suggestions sont nombreuses ; dans tous les cas,
rappelez-vous que le nombre de serveurs peut augmenter de manière non négligeable.
Infrastructure des outils d’arrière-plan (back room)
Dans tout processus de sélection de plates-formes, la première étape consiste à bien assimiler
les besoins. Le simple fait de comprendre ce qu’une plate-forme doit faire et la façon dont elle
doit le faire du point de vue technique ne suffit pas. Il est essentiel de prendre aussi en compte
les besoins métier. Ce faisant, vous constaterez que le nombre de solutions à examiner se
réduit considérablement et vous pourrez comparer leurs coûts respectifs, ainsi que d’autres
facteurs, en vue de déterminer la meilleure. Dans presque tous les projets de data warehouse,
3
4
Architecture
PARTIE 3
le serveur de la base de données est peut-être la décision la plus délicate en matière de matériel.
Voici quelques facteurs à évaluer pour choisir vos serveurs :
• Volumétrie. Le volume de données à gérer est déterminé par les préoccupations métier que
vous avez pour objectif de résoudre. Si la stratégie de l’entreprise est de développer des
relations client one-to-one, le niveau de détail des transactions devra être le client. La
plupart des projets d’entrepôt de données et de data marts se contentent de 200 gigaoctets
au départ. Souvent, ils sont même encore plus modestes et se mettent à croître au fur et à
mesure de l’accumulation des historiques, de la création d’agrégats et de l’apparition de
nouvelles sources de données. Toute configuration en deçà de 200 gigaoctets est facile à
administrer. Pour vous aider à vous y retrouver, nous qualifierons de petits les entrepôts de
données dont la capacité est inférieure à 100 gigaoctets, de moyens ceux allant de 100 à
500 gigaoctets et de grands ceux dépassant 500 gigaoctets.
• Volatilité. Elle mesure le dynamisme de la base de données via la fréquence des mises à
jour, le volume des données modifiées ou remplacées à chaque mise à jour et la taille de la
fenêtre de chargement. Encore une fois, les besoins métier fournissent de bonnes indications sur la volatilité. Bien évidemment, les données quotidiennes sont plus volatiles que
les données hebdomadaires ou mensuelles. Les réponses à ces questions ont une incidence
directe sur la taille et sur les performances de votre plate-forme matérielle.
• Nombre d’utilisateurs. Bien évidemment, le nombre d’utilisateurs, la fréquence selon
laquelle ils utilisent le data warehouse, le nombre de connexions simultanées et les pics
d’activité (fin de mois, par exemple) sont autant de facteurs importants dans la sélection
d’une plate-forme. Pour une entreprise digne de figurer au palmarès des 1 000 premières
dans Fortune, l’effort initial de data mart/data warehouse devra commencer par 25 à 50 utilisateurs actifs. Durant les dix-huit premiers mois, ce nombre passera à 100 ou 200 ; trois ans
plus tard, on comptera des milliers d’utilisateurs, notamment si l’entrepôt est utilisé à la fois
pour des requêtes ad hoc et pour créer des états standard ou presse-bouton dans une grande
entreprise. La répartition géographique des utilisateurs est également importante. S’ils sont
disséminés sur toute la planète, le système devra bien évidemment être disponible 24 heures
sur 24, ce qui a des conséquences sur le matériel. Dans un tel cas de figure, si les systèmes
opérationnels sont centralisés l’entrepôt de données devra probablement l’être également,
mais le matériel devra autoriser les chargements en parallèle ou « au compte-gouttes » pour
permettre une disponibilité constante. Si les systèmes opérationnels sont décentralisés, il
semble logique de décentraliser également les data marts.
• Nombre de processus métier. Le nombre de processus métier pris en charge par l’entrepôt
influe énormément sur sa complexité. Vous pouvez envisager une plate-forme matérielle
par processus si les utilisateurs sont suffisamment nombreux ou si l’activité le justifie.
Cependant, vous aurez peut-être également besoin d’un gros serveur centralisé si les
données consolidées sont indispensables aux dirigeants de l’entreprise et si les méthodes
middleware de consolidation virtuelle sont inadaptées à votre situation.
• Type d’utilisation. Le type d’utilisation et les outils frontaux sélectionnés ont également
une incidence sur le choix des plates-formes. En effet, une poignée d’« utilisateurs ad hoc »
peut peser lourdement sur les performances de l’entrepôt de données. Il est difficile d’optimiser un data warehouse pour ce type d’utilisation, car les bons analystes compulsent sans
cesse les données à la recherche de niches. Au contraire, un système presse-bouton essentiellement destiné à produire des états standards peut être optimisé pour ce type
d’utilisation ; toutefois, si vous avez l’intention d’en rester aux états standard, vous ne
Infrastructure et métadonnées
CHAPITRE 11
tirerez pas le meilleur parti de votre investissement. La plupart des générateurs d’états du
marché permettent de planifier l’exécution d’états prédéfinis tôt le matin, après le chargement des données et avant l’arrivée du personnel. Cette démarche vise à mieux répartir la
charge de traitement en générant la plupart des états standard en dehors des heures de
pointe. Le data mining à grande échelle représente également une lourde charge pour le
matériel, tant du point de vue du volume des données que de celui des entrées-sorties. Il
faudra alors prévoir des « bêtes de course » capables d’absorber d’énormes volumes de
données, de les « ratisser » au moyen des outils de data mining les plus scrutateurs et de
retourner des résultats à l’analyse et à la conduite de l’activité. Il est donc primordial
d’étudier les différents types de requêtes, parce que l’utilisation ad hoc, la génération
d’états et le data mining ont des profils différents et que leurs performances varient selon
les plates-formes.
• Compétences techniques. Du point de vue de l’administration, l’environnement serveur
est comparable à l’environnement gros système sur le plan conceptuel mais très différent
sur le plan de l’implémentation. N’espérez pas pouvoir installer un serveur Unix, ni même
un système NT important, si l’équipe ne compte aucun expert en ressources système. La
gestion d’un serveur implique des tâches et des compétences nombreuses : administration
de base du matériel et des logiciels systèmes, connectivité (avec les postes de travail et les
systèmes source), compétences en administration de données, sauvegardes et restaurations,
etc. Malheureusement, dans l’état actuel de l’évolution technologique, il n’est pas question
de se contenter de mettre en route les serveurs et de ne plus s’en occuper. Du moins pas
encore… Choisissez donc les plates-formes matérielles en fonction des compétences
internes, à la fois en termes qualitatifs et quantitatifs.
• Disponibilité logicielle. Il arrive fréquemment que l’analyse des besoins mette en évidence
des fonctionnalités manquantes, par exemple un système d’information géographique
permettant de situer les informations de l’entrepôt sur des cartes. Le processus de sélection
des logiciels peut révéler que le logiciel de cartographie qui répond le mieux à vos besoins
ne fonctionne que sur une plate-forme graphique haut de gamme ; dans un tel cas, la décision
sera vite prise !
• Ressources financières. Le budget alloué à un projet dépend généralement des bénéfices
attendus. En matière de data warehouse, c’est un peu le problème de l’œuf et de la poule.
Dans le chapitre 3, nous avons parlé de la justification. Il est ardu de décrire et de vanter les
mérites d’un entrepôt avant d’en avoir mis un en œuvre. En terme de matériel, la conclusion est simple : choisissez les plus gros serveurs que votre budget vous permet d’acquérir.
Plates-formes matérielles et systèmes d’exploitation
Dans la mesure où un ordinateur ne fonctionne pas sans système d’exploitation, le matériel et
le système d’exploitation forment un tout. Dans les environnements gros système, vous n’avez
pas le choix du système d’exploitation. En revanche, dans le monde des systèmes ouverts
chaque constructeur de matériel implémente sa propre version d’Unix. Même NT existe en
plusieurs versions, qui n’acceptent pas toutes les logiciels Intel/NT de base en natif. Voici les
principales catégories de combinaisons matériel/système d’exploitation :
• Gros systèmes. Dernièrement, une série d’articles a fait état d’applications qui regagnaient
l’environnement gros système après avoir subi un échec dans l’environnement clientserveur. Le data warehouse est certainement le domaine auquel cette observation ne
s’applique pas. En règle générale, le gros système n’est pas la plate-forme idéale pour un
5
6
Architecture
PARTIE 3
entrepôt de données et les quelques réussites en la matière sont des exceptions : il s’agit soit
d’entrepôts de données implémentés sur gros système depuis longtemps et dont la migration coûterait trop cher, soit d’entrepôts de données qui exploitent un excédent de capacité
du gros système, entraînant ainsi des coûts marginaux relativement faibles. Cependant, le
data warehousing sur gros système est en général peu rentable. Les coûts relatifs à l’administration, au matériel et à la programmation sont plus élevés que ceux des systèmes
ouverts, en partie parce que le gros système dispose d’une infrastructure de traitement des
transactions poussée, qui ne présente aucun intérêt dans le cadre du data warehousing.
En outre, étant donné que le gros système est essentiellement conçu pour gérer les transactions, il manque de souplesse sur le plan de la programmation. Les outils et les techniques
sont fiables, mais difficiles à exploiter. L’ajout de nouvelles sources de données, ou même
la maintenance des extractions existantes, peut être très pénible.
Enfin, de nombreuses entreprises sont équipées de gros systèmes offrant des capacités limitées et n’envisagent aucune extension en vue d’applications nouvelles. Alors si vous avez
de la place, occupez-la ; si vous devez envisager un nouvel investissement, optez pour un
environnement serveur.
• Serveurs de systèmes ouverts. Les serveurs de systèmes ouverts, ou Unix, sont
aujourd’hui les plates-formes les plus courantes pour les entrepôts de données de moyenne
et de grande dimension. Unix est généralement assez robuste pour gérer correctement les
applications de production et pratique le traitement parallèle depuis plus de dix ans. Le
marché des serveurs Unix est relativement accessible. D’un point de vue fonctionnel, Unix
peut sembler étrange aux habitués des gros systèmes et aux programmeurs PC par exemple,
la plupart des utilitaires ne sont pas standard. L’équipe du data warehouse devra donc
posséder les compétences requises par l’installation et la gestion d’un environnement Unix.
Veillez à la participation active des administrateurs. L’équipe du data warehouse devra
également connaître les commandes et les utilitaires Unix pour pouvoir développer et gérer
l’entrepôt ; prévoyez des formations le cas échéant. Gardez surtout à l’esprit qu’Unix n'est
pas un environnement standard et que chaque constructeur propose sa propre version du
système d’exploitation, dotée de ses propres particularités.
• Serveurs NT. Bien qu’étant de loin le système d’exploitation connaissant la plus forte
croissance sur le marché, NT vient seulement d’atteindre les capacités nécessaires à
l’implémentation d’un entrepôt de données de taille moyenne. Des plates-formes matérielles NT étendues et viables font leur apparition. Les capacités de traitement parallèle ont
longtemps été limitées à des architectures mono-processeurs et les clusters sous serveur NT
sont opérationnels depuis peu. Étant donné les antécédents de Microsoft, on peut penser
que NT va devenir une plate-forme d’exploitation puissante ; à l’heure actuelle, ce système
n’est toutefois pas le mieux adapté aux entrepôts de données de moyenne et de grande
dimension. Il est en revanche rentable dans le cadre de data warehouses modestes ou de
data marts peuplés de données atomiques.
Architectures de traitement en parallèle
Les constructeurs se sont toujours montrés créatifs en matière de sigles et continuent à en
inventer régulièrement de nouveaux. Le marché des serveurs offre trois architectures matérielles de traitement parallèle, illustrées par la figure 11.2 : SMP (Symmetric Multiprocessing), MPP (Massive Parallel Processing) et NUMA (Non-Uniform Memory Architecture).
Ces architectures diffèrent dans la manière dont les processeurs interagissent avec les disques
Infrastructure et métadonnées
CHAPITRE 11
durs, avec la mémoire et entre eux. Les frontières entre ces architectures s’estompent à mesure
que les constructeurs optimisent leurs offres. Les sections qui suivent évoquent l’application
de ces configurations au data warehouse.
SMP
Processeur
Processeur
Processeur
Processeur
MPP
Processeur
Processeur
Processeur
Processeur
NUMA
Processeur
Processeur
Processeur
Processeur
Figure 11.2
Principales architectures matérielles.
SMP (fonctionnement en multi-processeur symétrique)
L’architecture SMP présente une machine unique équipée de plusieurs processeurs, chacun
étant géré par un système d’exploitation et accédant à son propre disque et à sa zone de
mémoire. Une machine SMP équipé de 8 à 32 processeurs, une base de données parallèle,
beaucoup de mémoire (deux gigaoctets ou plus), un bon disque et une conception adaptée
conviennent parfaitement à un entrepôt de données de taille moyenne. Pour tirer parti de
processeurs multiples, la base de données doit être capable d’exécuter ses opérations en parallèle et les processus de l’entrepôt doivent être conçus pour exploiter les fonctionnalités du traitement en parallèle.
ASTUCE
L’architecture en « partage intégral » rend les machines SMP bien adaptées aux requêtes ad hoc. Dans un
environnement ad hoc, les chemins d’accès ne sont pas connus par avance. La nature à la fois centralisée et partagée de l’architecture SMP permet au système d’allouer de la puissance de traitement à
l’ensemble de la base de données.
7
8
Architecture
PARTIE 3
Le « partage intégral » représente à la fois la force et la faiblesse de l’architecture SMP. Les
processeurs peuvent accéder aux ressources partagées (mémoire et disque) très rapidement,
mais les chemins qu’ils emploient risquent fort de produire des goulets d’étranglement en cas
de forte sollicitation. Étant donné que la machine SMP est une entité unique, plus rien ne fonctionnera en cas de panne. Pour remédier à cet inconvénient, les constructeurs mettent au point
des techniques permettant à plusieurs ordinateurs SMP d’être reliés entre eux ou de former
des clusters. Dans un cluster, chaque nœud est une machine SMP possédant son propre
système d’exploitation, mais le cluster inclut des logiciels de connexion et de contrôle qui
permettent aux machines de se partager les disques et de pourvoir à la réparation des
défaillances. Ainsi, si une machine cesse de fonctionner, les autres se répartiront temporairement sa charge de travail. Bien entendu, cet avantage a un coût car les clusters sont complexes
et difficiles à gérer. Enfin, la technologie de base de données nécessaire à la prise en compte
des clusters évolue sans cesse.
MPP (traitement massivement parallèle)
Les configurations MPP sont fondées sur des chaînes d’ordinateurs relativement indépendants
les uns des autres, équipés chacun de son propre système d’exploitation, de sa mémoire et de
son disque dur, le tout étant coordonné par des échanges de messages. La force de MPP réside
dans sa capacité à connecter des centaines de nœuds (c’est-à-dire de machines) en vue de leur
soumettre un problèmes selon l’approche par la force. Par exemple, pour sonder une grosse
table de fond en comble, vous obtiendrez rapidement un résultat en recourant à un système
MPP de 100 nœuds, chaque nœud étant chargé de traiter un centième de la table. C’est la
notion de « petite main » appliquée à l’informatique. Les difficultés surgissent lorsque le fractionnement du problème à traiter est malaisé. Par exemple, une jointure entre deux grosses
tables peut poser problème si elles doivent toutes deux être traitées par les cent nœuds. En
effet, chaque enregistrement d’une des tables peut être lié à des enregistrements de l’autre
table, qui peuvent se trouver sur n’importe lequel des 99 autres nœuds ! La tâche de coordination des nœuds peut alors subir une surcharge. Bien entendu, les développeurs de systèmes
utilisant la technologie MPP ont mis au point des moyens de contourner ce problème et de
résoudre d’autres questions liées au parallélisme.
Les systèmes MPP sont bien adaptés aux entrepôts de données de grande taille (au-delà du
téraoctet) et aux applications qui accèdent aux données de manière intensive (data mining).
Dans ces systèmes, vous pouvez optimiser l’accessibilité aux données en stockant celles-ci en
miroir sur plusieurs nœuds. Les machines MPP fonctionnent mieux lorsque les chemins
d’accès aux données sont prédéfinis et que les données peuvent être distribuées sur les nœuds
et sur les disques en fonction de ces chemins.
ASTUCE
Les systèmes MPP sont fréquemment employés pour gérer les environnements de requêtes prédéfinies
ou d’états standard ou encore pour alimenter les data marts en données atomiques. Leur coût est réputé
élevé ; leur administration et leur optimisation sont délicates. Encore une fois, la base de données doit être
conçue pour tirer parti de cette structure matérielle (la conception physique adaptée à un système MPP
peut être très différente de celle conçue pour un système SMP).
NUMA (architecture de mémoire non uniforme)
L’architecture NUMA est une combinaison de SMP et de MPP qui vise à allier la souplesse du
partage des disques du premier aux performances de traitement en parallèle du second. Il s’agit
d’une innovation relativement récente, qui a des chances d’être viable à long terme sur le
Infrastructure et métadonnées
CHAPITRE 11
marché du data warehouse. Du point de vue conceptuel, l’architecture NUMA reprend l’idée
des clusters de machines du SMP, mais avec des connexions plus « serrées » de la bande
passante supplémentaire et une meilleure coordination des nœuds. S’il vous est possible de
segmenter votre entrepôt de données en groupes d’utilisation relativement autonomes et de placer
chaque groupe sur son propre nœud, l’architecture NUMA vous donnera satisfaction.
Considérations générales sur les architectures parallèles
Quelle que soit la plate-forme, il est conseillé de s’interroger sur la disponibilité des logiciels
et sur la complexité de l’administration des systèmes. Voici quelques-unes de ces questions :
• Quels sont le type et la version du système d’exploitation requis ? Rappelez-vous notamment qu’Unix n’est pas un standard.
• Quelles sont les applications disponibles compatibles avec cette version du système
d’exploitation ? Si l’éditeur du logiciel que vous voulez acheter n’a pas porté son produit
sur le système d’exploitation que vous utilisez, le logiciel ne fonctionnera pas. Vérifiez
également si ce dernier est compatible avec votre version du SGBDR, avec vos utilitaires
de base de données, avec vos serveurs d’applications, etc.
Facteurs stimulant les performances matérielles
En matière de data warehouse, le débit des disques et de la mémoire sont importants car les
requêtes peuvent solliciter fortement les données. En règle générale, une requête adressée à un
système transactionnel retourne un enregistrement unique issu d’une table optimisée de
manière que l’enregistrement se trouve déjà dans le cache. En revanche, une requête adressée
à un entrepôt de données peut nécessiter l’agrégation de milliers d’enregistrements provenant
de plusieurs tables.
Les disques
Les lecteurs de disques influent fortement sur les performances, la flexibilité et l’évolutivité
d’une plate-forme matérielle. Le prix des serveurs de disques oscille autour de 400 francs le
gigaoctet. Dans les systèmes haut de gamme, les lecteurs sont installés sur un ordinateur autonome ou sur un sous-système dédié à la gestion des accès disque. Ces systèmes sont rapides,
évolutifs et portables (il est possible de les réutiliser sur d’autres serveurs ou avec d’autres
systèmes d’exploitation). On peut les configurer conformément aux standards de sécurisation
du stockage des données RAID (Redundant Array of Inexpensive Disks) 1 ou 5, afin d’optimiser la disponibilité de l’entrepôt de données. Sachez que les bases de données ont besoin de
gros volumes de mémoire temporaire pour effectuer les tris, les jointures et les agrégats. Ce
volume doit résider sur des lecteurs et des contrôleurs performants mais n’a pas besoin d’être
placé en miroir (ce qui reviendrait plus cher). Ces systèmes de lecteurs peuvent être remplacés
à chaud, ce qui réduit la durée d’indisponibilité en cas de problème. La redondance et
l’échange à chaud sont importants dans la mesure où les lecteurs sont les composants les plus
sujets aux pannes. Les sous-systèmes de lecteurs de disques coûtent plus cher mais sont rentables à long terme. Prévoyez au départ assez d’espace disque pour un ou deux ans et gérez
votre expansion en fonction des besoins et des baisses de prix.
La mémoire
Plus un data warehouse dispose de mémoire, mieux c’est ; voici une différence supplémentaire entre l’aide à la décision et le traitement transactionnel. Les requêtes sur les transactions
9
10
Architecture
PARTIE 3
sont généralement peu gourmandes en mémoire. Les requêtes d’aide à la décision sont plus
exigeantes et impliquent souvent plusieurs passes dans des tables volumineuses. Si la
mémoire contient la totalité de la table interrogée, les performances peuvent théoriquement
être multipliées par un facteur compris entre 10 et 100. C’est l’un des gros avantages des
plates-formes 64 bits. Les systèmes 32-bits sont limités à 2 gigaoctets (parfois 4), tandis que
les processeurs 64-bits sont capables d’adresser un espace mémoire plus important. Remarquez au passage que pour que le 64-bits soit effectif, l’ordinateur, son système d’exploitation
et la base de données doivent également être en 64-bits.
ASTUCE
La tentation de favoriser la mémoire au détriment des disques revient régulièrement à l’ordre du jour, en
raison de la différence des temps d’accès. Un accès disque prend environ 10 millisecondes, tandis qu’un
accès mémoire est 100 fois plus rapide (0,1 milliseconde). Cependant, le traitement des données d’une
base en mémoire ne sera pas pour autant 100 fois plus rapide, car de nombreux autres facteurs entrent en
ligne de compte : antélecture de disque et mémoire cache sur le contrôleur ou dans le système d’exploitation. Néanmoins, vous pouvez multiplier les performances d’un entrepôt de données par un facteur compris
entre 10 et 30 en ajoutant simplement de la mémoire à la configuration de la base de données.
Niveau de service attendu
Le type et la puissance du matériel requis dépendent du degré de disponibilité que vous devez
offrir. Si les données doivent être accessibles au monde entier, des machines en parallèle et
une forte redondance des composants seront nécessaires (le problème consistera à trouver des
heures creuses pour effectuer les chargements et la maintenance). La disponibilité du data
mart des données atomiques est décisive dans la mesure où ce data mart contient les données
du niveau de détail le plus fin et sera probablement relié à tous les autres data marts sur le
mode du forage. La puissance de traitement est également essentielle, car le data mart des
données atomiques est le point central du processus de chargement et doit être capable de
transférer des données vers les autres data marts dans un délai relativement court.
Stockage secondaire
Assurez-vous que votre configuration permet la gestion des sauvegardes et de l’archivage. Si
possible, optez pour un système de sauvegarde assez rapide pour effectuer son travail pendant la
durée impartie au chargement. Bien qu’il soit possible de sauvegarder le contenu d’un entrepôt
de données à un moment où les utilisateurs s’en servent, une telle opération risque d’engendrer
une charge importante qui disputera les ressources processeur aux requêtes des utilisateurs.
Autres facteurs
Les environnements serveur Unix et NT sont à ce jour les plates-formes les mieux adaptées aux
entrepôts de données, Unix représentant la meilleure option pour les systèmes de moyenne ou
de grande dimension. Voici quelques avantages des serveurs par rapport aux gros systèmes :
• Un choix d’outils plus étendu. Aujourd’hui, la plupart des nouveaux outils de data warehouse sont d’abord, voire exclusivement, développés pour les serveurs.
• Options de développement des constructeurs de bases de données. La plupart des constructeurs effectuent leurs développements sur un système d’exploitation donné. Il s’agit généralement de la première plate-forme mise en œuvre par la société et de celle sur laquelle le
produit fonctionne le mieux. Après son développement, le produit initial est porté sur d’autres
Infrastructure et métadonnées
CHAPITRE 11
systèmes d’exploitation et sur d’autres versions d’Unix. Bien entendu, il peut être judicieux
d’attendre une nouvelle version ; les premiers acquéreurs font office de cobayes…
ASTUCE
Plus votre plate-forme sera éloignée de celle du produit initial, plus la nouvelle version sera longue à
venir ; de plus, le support spécifique dont vous pourrez bénéficier sera moindre.
• Les serveurs d’applications requièrent des plates-formes Unix ou NT. Certains produits
d’accès aux données sont livrés avec un composant serveur d’applications qui doit obligatoirement s’exécuter sur une plate-forme serveur. Si l’entrepôt de données comporte déjà
des serveurs, les serveurs d’applications peuvent partager la plate-forme existante, ce qui
vous évite d’engager des investissements supplémentaires. L’idée n’est peut-être pas excellente à long terme, mais elle simplifie le démarrage. Nous évoquons également les serveurs
d’applications dans la section de ce chapitre consacrée aux outils frontaux (front room).
• Souplesse. L’environnement serveur est moins sévèrement gardé que le gros système,
notamment si le serveur est dédié à l’entrepôt de données. L’équipe locale pourra accéder
directement à l’entrepôt de données pour tester de nouveaux scénarios, construire de
nouvelles tables, etc., sans dépendre de ressources distantes.
Considérations relatives à la plate-forme de la base de données
Dans le monde du data warehouse, le choix de la plate-forme de la base de données est ultrasensible. Il existe plus d’une dizaine de possibilités ; chacune d’elles offre des exemples
d’implémentations de data warehouses réussies et est défendue par ses supporteurs. En dehors
des produits les plus connus, la plupart des entreprises du secteur des langages de quatrième
génération (L4G) ont des offres de data warehouse. Certains entrepôts sont implémentés à
l’aide de produits gros système, d’autres au moyen de bases de données multidimensionnelles
spécialisées nommées moteurs MOLAP (Multidimensional On-Line Analytical Processing).
Les facteurs qui guident votre décision en matière de matériel s’appliquent également au
choix de la plate-forme de la base de données. Notre expérience nous dit que votre décision
dépend des spécificités de votre situation. Commencez par faire votre choix entre les bases de
données relationnelles et leurs homologues multidimensionnelles.
Base de données relationnelle ou multidimensionnelle ?
D’après les chiffres, le débat principal oppose les bases de données relationnelles aux bases
de données dimensionnelles, les premières menant la danse. Depuis quelques années, le
marché de l’aide à la décision est le théâtre de discussions visant à déterminer l’approche
convenant le mieux au traitement analytique. Le débat est passionné mais apporte malheureusement peu de réponses.
Le problème devient plus facile à appréhender sous l’angle des besoins métier. Les bases de
données multidimensionnelles, également baptisées moteurs MOLAP, sont apparues pour
répondre à trois besoins essentiels des utilisateurs : simplicité de l’accès aux données, états de
type tableau croisé et temps de réponse faibles. Certains ont développé des bases de données
spécialisées parce que les bases de données relationnelles standard et leurs « ancêtres » étaient
incapables de satisfaire ces trois exigences. La majeure partie des produits MOLAP existent
depuis une dizaine d’années. Les sections suivantes mettent en lumière les avantages et les
inconvénients des deux solutions.
11
12
Architecture
PARTIE 3
Caractéristiques des moteurs relationnels
La plupart des constructeurs de bases de données relationnelles ont investi dans le développement d’adaptations spécifiques au data warehouse et offrent aujourd’hui des performances
acceptables. Les principaux constructeurs de SGBDR ont introduit plusieurs nouveautés :
prise en charge du modèle dimensionnel, jointures en étoile, indexation bitmap et optimiseurs
de requêtes plus efficaces. Ces progrès, accompagnés d’avancées technologiques telles que la
sensibilité aux agrégats, ont réduit de manière considérable les différences de performances
entre les produits. Les bases de données relationnelles présentent l’avantage de pouvoir
stocker plus de données au niveau de détail le plus fin. Il est entendu que les systèmes spécialisés dans la résolution de certains problèmes sont avantagés par rapport aux produits plus
généralistes ; il en va de leur survie sur le marché.
ASTUCE
Si vous avez décidé de fonder votre entrepôt de données sur une plate-forme relationnelle et si votre
projet est de faible ou de moyenne envergure, il serait absurde d’envisager des solutions n’appartenant
pas à la tendance générale du marché des SGBDR.
De toute façon, il est extrêmement intéressant de vous renseigner sur les implémentations
existantes et de vous livrer à quelques tests. Identifiez quelques états un peu délicats, comportant notamment des jointures multiples entre plusieurs tables, et voyez ce qu’ils donnent. En
règle générale, les constructeurs mettent à votre disposition des ressources pour vous aider
dans ce processus de test. Profitez des éventuelles expériences internes de sélection de
produits acquises dans le cadre de projets informatiques antérieurs.
ASTUCE
Certaines bases de données relationnelles sont spécialement conçues pour gérer les configurations de
bases de données et les requêtes de type data warehouse. Elles sont plus rapides que les principaux
SGBDR et sont intéressantes (presque obligatoires, en fait) pour les entrepôts de données de grande
envergure.
Caractéristiques des moteurs MOLAP
Les moteurs MOLAP, également nommés systèmes de gestion de bases données multidimensionnelles, sont des systèmes propriétaires conçus pour permettre des analyses très poussées.
Les moteurs MOLAP peuvent constituer d’excellentes plates-formes de data mart pour les
besoins auxquels il est possible de répondre par un schéma en étoile. Le nombre des dimensions et des lignes doit être relativement restreint. Le moteur MOLAP introduit une couche
supplémentaire dans les processus de chargement et d’administration.
ASTUCE
Partant du principe de la présence d’un data mart de données atomiques sur une plate-forme SGBDR,
l’implémentation d’un moteur MOLAP signifie que vous aurez un environnement distinct à administrer et
que celui-ci aura probablement besoin d’un serveur dédié.
Le principal avantage du moteur MOLAP réside dans les performances des requêtes. Les faits
correspondant à toutes les combinaisons de dimensions valides sont préstockés. Les temps de
réponse sont étonnants. En contrepartie, le stockage de tous ces agrégats accroît le volume des
données. Or, le volume de données qu’il est possible de stocker dans une base de données
multidimensionnelle est, pour des raisons historiques, limité à 10 gigaoctets ; les constructeurs font leur possible pour résoudre ces restrictions portant sur le stockage physique. Une
limitation subsiste néanmoins, imposée par la durée nécessaire au chargement de nouvelles
Infrastructure et métadonnées
CHAPITRE 11
données ou à l’actualisation de la base de données. Aujourd’hui, la plupart des utilisateurs ont
autant besoin de données détaillées que d’informations agrégées. Pour répondre à ce besoin,
la faculté de forer directement au niveau du moteur MOLAP a été ajoutée à la plupart des
produits de cette gamme. Leurs aptitudes à gérer les modifications, les calculs complexes et
les sous-totaux, autres avantages non négligeables des moteurs MOLAP, en font des candidats
idéaux pour les systèmes budgétaires et prévisionnels.
L’évaluation des moteurs multidimensionnels ne peut pas être dissociée de celle des outils
d’accès aux données, que nous décrivons en détail au chapitre 13. Certains produits MOLAP
offrent des outils d’interface utilisateur complets ainsi que l’environnement bases de données.
D’autres proposent le moteur MOLAP et un environnement de développement ; dans ce cas,
vous pouvez soit développer les applications utilisateur en interne, soit vous les procurer
auprès d’un fournisseur extérieur.
ASTUCE
Au moment où nous écrivons ces lignes, les fonctionnalités de forage des SGBDR de type SQL via des
moteurs MOLAP peuvent tout au plus être qualifiées de rudimentaires. Ce problème de liaison entre les
moteurs MOLAP et l’environnement relationnel est la raison pour laquelle nous préconisons le stockage
des données détaillées au sein d’un modèle dimensionnel. Si ces deux niveaux représentent des conceptions radicalement différentes, il sera difficile de fournir un accès performant aux données détaillées.
Mettez en concurrence les différents produits MOLAP et confrontez-les aux besoins des utilisateurs en procédant à des tests d’utilisation. Les solutions postes de travail, légères, peuvent
sembler intéressantes à court terme mais risquent de générer, au fil du temps, plus de travail
que de valeur ajoutée. L’équipe chargée du data warehouse doit évaluer avec soin les limitations et les fonctionnalités des produits. L’évolutivité doit être privilégiée.
ASTUCE
Sur le plan de l’évolutivité, l’inconvénient majeur des produits MOLAP réside actuellement dans la limitation du volume des données en entrée pour la table des faits principale et du nombre de lignes dans les
dimensions. Début 1998, ces limitations tournaient autour de 5 gigaoctets de données en entrée et de
300 000 lignes dans la dimension la plus importante.
Le problème de la multiplicité des constructeurs et des produits tend à s’estomper à mesure
que les constructeurs de SGBDR incorporent des fonctionnalités MOLAP à leurs logiciels.
Les implémentations deviennent hybrides, mais cette intégration n’entraîne pas systématiquement une baisse des prix ; le budget disponible reste donc un facteur à part entière du choix
entre SGBDR et MOLAP.
Infrastructure des outils frontaux (front room)
L’infrastructure des outils frontaux (front room) dépend plus fortement de l’activité et des
outils que celle des outils d’arrière-plan (back room) et les choix à faire y sont plus nombreux.
Commençons par quelques considérations générales.
Serveur d’applications
Du côté des outils frontaux (front room), les serveurs d’applications tendent à proliférer à
toute vitesse. Les uns gèrent l’accès aux données via le Web, les autres gèrent les requêtes, les
états standard, l’authentification, les bases de données de métadonnées, etc. Apporter des
informations intéressantes et des conseils en ce domaine n’est pas simple, car les produits sont
13
14
Architecture
PARTIE 3
très nombreux et très différents. La meilleure tactique consiste à interroger très tôt les constructeurs sur les détails de leurs configurations. Voici quelques questions clés à poser :
• Mémoire. Combien de mémoire faut-il prévoir ? Quel est le temps de formation nécessaire
à une utilisation efficace ?
• Disque. Quels facteurs déterminent l’utilisation du disque ? Quelle capacité faut-il envisager ?
• Partage de plate-forme. Est-il possible d’exécuter plusieurs services sur la même plateforme matérielle ? Dans ce cas, comment se comportent les performances ? Quels sont les
compromis à envisager ? Certains produits ont-ils une compatibilité réduite ?
• Goulets d’étranglement. À quoi les goulets d’étranglement du système sont-ils dus ? À
quoi les ralentissements du système sont-ils dus ? Le produit est-il réellement multithread ?
Peut-il vraiment exécuter plusieurs processus simultanément ? Quels seraient les avantages
de l’installation de plusieurs processeurs ? Combien d’utilisateurs simultanés le produit
peut-il gérer ?
Poste de travail
La puissance du poste de travail dépend de son utilisateur et de ses besoins en matière d’outils.
L’utilisateur occasionnel qui se contente de quelques états HTML qu’il consulte à partir de
son navigateur favori sera satisfait si on lui fournit assez de puissance pour lancer son navigateur Web. À l’autre extrême, l’utilisateur aguerri qui construit des requêtes complexes et lance
des analyses personnalisées devra être équipé d’un ordinateur beaucoup plus puissant. Vous
trouvez ci-dessous des conseils qui vous aideront à configurer le poste de travail.
Support inter-plate-forme
Dans certaines entreprises, le service marketing compte encore des inconditionnels du
Macintosh ; d’autres sociétés utilisent des stations de travail Unix pour les études et pour la
production. Le support de plates-formes multiples entraîne une lourde tâche pour l’équipe
chargée des outils frontaux. Les problèmes d’installation et de support varient d’une plateforme à l’autre et l’équipe doit être compétente dans tous les domaines. D’autre part, les
problèmes ne prennent pas fin une fois que les logiciels sont installés. Il est souvent nécessaire
de créer les états sur chaque plate-forme, ce qui peut multiplier par deux le travail de développement et de maintenance. Les concepteurs d’outils frontaux sont peu nombreux à supporter
d’autres plates-formes que le duo Windows/Intel. Si vous êtes obligé de supporter plusieurs
plates-formes poste de travail, le processus de sélection des outils d’accès aux données s’en
trouvera simplifié.
Système d’exploitation du poste de travail
Même si tous les utilisateurs emploient la même base matérielle, cela ne signifie pas que tous
seront compatibles avec les logiciels client car la version du système d’exploitation peut être
inadapté. Renseignez-vous sur la version du système d’exploitation requise par vos outils et
vérifiez qu’elle correspond bien à la réalité.
ASTUCE
Dans le monde Windows, si vos utilisateurs ne disposent pas de Windows 95 et versions ultérieures ou de
NT 4 et versions ultérieures, vous pouvez vous attendre à des problèmes.
Infrastructure et métadonnées
CHAPITRE 11
Distribution des logiciels
Ce problème est insidieux : il s’installe lentement et sans faire de bruit puis, un beau jour, vous
saute d’un seul coup à la figure. L’installation des premiers groupes d’utilisateurs est aisée.
Vous les connaissez, car ils ont participé aux réunions du processus de conception ; ils sont
impatients de commencer à travailler sur les nouveaux produits. Puis d’autres personnes
demandent à accéder au data warehouse, bientôt rejoints par des utilisateurs géographiquement
distants, et vous finissez par vous retrouver en train de gérer plusieurs centaines de copies des
logiciels destinés aux poste de travail, réparties aux quatre coins de l’entreprise. C’est bien
entendu ce moment-là que votre fournisseur choisit pour commercialiser la nouvelle version de
son produit, qui fait absolument tout mais dont la compatibilité avec la précédente version n’est
pas garantie ; une mise à jour de l’ensemble des postes de travail du parc vous attend…
Outils Web
L’indépendance des plates-formes et la facilité de diffusion sont des attraits majeurs du Web
et des technologies connexes. Or, ces avantages ne sont effectifs qu’en théorie et se limitent à
l’accès aux états simples. La présence du poste de travail est indispensable aux analyses ad
hoc. Il est pourtant possible de faire de l’analyse ad hoc au moyen d’une grosse applet ; chez
Metaphor, nous avons même développé des applications complexes sur un réseau d’ordinateurs dépourvus de disque dur dès 1984. Mais les fournisseurs d’outils ont mis des années à
développer le volume de code actuel et n’ont aucun moyen de le porter (et l’infrastructure de
développement n’est pas encore assez robuste). Les nouveaux venus qui proposent une offre
d’outils Web ne sont entravés par aucun passif, mais ils n’ont pas encore eu le temps de développer un outil puissant et manquent d’expérience. Ils devront d’abord franchir plusieurs
étapes, à l’instar de la génération qui les a précédés.
Mémoire
Vous ne serez pas étonné d’apprendre que la mémoire a une forte incidence sur les performances des postes de travail. Nous avons eu l’occasion de travailler pour une entreprise qui
avait consacré beaucoup de temps et d’énergie à rechercher la cause d’un problème du côté du
réseau alors que le goulet d’étranglement était dû à une capacité mémoire insuffisante sur les
postes de travail. Ceux-ci passaient le plus clair de leur temps à paginer les données et les
programmes dans la mémoire virtuelle.
Conclusion sur le poste de travail
Choisissez une plate-forme standard et déterminez la configuration minimale pour implémenter votre série d’outils de manière réactive ; elle doit être suffisamment riche pour être efficace. Par ailleurs, prévoyez une configuration plus puissante réservée aux utilisateurs experts,
qui sont peu nombreux mais qui ont un impact important. Il vaut mieux éviter de limiter artificiellement leur usage du data warehouse (et, ce faisant, l’utilité de ce dernier) en vue
d’économiser quelques milliers de francs sur l’achat des ordinateurs.
D’autre part, nous recommandons de prévoir un poste par utilisateur ; la baisse des prix le
permet. Les stations partagées ne sont pas très fonctionnelles car elles font augmenter le coût
perçu de l’utilisation de l’entrepôt pour l’analyste. Si celui-ci doit se lever de son siège,
s’installer près du poste de travail partagé, y lancer quelques requêtes puis revenir chercher les
résultats un peu plus tard, il aura probablement du mal à s’y mettre.
15
16
Architecture
PARTIE 3
Connectivité et réseau
La connectivité et le réseau relient les outils d’arrière-plan (back room) et les outils frontaux
(front room). En règle générale, la connectivité est un composant de l’infrastructure. Étant
donné qu’elle constitue un prérequis à la mise en œuvre de n’importe quel application clientserveur, le travail préparatoire est généralement déjà terminé. La plupart des entreprises
possèdent un réseau local (LAN) ou un groupe de réseaux locaux interconnectés, ainsi qu’une
équipe chargée de les faire fonctionner. Si ce n’est pas le cas dans votre société, il est urgent
de mettre en place un groupe de travail afin d’évaluer les besoins. Plusieurs autres problèmes
de connectivité que vous risquez de rencontrer sont énumérés ci-dessous.
Bande passante
Il est souvent judicieux d’isoler la base de données et les serveurs d’applications sur un réseau
local à haut débit dédié (Ethernet ou FDDI à 100 Mo/s). Cette configuration procure la bande
passante nécessaire au transfert de gros volumes de données avec des performances optimales.
Accès à distance
Si vous avez affaire à des utilisateurs distants, il est entendu que ceux-ci devront pouvoir
accéder à l’entrepôt de la même manière que les utilisateurs locaux. Prévoyez à cet effet une
connexion à large bande passante, fiable, entre le réseau local des utilisateurs distants et celui
qui héberge la base de données et les serveurs d’applications.
La bande passante prend de l’importance en raison de la mutation des outils frontaux. De
nombreux outils permettent à présent de définir un sous-ensemble de données particulièrement
intéressant, de le récupérer et de l’analyser en local. Une telle opération représente un flux de
données descendant assez considérable. Après avoir évalué les besoins, contactez l’équipe
réseau afin de déterminer si la bande passante prévue pour ces connexions est suffisante.
Si vos utilisateurs distants ne sont pas regroupés en réseau local, vous devrez mettre en place
un accès par les lignes téléphoniques. Effectuez des tests de performances poussés et lisez
attentivement le chapitre 12, qui traite de la sécurité.
Passerelles
La plupart des constructeurs de bases de données proposent des passerelles, qui permettent
d’établir des liens avec les bases de données concurrentes et avec les sources de données de
production. La mise en œuvre d’une passerelle sera par exemple très utile pour accéder aux
données localisées dans d’autres base de données de l’entrepôt. Certains middleware offrent
également ce type de connectivité et y ajoutent la possibilité de combiner les données en
provenance de plusieurs sources au moyen de jointures hétérogènes. Ces passerelles ont
tendance à être assez lentes ; elles rendent particulièrement service dans le cadre des importations batch et de recherches dans les petites tables. Faites des tests grandeur nature pour vérifier
qu’elles ne s’effondrent pas.
Transfert de fichiers
Il existe un large éventail de protocoles de transfert de fichiers et de programmes chargés de
les implémenter. Le principal est le protocole FTP (File Transfer Protocol), qui est un utilitaire de transfert de données universel. FTP remonte aux débuts de l’Internet ; il offre des
services de transfert de fichiers entre les ordinateurs reliés à l’Internet, quel que soit leur type.
Infrastructure et métadonnées
CHAPITRE 11
Ses fonctionnalités de base sont l’établissement des connexions entre ordinateurs et le transfert de fichiers séquentiels via cette connexion. L’un des protocoles les plus récents, SSL
(Secure Sockets Layer), émane de Netscape. Il présente l’avantage d’inclure une fonction de
cryptage des données transmises, qui permet de sécuriser les informations sensibles. SSL est
très largement implanté dans le monde Unix, dans lequel il sécurise les transactions entre les
navigateurs Web et les serveurs. SSL a été soumis à l’IETS (Internet Engineering Task Force)
afin qu’il soit déclaré protocole standard.
Connectivité des bases de données
La connectivité des bases de données fait généralement partie de l’offre des outils frontaux.
La plupart des fournisseurs proposent plusieurs possibilités de connexion, dont, pour presque
toutes les bases de données, le mode natif. Il existe toutefois quelques standards en matière de
connectivité de base de données, notamment ODBC (Open Database Connectivity), originellement développé par Microsoft, et JDBC (Java Database Connectivity), initialement conçu
par JavaSoft. ODBC est une méthode standard d’accès aux bases de données qui permet
d’accéder à n’importe quel type de base de données depuis n’importe quelle application.
ODBC insère une couche chargée de traduire les requêtes en provenance de l’application en
commandes compréhensibles par la base de données. Historiquement, ODBC est devenu un
pilote de connectivité de second ordre parce que beaucoup d’implémentations spécifiques
n’ont pas donné d’aussi bons résultats que l’utilisation du mode natif. Toutefois, des pilotes
plus puissants existent aujourd’hui et la popularité d’ODBC augmente. JDBC a profité de
l’évolution d’ODBC et est de plus en plus employé.
Entre-temps, le marché évolue. Microsoft a créé une nouvelle série de standards de connectivité sous le sigle OLE DB, qui promettent d’améliorer encore la connectivité des bases de
données.
Service d’annuaire
Votre infrastructure de réseau doit prévoir des fonctionnalités destinées à attribuer des noms
aux hôtes et à assurer l’indépendance des adresses. Au départ, l’Internet et/ou les intranets
dépendent d’un DNS (Domain Name Service), qui recherche un nom dans une liste et
retourne l’adresse IP (Internet Protocol) correspondante. Cela vous permet d’assigner un nom
à l’adresse IP de votre serveur de base de données et de configurer vos outils frontaux de
manière qu’ils se servent de ce nom. Le nom du serveur est ensuite dynamiquement converti
en adresse IP, celle de l’ordinateur où réside la base de données. Si vous déplacez la base sur
un autre ordinateur, il suffit de modifier l’entrée correspondante dans la liste du DNS. Cette
conversion se produit chaque fois que vous utilisez un navigateur Web pour vous rendre sur
un site quelconque. Lorsque vous tapez www.nomdusite.com, ce nom est converti en adresse IP
par un serveur DNS avant que la demande de page soit envoyée au site concerné.
Il existe des services d’annuaire plus complexes : les annuaires X.500 ou LDAP (Lightweight
Directory Access Protocol). Ils hébergent des informations bien plus riches que les simples
adresses IP. Ils peuvent concerner plusieurs types de données : noms et adresses, adresses email, listes téléphoniques et annuaires de matériel (imprimante, ordinateur, etc.). Ces
annuaires peuvent servir de liste d’inventaire pour le recensement des serveurs, d’annuaire des
utilisateurs pour la mise à disposition des données, de listes de diffusion pour les états standard, etc. Dans le chapitre 12, nous vous incitons à centraliser l’administration de votre configuration (« logons », etc.) au moyen d’un serveur d’annuaire LDAP.
17
18
Architecture
PARTIE 3
Conclusion sur l’infrastructure
Comme nous l’avons vu, l’infrastructure du data warehouse regroupe plusieurs composants :
plate-forme matérielle, connectivité et réseau, poste de travail. Dans chacun de ces trois
domaines, il est nécessaire comprendre les besoins métier et de mettre en adéquation la réponse
à ces besoins. Heureusement, la portée de l’infrastructure s’étend bien au-delà de l’entrepôt de
données. Les nouveaux systèmes opérationnels client-serveur ont des besoins en infrastructure
similaires à ceux des data warehouses ; en conséquence, dans la plupart des cas l’entrepôt de
données peut s’appuyer sur l’infrastructure existante. Cela dit, les questions d’infrastructure sont
très sensibles ; vos décisions se retourneront contre vous si vous avez fait le mauvais choix.
Métadonnées et catalogue des métadonnées
Les métadonnées sont un vaste champ de bataille terminologique. Dans cette section, nous
allons décrire les métadonnées afin de vous aider à les identifier lorsque vous en rencontrerez.
Nous illustrerons par un exemple le rôle de soutien que les métadonnées jouent au sein d’un
entrepôt de données. Enfin, nous décrirons le concept de catalogue de métadonnées et ferons
quelques suggestions relatives au suivi des métadonnées.
Métadonnées : qu’est-ce que c’est ?
Les métadonnées sont un sujet un peu à part dans le monde du data warehouse. Comme nous
ne savons pas exactement en quoi elles consistent ni où elles se trouvent, nous passons beaucoup de temps à en parler, à nous en inquiéter et à nous sentir coupable de ne pas nous en
occuper suffisamment. Il y a quelques années, on a décrété que les métadonnées désignaient
les données relatives aux données. Cette définition imprécise ne nous a pas beaucoup aidés.
La notion s’est cependant peu à peu clarifiée et il est même question, depuis quelque temps,
de « métadonnées de la zone de construction (back room) » et des « métadonnées des outils
frontaux (front room) ». Les métadonnées des outils d’arrière-plan (back room) sont
procédurales ; elles guident les processus d’extraction, de nettoyage et de chargement. Les
métadonnées des outils frontaux (front room) sont plus descriptives et aident les outils de
requête et les générateurs d’états à fonctionner du mieux possible. Bien entendu, les métadonnées procédurales et les métadonnées descriptives se recoupent, mais le fait de les distinguer
ainsi peut aider à mieux les comprendre.
Les métadonnées de la zone de construction (back room) sont censées aider l’administrateur
de la base de données à alimenter l’entrepôt ; elles sont également susceptibles d’intéresser les
utilisateurs qui souhaitent connaître la provenance des informations. Les métadonnées des
outils frontaux (front room) bénéficient essentiellement à l’utilisateur final ; elles ne se
contentent pas de mettre de l’huile dans les rouages des outils : elles constituent aussi une
sorte de dictionnaire de l’activité.
Cependant, ces deux définitions, aussi intéressantes soient-elles, ne donnent pas à l’administrateur de l’entrepôt de données une idée précise de l’intérêt des métadonnées. Essayons donc
de considérer ces dernières selon une perspective de traitement de l’information classique.
Nous devrons :
• élaborer une liste détaillée de toutes les métadonnées ;
• déterminer l’importance de chaque élément ;
• désigner le responsable des métadonnées ;
Infrastructure et métadonnées
CHAPITRE 11
• déterminer un ensemble opérationnel et cohérent de métadonnées ;
• décider s’il convient de développer les outils d’exploitation des métadonnées en interne ou
d’en acheter ;
• stocker les métadonnées dans un emplacement spécifique à des fins de sauvegarde et de
restauration ;
• les mettre à la disposition des personnes qui en ont besoin ;
• veiller à leur qualité, s’assurer qu’elles sont complètes et à jour ;
• les gérer de manière centralisée ;
• décrire toutes ces tâches assez précisément en vue de pouvoir les déléguer.
Un problème subsiste : nous n’avons pas encore vraiment expliqué ce qu’est une métadonnée… Remarquez que le dernier point de la liste ci-dessus n’est pas une métadonnée, mais
une information relative aux métadonnées. Serons-nous amenés à faire appel à des métamétadonnées ? Pour y voir plus clair, élaborons une liste de tous les types de métadonnées
possibles. Celle-ci ne sera peut-être pas exhaustive du premier coup mais nous en apprendra
certainement beaucoup.
Métadonnées des systèmes source
Revenons tout d’abord aux systèmes source : gros systèmes, serveurs autonomes, postes de
travail, fournisseurs de données externes et même Internet. Nous supposerons ici que nous
nous contentons de lire les données source et de les déposer dans la zone de préparation des
données, qui peut se situer sur le site central ou sur un ordinateur en aval.
Structures des sources
• Bibliothèques ;
• schémas des sources ;
• description de structures de données sous la forme de programmes (copy book cobol par
exemple) ;
• schémas de bases propriétaires ou issues de tiers ;
• structure des fichiers des files d’attente d’impression ;
• anciens formats des données gros système archivées ;
• tables et DDL des systèmes source relationnels ;
• feuilles de calcul ;
• bases de données Lotus Notes ;
• graphiques de présentation (Power Point, par exemple) ;
• spécifications des URL (Universal Resource Locator) sources.
Informations descriptives des sources
• Description du responsable de chaque source ;
• description métier de chaque source ;
• fréquence des mises à jour ;
• limitations juridiques à l’exploitation de chaque source ;
• méthodes d’accès, droits d’accès, privilèges et mots de passe associés aux accès aux sources.
19
20
Architecture
PARTIE 3
Information sur les processus
• Plannings des tâches gros système ou du système source ;
• langage d’implémentation de l’extraction : Cobol et JCL, C, Basic, etc. ;
• paramètres des outils d’extraction automatisée (le cas échéant) ;
• résultats de tâches d’extraction, notamment heure exacte, contenu et état d’achèvement.
Métadonnées de la zone de préparation des données
Élaborons maintenant la liste des métadonnées requises pour placer les données dans la zone
de préparation et pour préparer leur chargement dans un ou plusieurs data marts. L’opération
peut être accomplie sur le site central au moyen d’un programme Cobol développé à cet effet
ou à l’aide d’un outil d’extraction automatisée. Il est également possible de stocker les fichiers
séquentiels extraits sans y toucher dans une zone de préparation des données autonome, sur
un ordinateur distinct. En tout cas, nous devons nous préoccuper des métadonnées, notamment des points décrits ci-après.
Information sur l’acquisition des données
• Planification de la transmission des données et résultat de transmissions ;
• utilisation des fichiers au sein de la zone de préparation des données : durée, volatilité et
responsable.
Gestion des tables dimensionnelles
• Définition des dimensions conformes et des faits conformes ;
• spécification des tâches pour les opérations de jointures, d’élimination de champs et de
recherche d’attributs ;
• règles à appliquer aux nouveaux attributs descriptif dans les dimensions changeantes (écrasement, création d’un nouvel enregistrement, création d’un nouveau champ) ;
• attribution d’une clé de substitution à chaque clé de production, prévoyant notamment une
table de correspondance performante pour effectuer cette mise en relation en mémoire ;
• une copie des dimensions de production datant de la veille, à utiliser comme base de DIFF
COMPARE.
Transformation et agrégation
• Spécification du nettoyage des données ;
• optimisation des données et transformations par rapprochement (par exemple, développement des abréviations et ajout de détails) ;
• transformations nécessaires au data mining (par exemple, interprétation des valeurs nulles
et détermination des plages numériques) ;
• schéma cible, flux entre les données source et cible, responsable des données cible ;
• scripts de chargement du SGBD ;
• définitions des agrégats ;
• statistiques d’utilisation des agrégats, statistiques d’utilisation des tables de base et agrégats
possibles ;
Infrastructure et métadonnées
CHAPITRE 11
• journaux des modifications d’agrégats.
Audit, journaux des tâches et documentation
• Traçabilité des données et audit des enregistrements (d’où provient exactement cet enregistrement et de quand date-t-il ?) ;
• journaux d’exécution des transformations des données, synthèse des résultats et heures des
exécution ;
• numéros de versions des logiciels de transformation des données ;
• descriptions métier du processus d’extraction ;
• mesures de sécurité associées à l’extraction des fichiers, aux logiciels d’extraction et aux
métadonnées d’extraction ;
• mesures de sécurité associées à la transmission des données (mots de passe, certificats) ;
• journaux d’archivage de la zone de préparation des données et procédures de restauration ;
• mesures de sécurité associées à l’archivage de la préparation des données.
Métadonnées SGBD
Après avoir transféré les données dans le SGBD du data warehouse ou du data mart, un autre
groupe de métadonnées entre en scène :
• contenu des tables du SGBD ;
• paramètres de partitionnement ;
• index ;
• spécifications de répartition des données sur plusieurs disques ;
• priorités de traitement
• droits et privilèges d’accès au SGBD ;
• définition des vues ;
• procédures stockées et scripts d’administration SQL ;
• état des sauvegardes du SGBD, procédures de sauvegarde et sécurité des sauvegarde.
Métadonnées des outils frontaux (front room)
Du côté des outils frontaux (front room), les métadonnées se multiplient à l’infini :
• noms et descriptions utilisateur des colonnes, des tables et des regroupements ;
• définitions des requêtes et des états prédéfinis ;
• paramètres des outils de spécification des jointures ;
• spécification des outils d’impression (attribution de noms clairs aux champs) ;
• documentation destinée à l’utilisateur et support de formation (élaboré à la fois par le constructeur et le service informatique) ;
• profils des privilèges utilisateur dans la sécurité réseau ;
• certificats d’authentification de la sécurité réseau ;
21
22
Architecture
PARTIE 3
• statistiques d’utilisation relatives à la sécurité réseau : tentatives de connexions, tentatives
d’accès et état des ID utilisateur par localisation ;
• profils utilisateur individuels reliés aux ressources humaines pour le suivi des événements
qui affectent les droits d’accès (promotions, transferts, démissions) ;
• liaisons avec les sous-traitants et les partenaires impliquant des droits d’accès ;
• tableau de l’utilisation et des accès aux données, tables, vues et états ;
• statistiques pour la refacturation des ressources ;
• sites Web favoris (un paradigme de l’accès pour tous les data warehouse).
Vous comprenez maintenant pourquoi nous ne savions pas exactement ce que représentaient
les métadonnées ! Elles englobent tout, sauf les données elles-mêmes, et les données semblent
soudain être la composante la plus simple de l’ensemble. Les métadonnées sont en quelque
sorte l’ADN du data warehouse. Elles décrivent les éléments et la façon dont ils coopèrent.
Alors que cette liste vous a présenté les métadonnées sous un angle descriptif ; nous allons à
présent les observer en pleine action.
Exemple de métadonnées dynamiques
La tâche qui consiste à collecter et à maintenir les métadonnées n’est pas une fin en soi. Les
métadonnées sont au data warehouse ce que la documentation est aux systèmes traditionnels ; du
coup, on a facilement tendance à les délaisser au profit de projets plus urgents. Les métadonnées
dynamiques tentent de résoudre ce problème. Ces métadonnées pilotent les processus ; ce
faisant, elles produisent de la documentation, qui est en fait une sorte d’effet secondaire fortuit.
Étudions le fonctionnement de ce processus en parcourant le graphique d’un flux des métadonnées simple. Vous avez d’abord besoin d’un modèle de données du data warehouse.
L’opération est techniquement simple si vous recourez à un outil de modélisation standard. La
plupart de ces outils sont fonctionnels en amont et en aval ; vous pouvez donc les utiliser pour
extraire les métadonnées des bases de données existantes. Créez des modèles logiques et
physiques incluant les noms logiques (métier) des colonnes, leur nom physique, leur description métier, des exemples de valeurs et des astuces de requêtes. Une fois votre modèle construit, enregistrez-le dans la base de données relationnelle prévue dans l’outil pour le stockage
des métadonnées. L’étape 1, figure 11.3, illustre ce processus.
Ajoutez ensuite quelques métadonnées de préparation des données (data staging) à ce flux. Les
modèles de data warehouse élaborés à l’étape 1 apportent les informations nécessaires à l’identification des cibles du processus de préparation. L’outil de préparation des données doit également connaître les sources. L’étape 2 consiste donc à capturer les définitions des sources.
Comme nous l’avons déjà précisé, il peut aussi bien s’agir, par exemple, de fichiers séquentiels
que de bases de données sur gros système. Généralement, l’outil de préparation des données
dispose d’un moyen intégré de capturer ces informations, dont il a impérativement besoin. Lors
de l’étape 3, nous utilisons l’outil de préparation pour injecter les définitions des tables et pour
établir les rapprochements entre les sources et les cibles. Cette étape est également celle de la
capture des informations relatives aux transformations susceptibles de se produire au cours du
processus de préparation. Si vous disposez d’un bon outil de préparation, celui-ci potentialisera
les métadonnées que vous avez déjà créées au niveau des tables cibles lors de l’étape 1.
Enfin, lors de l’étape 4, nous allons enregistrer tout cela dans le modèle de stockage ouvert
relationnel de l’outil de préparation des données. La figure 11.4 illustre cette opération.
Infrastructure et métadonnées
CHAPITRE 11
Figure 11.3
Capture des modèles
de données de l’entrepôt.
Outil de
modélisation
(1) Modèle de
l’entrepôt
Catalogue des métadonnées
Modèle
physique
Modèle
logique
Figure 11.4
Capture de la définition
des sources et rapprochement avec les cibles.
Outil de
modélisation
(1) Modèle de
l’entrepôt
Catalogue des métadonnées
Modèle
physique
(2) Définitions
des sources
Modèle
logique
Définitions
des sources
Rapprochements
source/cible
(3) Définitions
des tables
Systèmes
source
(4) Rapprochements
source/cible
Outil de
préparation
des
données
23
24
Architecture
PARTIE 3
Notez que le processus de création de ces rapprochements, à l’étape 3, consiste essentiellement à définir des relations entre des métadonnées existantes. Le plus gros du travail a été
accompli lors de la construction du modèle de données ; nous pouvons mettre en place autant
de rapprochements que nous le souhaitons et les stocker dans le catalogue des métadonnées.
Lorsque toutes ces définitions sont complètes, nous pouvons commencer à charger les
données, comme le montre la figure 11.5. Au cours de l’étape 5, l’outil de préparation des
données interroge les métadonnées afin de récupérer les informations requises : type et
localisation des données source, type et localisation des données cible, rapprochements
entre les deux.
Figure 11.5
Étapes 5 à 8 :
extraction, transformation et chargement.
Outil de
modélisation
(1) Modèle de
l’entrepôt
Catalogue des métadonnées
Modèle
physique
(2) Définitions
des sources
Modèle
logique
Définitions
des sources
Rapprochements
source/cible
(3) Définitions des tables
(5) Informations de
rapprochement et
de transformation
Systèmes
source
(6) Données extraites
(4) Rapprochements source/cible
(8) Statistiques de chargement
Outil de
préparation
des
données
(7) Données transformées
(5a) Informations physiques
(tablespaces, etc.)
Data
warehouse
Infrastructure et métadonnées
CHAPITRE 11
Nous pouvons également interroger la base de données cible au cours de l’étape 5a pour récupérer des informations sur l’état physique du système, notamment sur l’espace disque disponible. Au cours de l’étape 6, nous procédons à l’extraction proprement dite des sources de
données brutes et dans l’étape 7, nous chargeons les données transformées dans l’entrepôt.
L’étape 8 capture des statistiques et des informations de surveillance relatives à la charge et
les enregistre dans le catalogue des métadonnées.
Nous avons donc réussi à charger des données ; les utilisateurs brûlent d’impatience de les
exploiter, mais il faudrait qu’ils disposent d’indications sur leur contenu. Heureusement,
l’ensemble des informations de l’entrepôt est décrit dans le modèle des données. Tout y est :
nom des colonnes et des tables, descriptions et exemples de valeurs. Toutefois, avant d’ouvrir
grand les portes, il convient de donner à l’entrepôt un abord plus « métier ». Une liste des
tables et des colonnes classées par ordre alphabétique ne suffira pas, car l’utilisateur raisonne
en types d’activités et non par ordre alphabétique… Les regroupements à opérer découlent de
la table des faits. Les outils frontaux et les serveurs d’applications permettent habituellement
de générer ces métadonnées.
Les métadonnées utilisateur sont maintenant prêtes ; l’étape 9 montre l’intérêt d’un outil Web
destiné à exploiter les métadonnées. L’utilisateur peut consulter les types d’activités, identifier
les tables qui appartiennent à tel ou tel type d’activité et même consulter leur contenu. En
outre, à l’aide d’un simple outil de recherche, l’utilisateur peut rechercher les noms ou les
descriptions de colonnes et de tables contenant par exemple le mot vente ou le mot recette.
Quand les utilisateurs ont trouvé les données qu’ils recherchent, ils peuvent formuler une
requête et la soumettre à la base de données (étape 10). Remarquez au passage que la requête
s’appuie aussi sur les descriptions physiques des tables et des colonnes, récupérées à l’étape 9,
pour générer la syntaxe correcte. L’étape 11 envoie le résultat à l’utilisateur ; l’étape 12 est
prise en charge par un bon outil de requête capable de générer un certain nombre d’informations relatives à l’utilisation.
Cette progression illustre le rôle central du catalogue des métadonnées dans le contexte d’un
entrepôt de données simple. Vous remarquerez par ailleurs que sur les douze étapes décrites,
seulement trois impliquent les données ; toutes les autres concernent les métadonnées. Remarquez également que, dans certains cas, des composants d’une seule et même métadonnée
apparaissent en différents endroits. Par exemple, le modèle que nous avons créé dans l’étape 1
contient les définitions des tables physiques. L’outil d’accès aux données s’en sert lors du
rapprochement source/cible puis, plus tard, pour transformer et charger les données. Enfin,
l’outil de requête et le serveur d’applications ont besoin de connaître les définitions des tables
physiques pour formuler de bonnes requêtes.
La liste des métadonnées et l’exemple de flux ont finalement réussi à vous donner une vue
d’ensemble de ces fameuses métadonnées. Mais est-il vraiment nécessaire de suivre un tel
cheminement ? Nous pensons que oui. Cette liste de métadonnées est la charpente de votre
entrepôt de données. Le simple fait d’en élaborer la liste apporte une aide. La liste est longue,
mais elle permet d’identifier le type, l’intérêt et le lieu de stockage de chaque métadonnée.
La modération est toutefois de mise. En effet, la plupart de ces métadonnées doivent résider
sur des ordinateurs situés près des lieux où les tâches se déroulent. Les programmes, les paramètres et les spécifications qui pilotent les processus doivent connaître des destinations
certaines et des formats certains, et cela ne va pas changer dans les prochains temps.
25
26
Architecture
PARTIE 3
Outil de
modélisation
(1) Modèle de
l’entrepôt
Catalogue des métadonnées
Modèle
physique
(2) Définitions
des sources
Modèle
logique
Définitions
des sources
Rapprochements
source/cible
(3) Définitions des tables
(12) Statistiques d’utilisation
des requêtes
(9) Descriptions
métier (noms
et contenu
des tables et
des colonnes,
exemples de
valeurs, etc.)
(4) Rapprochements
source/cible
(5) Informations de
rapprochement et
de transformation
Systèmes
source
(6) Données extraites
(8) Statistiques de
chargement
Outil de
préparation
des
données
(7) Données transformées
Outils
frontaux
(5a) Informations physiques
(tablespaces, etc.)
(10) États, requêtes
(11) Données
Data
warehouse
Figure 11.6
Rôle des métadonnées dans le pilotage des outils frontaux.
Maintenance du catalogue des métadonnées
Les termes bibliothèque d’information, référentiel, dictionnaire de métadonnées et métabase
de données sont, parmi d’autres, utilisés pour décrire le catalogue des métadonnées. Nous
avons choisi le terme catalogue des métadonnées pour décrire l’ensemble des métadonnées
présentes dans l’entrepôt. Idéalement, ce catalogue devrait être le lieu de stockage unique des
informations qui pilotent des processus dans l’entrepôt. Toutes les procédures internes de
Infrastructure et métadonnées
CHAPITRE 11
l’entrepôt, du modèle initial à la navigation et à l’accès aux données en passant par les extractions récurrentes et les processus de chargement, devraient faire appel au catalogue des métadonnées. Malheureusement, une mise en œuvre aussi parfaite est impossible à l’heure
actuelle ; nous considérerons donc le catalogue des métadonnées comme un concept logique
réparti dans plusieurs emplacements physiques.
ASTUCE
Procurez-vous un outil pour cataloguer et suivre toutes ces métadonnées. Il ne sera probablement pas
capable de lire et d’écrire toutes les métadonnées directement mais, étant donné leur éparpillement, il
vous aidera au moins à gérer.
Il existe heureusement une catégorie d’outils, judicieusement nommés outils pour catalogues
de métadonnées, qui se consacrent à cette tâche. Le site Web de Larry Greenfield en fournit
une liste intéressante à l’adresse http :/pwp.starnetinc.com/larry/catalog.html.
L’équipe du data warehouse doit envisager l’acquisition d’outils de maintenance en vue
d’administrer les métadonnées du catalogue non gérées par les outils et les services en place.
Par exemple, les commentaires saisis par les utilisateurs, les hiérarchies personnalisées ou les
spécifications qui accompagnent les data marts personnels peuvent ne pas être pris en charge
par les produits existants et nécessiter la mise en place d’un service spécifique.
Dans l’environnement du catalogue des métadonnées, une autre fonctionnalité pourra être
mise en œuvre afin de créer des RPC (Remote Procedure Calls), qui procureront aux systèmes
source et aux outils de navigation un accès direct aux métadonnées.
Enfin, les services de préparation et d’accès aux données doivent être en mesure d’exploiter
les métadonnées relatives à la sécurité. Celles-ci doivent être développées et maintenues au
moyen d’un outil ou d’une fonction quelconque. Il s’agit d’ajouter et de supprimer des utilisateurs et des groupes d’utilisateurs, d’assigner des droits d’accès à ces utilisateurs et à ces
groupes, etc. Ces métadonnées doivent également être intégrées aux tables de sécurité de la
plate-forme de la base de données (encore des métadonnées !).
La maintenance du catalogue des métadonnées implique un certain nombre de fonctions et de
services :
• intégration et fusion des informations du catalogue (depuis le modèle de données vers la
base de données, puis vers les outils frontaux) ;
• administration des métadonnées (suppression des entrées inutilisées ou obsolètes) ;
• capture des métadonnées existantes (DDL du gros système ou autres sources) ;
• gestion et présentation de graphiques et de tableaux illustrant le contenu du catalogue des
métadonnées (le navigateur de métadonnées) ;
• maintenance des profils utilisateur au profit des applications et de la sécurité ;
• sécurité du catalogue des métadonnées ;
• gestion locale ou centralisée du catalogue des métadonnées.
Ayant pris les premières dispositions pour regrouper et contrôler nos métadonnées, pouvonsnous espérer nous tourner vers des outils encore plus puissants qui rassembleront les métadonnées en un lieu unique et qui seront capables de les lire et de les écrire ? Ce type d’outil nous
apporterait une interface utilisateur uniformisée, appréciable dans un cadre aussi disparate, et
nous permettrait en outre de prendre des instantanés cohérents de toutes les métadonnées d’un
seul coup (puis de les sauvegarder, de les sécuriser et de les restaurer en cas de besoin).
27
28
Architecture
PARTIE 3
À notre avis, ce type d’outil n’est pas près d’inonder le marché. Le problème est très
complexe ; la prise en compte de toutes les formes de métadonnées requiert un type d’intégration entre les systèmes qui n’existe pas encore. Nous sommes convaincus que la Metadata
Coalition (un groupe de constructeurs qui s’est attelé à la résolution du problème des métadonnées) réalisera des progrès intéressants dans la définition d’une syntaxe et d’une sémantiques communes pour les métadonnées. Signalons toutefois que ce groupe a vu le jour en
1995… Malheureusement, Oracle et Microsoft, qui sont les deux grands du SGBD, ont décidé
de ne pas s’associer à cette initiative et ont fait la promesse de publier leurs propres standards
de métadonnées propriétaires. Si les avantages de ces standards sont assez importants pour
attirer d’autres fournisseurs, nous pouvons espérer que le problème des métadonnées sera
résolu une bonne fois pour toutes.
Conclusion sur les métadonnées
Les métadonnées sont le nœud gordien du data warehouse, mais Alexandre et son épée ne sont
pas encore en vue. Comment faire face en attendant ? Voici quelques mesures qui vous
permettront au moins de desserrer un peu le nœud :
• Insistez lourdement pour que les fournisseurs choisis proposent des fonctionnalités
d’échange ouvert des métadonnées.
• Prenez en charge les points faibles à l’aide d’utilitaires simples qui vous aideront à copier
les métadonnées depuis leurs sources vers les emplacements où vous en aurez besoin et à
administrer les tâches de gestion des métadonnées les plus répétitives.
• Le reste devra être fait « manuellement ». Élaborez le catalogue de vos métadonnées afin de
pouvoir les maintenir correctement. Vous opérerez une migration vers le catalogue des
métadonnées intégré lorsque celui-ci fera son apparition. Rappelez régulièrement à vos
fournisseurs qu’ils se sont engagés à travailler sur l’échange ouvert des métadonnées.
En résumé
L’infrastructure et les métadonnées sont les fondations du data warehouse. Une infrastructure
insuffisante ou des métadonnées trop limitées et négligées risquent d’affaiblir l’entrepôt entier.
Il ne sert à rien de produire des données parfaites si vous ne parvenez pas à les acheminer
jusqu’au poste de travail de l’utilisateur sous une forme fiable, compréhensible et prévisible.
Téléchargement