Bonjour,
Je cherche à remplir ma base de données Mysql. J'ai le schéma dimensionnel suivant:
J'ai donc toutes les clés étrangères des tables de dimension dans la table de fait du milieu.
Maintenant j'ai un fichier CSV pour chaque thème qui contient toutes les infos pour peupler les tables.
Disons que excel1.csv correspond au thème theme1 et excel2.csv correspond au thème theme2.
Les thèmes, régions,département, mois sont déjà fixes donc j'ai déjà rempli les tables:
par exemple la table Theme:
idTheme | Theme
1 | Theme1
2 | Theme2
la table Region:
idRegion | Region
1 | IDF
2 | Nord
3 | Bretagne
la table département:
idDepartement | idRegion | Departement
1 | 1 | Essonne
2 | 1 | Paris
3 | 1 | Seine Et Marne
4 | 2 | Pas de Calais
5 | 2 | Picardie
6 | 3 | Calvados
7 | 3 | Finistère
la table Annee:
idAnnee | Annee
1 | 2013
2 | 2014
3 | 2015
la table Mois
idMois | idAnnee | Mois
1 | 3 | Janvier
2 | 3 | Février
3 | 3 | Mars
4 | 3 | Avril
5 | 3 | Mai
6 | 3 | Juin
Maintenant prenons le fichier CSV excel1.csv correspondant au theme1 :
NOM/Region/Departement/Mois/Poids
Adrien/IDF/Paris/Février/85
Louis/IDF/Paris/Janvier/84
Charles/Bretagne/Finistère/Janvier/90
...
Je sais comment remplir ma table Client grâce à la transformation tMap dans Talend.
J'obtiens:
idClient/NOM/Poids
1/Adrien/85
2/Louis/84
3/Charles/90
Et je veux que ma table des faits contienne :
idTheme/idDepartement/idClient/idMois
1/2/1/2
1/2/2/1
1/7/3/1
càd contenant les clés étrangères des autres tables.
Voila: Je sais remplir les tables de dimension (la plupart sont remplies initialement sauf la table de client que je remplis grâce à tMap) mais j'aimerai pouvoir remplir correctement la table de faits.
Par exemple prenons la première ligne du fichier csv :
Adrien/IDF/Paris/Février/85
Il faut aller chercher l'idClient correspondant a Adrien, aller chercher dans la table Département le département correspondant a IDF/PAris et renseigner 2, pareil pour le mois... ?
Une idée ??
Merci
Partager