用Talend填充事实表
我需要填充我的MySQL表。我有以下维度模式。用Talend填充事实表
我所有的外键在事实表。
我有每个主题的CSV文件。 假设excel1.csv对应于thema1,而excel2.csv对应于thema2。
设置了所有主题,地区,部门,mois表。所以我手工填写他们:
例如主题表:
idTheme |主题
1 | Theme1
2 | THEME2
地区表:
idRegion | Region
1 | IDF
2 | Nord
3 |布列塔尼
DEPARTEMENT表:
idDepartement | idRegion | Departement
1 | 1 | Essonne
2 | 1 |巴黎
3 | 1 | Seine Et Marne
4 | 2 |加来海峡
5 | 2 | Picardie
6 | 3 | Calvados
7 | 3 |菲尼斯泰尔
ANNEE表:
idAnnee | Annee
1 | 2013
2 | 2014
3 | 2015年
MOIS表:
idMois | idAnnee | Mois
1 | 3 | Janvier
2 | 3 | Février
3 | 3 |火星 ...
现在我们来看看excel1。csv文件对应thema1(所以idtheme = 1):
名称/地区/部门/月/重量
阿德里安/ IDF /巴黎/ 2月/ 85
路易/ IDF /巴黎/月/ 84
查尔斯/布列塔尼/菲尼斯泰尔省/月/ 90 ...
我知道如何来填补我的客户表感谢TMAP穿越 - 在Talend 我得到:
的clientId/NOM /重量
1 /阿德里安/ 85
2 /路易斯/ 84
3 /查尔斯/ 90
我希望我的事实表是这样的:
idTheme/idDepartement /的clientId/idMois
1/2/1/2
1/2/2/1
1/7/3/1
,使其包含其他维度表的外键。
我知道如何填写维度表(手动大部分的时间和TMAP为客户表),但我想,以填补我的事实表。
硅VOUS具备这种模式在您的数据库,你的表与所有主键和外键创建,但仍然是空的,然后ceate用于填充,从外面开始内部顺序的数据的作业:地区,部门,年份,月,主题,让客户满意。
外键填充像任何其他的射门创作constraint魁EST已定义的表,不宜通过连接数据garenteed。
对于事实表,你需要阅读之前填充尺寸和join各种规模的所有外键。
是的,我知道我必须填写维表,但我的问题是如何?例如 当我填补它的适当区域的目的。然后我需要填写部门,我不知道如何设置它在idRegion因为它是一个外键。 –
@AdriL。更新的答案! – 54l3d
@AdriL。为了更清楚,表的所有字段认为你看到当你做一个选择的数据,针对我们有时候需要加入一些术语称为过期限制领域,国外的关键是数据字段,它的数据不宜存在于提交的主键父表的。 – 54l3d