Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Introduction
1. L’intégration ou alimentation de données
2. L’extraction de données
3. La préparation, transformation et contrôle des données
4. Le chargement et le transfert des données
5. Les questions essentielles pour aborder un projet ETL
Critères comparatifs
1. Le projet et l’existant
2. Description de la solution
3. Architecture de la solution
4. Accès aux données
5. Déclenchement des processus
6. Traitement des données
7. Outil de développement des chaînes de traitement
8. Développement avancé
9. Administration
10. Ordonnancement
11. Sécurité
12. Divers
1. L’Intégration ou alimentation de
données
Les outils ETL gèrent toutes les étapes de la collecte des données au sein des systèmes
d'information hétérogènes : SGBD, ERP, applications spécifiques, fichiers plats, bases
hiérarchiques..., depuis le nettoyage des données collectées, la consolidation et la mise en
concordance des données éparses jusqu’à leur distribution auprès des applications cibles ou
des systèmes décisionnels (analyse, tableau de bord...).
Le processus ETL est une opération de migration de données qui consiste aussi à augmenter la
valeur ajoutée de l’information et à la rendre aisément consommable. Ce processus représente
une part majeure des traitements et nécessite une attention régulière tout au long du cycle de
vie du système, dans la mesure où il est garant de la qualité des données.
On évoque des ratios atteignant jusqu’à 35 % du budget total du projet pour la maîtrise de ce
processus et 70 % des coûts et du temps dans sa réalisation1. De nombreux facteurs ont une
incidence sur ces chiffres : l’hétérogénéité de l’environnement, la complexité des règles de
gestion pour la conversion et le contrôle des données sources et enfin la réactivité attendue du
système.
Le processus ETL doit aussi s’effectuer périodiquement. La cible doit donc être optimisée en
terme de temps de réponse (agrégats, rapprochements, redondances) et cela détermine la
façon dont le processus de transformation doit être effectué.
1
Cité dans l’ouvrage de Jean-Michel Franco et Sandrine de Lignerolles : Piloter l’entreprise grâce au datawarehouse (Eyrolles 2000)
En matière de rafraîchissement, l’idéal est de ne recharger la base cible qu’avec des données
modifiées ou ajoutées depuis la dernière extraction. Certains outils fournissent une
fonctionnalité qui optimise la phase d’extraction : le change data capture.
De même, s’il est nécessaire de relancer une extraction, l’idéal est de ne pas devoir solliciter à
nouveau les données sources d’autant que les données d’origine risquent de ne plus y être
présentes, il est donc souhaitable de disposer d’une couche de stockage des données avant
transformation : l’Operational Data Store (ODS) que certains outils intègrent dans leur
gestion de flux. L’ODS permettra aussi de s’affranchir de certaines contraintes de temps en
limitant la durée réelle de mobilisation de la source (production).
3- La préparation, transformation et
contrôle des données
Les bases sources sont organisées dans un format répondant aux besoins d’une application. Ce
format n’a que peu de chances d’être compatible avec celui d’une autre application. Les
données rendues accessibles puis acquises dans la phase extraction doivent donc être
transformées.
Il s'agit d'un pré-traitement incluant la mise en correspondance des formats de données, le
nettoyage, la transformation et l'agrégation.
L’étape de contrôle s’effectue par application de règles adaptées sur les flux de données
entrant. Bien souvent les incohérences ne sont découvertes que dans cette phase.
Les ETL sont des ateliers spécialisés dans la migration de données. La transformation des
données est leur fonctionnalité principale. Ils doivent fournir une fonction permettant de
vérifier qu’une donnée est cohérente par rapport aux données déjà existantes dans la base
cible. Ils doivent aussi fournir d’excellents outils pour convertir les données (par exemple un
langage ou une interface graphique de description de transformation).
Enfin, ils doivent être conçus pour manipuler de gros volumes de données.
• Définir les règles structurelles et temporelles : Quelles données vont où ? Quand faut-il la
mettre à jour ?
Critères comparatifs
1. Le projet et l’existant
2. Description de la solution ETL
3. Architecture de la solution ETL
4. Accès aux données
5. Déclenchement des processus
6. Traitement des données
7. Outil de développement des chaînes de traitement
8. Développement avancé
9. Administration
10. Ordonnancement
11. Sécurité
12. Divers
Quelles sont les normes que vous allez mettre en oeuvre à l’avenir ?
Quelle fenêtre de temps machine est disponible pour l’exécution des traitements ?
Autres contraintes :
q Ressources
q Environnement
q Autres
q AS/400
q Btrieve
q Codé en EBCDIC
q CopyBook COBOL
q D L/1
q Image
q IMS
q Fichiers VSAM/ISAM
q Fichier Excel
q Fichier Lotus
Les ERP :
q BAAN
q JD Edwards
q Navision
q Oracle
q PeopleSoft
q Sage
q SAP - Quels modules ?
q Siebel
q Autres
La business intelligence :
q Business Objects
q Brio Software
q Cognos
q Crystal Report
q Hummingbird BI
q Oracle Discoverer
q SAS
q Autres
Les ETL/EAI :
q Non
q Oui, lesquels :
Les MOM :
q Non
q Oui, lesquels :
Quelle volumétrie est-elle envisagée pour les traitements les plus lourds/complexes ?
q Aujourd’hui. Détailler
q A terme. Détailler
Version :
Plates-formes :
q Moteur
q Designer
q Autres
JDBC (id) ?
q Non
q Oui, quelles versions ?
Natif (id) ?
q Non
q Oui, quelles versions ?
Utilise-t-il une grammaire étendue pour tirer profit des fonctions spécifiques aux bases ?
q Non
q Oui
JMS :
q Non
q Oui
Autres :
Polling POP/MAPI :
q Non
q Oui
Le produit permet-il le transcodage par une table de référence incluse dans la solution ?
q Non
q Oui
Permet-il de réutiliser les scripts pl/sql, dts, stored procs, etc. , existants ?
q Non
q Oui
Une requête est-elle possible dans le produit en cours de développement pour voir les données ?
q Non
q Oui
Quelles sont les compétences requises pour développer les chaînes de traitement ?
8. Développement avancé
Le moteur du produit dévoile-t-il des API permettant l’intégration de chaînes de traitement
dans les développements externes ?
q Non
q Oui, lesquels ?
Permet-il de définir un process qui peut s’appliquer sur n sources (sans dupliquer le process) ?
q Non
q Oui
Permet-il le versionning ?
q Non
q Oui
9. Administration
Le produit contient-il une console d’administration ?
q Non
q Oui
10. Ordonnancement
Le produit comporte-il une solution d’ordonnancement propriétaire ?
q Non
q Oui
11. Sécurité
Le produit peut-il utiliser les droits d’un annuaire ?
q AD
q Kerberos
q LDAP
q NIS
q NTLM
q Autres
12. Divers
L’interface du produit est-elle multilingue ?
q Non
q Oui
Si Oui, le(s)quel(s) ?