我们有> 200,000,000行的平面文件(CSV),我们将其导入包含23个维度表的星型模式。最大的维度表有300万行。目前我们在一台计算机上运行导入过程,大约需要15个小时。由于这段时间太长,我们想利用40台电脑等东西进行导入。如何有效地利用10多台计算机导入数据
我的问题
我们怎样才能有效地利用40台电脑做进口。主要担心的是,在所有节点上复制维度表需要花费大量时间,因为它们在所有节点上需要保持一致。这可能意味着,如果我们将来使用1000台服务器进行导入,由于服务器之间广泛的网络通信和协调,它可能实际上比使用单个服务器慢。
有没有人有建议?
编辑:
以下是CSV文件的简化:
"avalue";"anothervalue"
"bvalue";"evenanothervalue"
"avalue";"evenanothervalue"
"avalue";"evenanothervalue"
"bvalue";"evenanothervalue"
"avalue";"anothervalue"
导入后,表是这样的:
dimension_table1
id name
1 "avalue"
2 "bvalue"
dimension_table2
id name
1 "anothervalue"
2 "evenanothervalue"
事实表
dimension_table1_ID dimension_table2_ID
1 1
2 2
1 2
1 2
2 2
1 1
如果无法将问题简化为较小的子问题,则无法从添加的计算机中获益,因为它们都是解决相同问题所必需的。您没有提供关于您的23D映射(或导向它的数据)的性质的足够信息,以便我为您提供除此以外的任何指示。 – jmz 2011-04-12 08:11:44
标记为脱离主题 – 2011-04-12 08:20:54
CVS的大小(以字节为单位)是多少? – ern0 2011-04-20 08:14:00