1.7.2 La Conception Physique
Pendant le processus de la conception physique, vous
convertissez les données collectées pendant la phase de la
conception logique en une description de la structure physique de la base de
données. Les principaux aspects qui orientent les décisions
relatives à la conception physique sont les performances des
interrogations et la maintenance de la base de données. Le processus de
conception physique consiste à convertir les schémas
prévus en structures de base données réelles. A ce
stade, vous devez associer :
Ø Les entités à des tables ;
Ø Les relatons à des contraintes de clé
étrangère ;
Ø Les attributs à des colonnes ;
Ø Les identifiants uniques à des contraintes de
clé primaire ;
Ø Les identifiants unique à des contraintes de
clé unique ;
1.7.3 Alimentation du Data
Warehouse par les outils ETL
Les données contenues dans un data warehouse sont
issues des différentes bases de données de l'entreprise. Ces
bases de production, systèmes opérants de l'entreprise,
correspondent à l'ensemble des applications informatiques
utilisées au quotidien dans l'entreprise pour son activité
(gestion de production, gestion bancaire, gestion commerciale,...). Les
informations qui y sont stockées, propres à chaque application,
peuvent parfois être utilisées par d'autres programmes, par
l'intermédiaire de transferts de données, couramment
appelés interfaces.
Nous allons donc voir les outils et les méthodes
permettant d'alimenter un data warehouse tout en minimisant l'impact sur les
systèmes de productions.
La majorité des systèmes d'information
d'entreprise sont de nature hétérogène car les
systèmes d'informations de l'entreprise s'élaborent le plus
souvent sur de longues périodes. Bien que la standardisation des
échanges entre les divers outils informatiques avance à grand
pas, la disparité des formats des données en circulation est
toujours une réalité. C'est le principal obstacle technologique
aux échanges d'informations.
Avant d'être utilisables, les données de
l'entreprise doivent être mises en forme, nettoyées et
consolidées. Les outils ETL (Extract, Transform, Load)
permettent d'automatiser ces traitements et de gérer les flux de
données qui alimentent l'entrepôt. Ces outils d'alimentation
permet aussi de paramétrer des règles de gestion, propres
à l'entreprise et à son secteur d'activité. Ces
règles visent elles aussi à assurer la cohérence entre les
données et à ne stocker dans l'entrepôt de données
que des informations préalablement mises en relation les unes avec les
autres.
Les outils ETL font référence à plusieurs
opérations qui s'articulent autour de trois axes majeurs :
Ø Extraction ;
Ø Transform ;
Ø Chargement ;
a. Extraction
L'extraction des données est la
première des étapes des systèmes ETL. Le but de cette
étape, est comme son nom l'indique , la lecture et l'extraction des
données du système source. On imagine facilement que cette
étape s'avère être critique. En effet, dans le cas ou le
système source doit fonctionner en permanence (24h/24 et 7jours sur 7),
il faut que l'extraction, opération coûteuse en ressources, doit
être fait le plus rapidement possible et souvent durant un laps de temps
précis (souvent nommé « extract window »),
décidé en collaboration des équipes chargés de la
gestion et/ou de l'exploitation de ce système source.
La complexité de l'extraction n'est pas dans le
processus de lecture, mais surtout dans le respect de l'extract window. Cette
contrainte est la principale raison de la séparation extraction /
transformation. D'autre part, on essaye au maximum d'extraire seulement les
données utiles (Mise à jour ou ajoutée après la
dernière extraction) et pour ce faire on pourrait s'entendre avec le
responsable du système source pour ajouter soit un flag ou encore des
dates dans chacune des tables extraites, au moins deux dates : Date de
création de l'enregistrement dans la table et la date de mise à
jour (En général la plupart des systèmes sources disposent
de ces deux dates).
Par ailleurs pour ne pas perdre des données suites
à des problèmes d'extraction, il est important de s'assurer que
le système source ne purge pas les données avant que
l'entrepôt ne les ait extraits. Le processus d'extraction est une des
taches ETL les plus consommatrices de temps car, outre la complexité des
différents systèmes source, la détermination exacte des
données à extraire est difficile. De plus, ce processus est
répétitif, parfois dans des intervalles de temps très
rapprochés. La définition du processus d'extraction revient
à choisir une méthode d'extraction des données source, un
processus de transport et un processus de mise à jour de
l'entrepôt (Data Warehouse).
b. Transformation
c' est l'opération qui réalise le
déplacement des données du système source vers le
système cible. Par exemple, le transport s'effectue :
ü D'un système source vers l'entrepôt ou
vers une zone de préparation (zone intermédiaire de
stockage) ;
ü D'une zone de préparation vers
l'entrepôt ;
ü de l'entrepôt vers un Data mart ;
ü etc.
La transformation est la tâche la plus
complexe et qui demande beaucoup de réflexion.
Voici les grandes fonctionnalités de transformation
:
- Nettoyage des données
- Standardisation des données.
- Conformité des données.
- gestion des tables de fait
- gestion des dimensions
- affectations des clés de substitution (surrogate
key)
- gestion de l'évolution lente (Slowly changing
dimension)
- gestion des faits arrivants en retard ( Late arriving
fact)
- gestion des lookups
c. Chargement
Le chargement permet de transférer
les données vers leur destination finale. 3 cas de figures se
présentent, celons l'architecture mise en place.
Ø De charger les données dans
l'entrepôt de données :si la politique retenue a
été de construire un entrepôt de données avec une
base de données, alors les données seront chargées dans
l'entrepôt. Cette approche est proche à celle de Bill Inmon. Il
sera dés lors possible d'utiliser des fonctionnalités analytiques
comme Oracle le permet.
Ø De les charger dans des cubes de
données la deuxième possibilité est de
charger les données directement dans des cubes de données sans
les stocker dans un DW. Cette approche est certainement la plus proche à
celle de Ralph Kimball. Un bon exemple est l'utilisation directe des cubes de
données.
Ø le mode hybride :la
troisième possibilité est celle qui offre le plus d'avantages
mais demande par contre plus d'effort. Le chargement des données
s'effectue à la fois sur le data warehouse et les data marts
: Un premier chargement des données dans un
entrepôt de données.
Un deuxième chargement dans des cubes de
données : par contre cette approche ajoute une charge de travail
très considérable pour l'équipe de développement
(Aucun impact sur les utilisateurs) :Une base de données à
créer et à maintenir,un exercice de réflexion sur le
modèle de données du data warehouse, un autre exercice de
réflexion sur le modèle des méta-données.
Ø La transformation de données consiste
à :
Ø la constitution des historiques ;
Ø l' homogénéisation des nomenclatures
des différentes sources ;
Ø l' i ntégration de données
externes ;
Ø Filtrage, agrégation, mise à la
granularité ;
Ø Nettoyage, suppression d'erreurs.
Le schéma suivant illustre une transformation de
données par étapes successives avec création d'une table
intermédiaire après chaque modification.
Quand au chargement de données, il consiste à
insérer les données dans le Data Warehouse, elles sont ensuite
disponibles pour les différents outils d'analyse et de
présentation que son le Data mining, l'analyse multidimensionnelle OLAP,
les analyses géographiques, les raquetteurs et autres reportings.
|