Zone E : Extraction
Définition : Base de données d'extraction
La BDE[1] est une BD[2] relationnelle destinée à implémenter la zone d'extraction d'un ETL, pour offrir un unique point d'accès à l'ensemble des sources de données.
La BD est composée de :
tables permettant de rapatrier les données à importer depuis des sources externes ;
et de vues pour se connecter à des sources dynamiques situées dans la même BD.
Méthode : Les fichiers CSV
Les données situées dans des fichiers CSV doivent :
être rapatriées sur un ou des serveurs accessibles depuis la BDE ;
importées dans la BDE : une table pour chaque fichier.
Il faudra automatiser le processus de copie des fichiers si les données sont susceptibles d'être mises à jour.
Remarque : Tables externes
Certains SGBD, comme Oracle, propose une alternative à l'import, grâce à un concept de table externe qui permet de lier dynamiquement une définition de table à un fichier CSV.
Méthode : Les autres fichiers : tableurs, XML...
Pour les fichiers autres que CSV, deux solutions sont à étudier :
soit votre BDE offre une API d'accès direct à ces formats ;
soit le fichier est transformé en CSV.
Dans le second cas, il faudra automatiser la transformation si le fichier est susceptible de mises à jour.
Méthode : Les données stockées en BD
Pour les données stockées en BD, trois solutions sont à étudier :
si la BDE et la BD source sont sur le même SGBD, on créé simplement une vue ;
sinon, lorsque c'est possible on établit un lien dynamique entre la BDE et les tables sources (propriétaire, ODBC ou JDBC) ;
sinon, on fait un export de la BD source dans un fichier CSV (en gérant l'automatisation de l'export lorsque la base est vivante).
Méthode : Gestion des contraintes
Les contraintes doivent être relâchées au maximum dans la BDE pour assurer que les données sources seront toutes correctement accessibles.
On veillera à avoir correctement documenté les contraintes connues, notamment pour les données provenant de SGBD dans lesquels ces contraintes sont formalisées dans le schéma.