2017-07-26 9 views
0

私は外部と内部のテーブルをgreenplumに持っています。外部テーブルがcsvファイルをhdfsで指しています。 Hdfsのこのcsvファイルは毎時間テーブルの完全なデータを読み込みます。 greenplumの内部テーブルにインクリメンタルにデータをロードする最適な方法は何ですか?greenplumのインクリメンタルロード

+0

これは、SLAに依存し、どのくらいの時間がgphdfsを使用して、テーブル全体をロードするのにかかります。切り詰めと挿入が最良の方法かもしれません。 insert into target_table select * from external_tableここで、column> 'value'が最適な方法です。または、負荷ごとに外部表を動的に作成する必要があります。 –

+0

gphdfsを使用してチェックしたところ、外部テーブルのデータ全体を高速に読み込むことができます。ただし、テーブル全体を切り捨てるのではなく、Greenplumで増分ロードを実行したいと考えています。 – vkumar

+0

あなたはあなた自身の質問にちょうど答えたと思います。 –

答えて

0

greenplumのディメンションテーブルを作成します。タイムスタンプやデータポイントのように以前ロードした場所の最後に格納します。

上記のディメンション表を使用すると、新しいファイルが到着するたびにevryを1時間実行し、stage/extrenalテーブルにロードされ、最後にロードされたパラメータがディメンションテーブルからロードされます。関連する/新しいレコードのみを処理します。

おかげで、 ショブハ

+0

https://stackoverflow.com/help/how-to-answerをお読みください –

関連する問題