200,000,000行を超えるフラットファイル(CSV)があり、23個のディメンションテーブルを持つスタースキーマにインポートします。最大のディメンションテーブルには300万行があります。現時点では、1台のコンピューターでインポートプロセスを実行しており、約15時間かかります。時間がかかりすぎるので、40台程度のパソコンを使ってインポートしたいと思います。
私の質問
40台のコンピューターを効率的に利用してインポートを行うにはどうすればよいでしょうか。主な懸念は、すべてのノードでディメンションテーブルを同一にする必要があるため、すべてのノードでディメンションテーブルを複製するのに多くの時間がかかることです。これは、将来、インポートを行うために1000台のサーバーを使用した場合、サーバー間の広範なネットワーク通信と調整のために、単一のサーバーを使用するよりも実際には遅くなる可能性があることを意味します。
誰か提案がありますか?
編集:
以下は、CSVファイルを簡略化したものです。
"avalue";"anothervalue"
"bvalue";"evenanothervalue"
"avalue";"evenanothervalue"
"avalue";"evenanothervalue"
"bvalue";"evenanothervalue"
"avalue";"anothervalue"
インポート後、テーブルは次のようになります。
ディメンションテーブル1
id name
1 "avalue"
2 "bvalue"
ディメンションテーブル2
id name
1 "anothervalue"
2 "evenanothervalue"
ファクトテーブル
dimension_table1_ID dimension_table2_ID
1 1
2 2
1 2
1 2
2 2
1 1