我有6个尺寸表,全部以csv文件的形式出现。我必须使用Python形成星型架构。我不确定如何使用Python创建事实表。事实表(理论上)至少具有一维表共有的列。
如何创建事实表,同时牢记多个维度表中的数量应在事实表中正确对应?
我不允许透露代码或确切数据,但我将添加一个小例子。文件1包含以下列:student_id,student_name。文件2包含:student_id,department_id,department_name,sem_id。最后,文件3包含student_id,subject_code,subject_score。 3维表以csv文件的形式出现。我现在需要事实表包含:student_id,student_name,department_id,subject_code。如何以这种形式形成事实表?谢谢您的帮助。
答案 0 :(得分:0)
您是否要添加您当前停留的任何代码?请添加一个Minimal, Complete, and Verifiable example,包括文件内容和预期输出
答案 1 :(得分:0)
阅读某些博客似乎不是在内存中处理python中此类情况的好方法,但即使下面的帖子使您可以使用cn仍然如此
实际加载
DW加载的第一步是尺寸一致性。稍微聪明一点,上述处理就可以并行完成,这会占用大量CPU时间。为此,每种一致性算法都构成了大型OS级管道的一部分。必须重新格式化源文件的格式,以便为每个维度的FK引用保留空白列。每个一致性过程都将读取源文件并写入相同格式的文件,并填充一维FK。如果所有这些一致性算法都形成一个简单的OS管道,则它们都将并行运行。看起来像这样。
src2cvs源| 1 | conform2 | 3 |加载 最后,您可以使用RDBMS的批量加载器(或使用Python轻松编写自己的加载器)从所有维度FK完全填充的源记录中选择实际的事实值和维度FK,并将其加载到事实中桌子。