2017-07-19 11 views
0

sqoop importコマンドの$ conditions節の意義は何ですか?

select col1, col2 from test_table where \$CONDITIONS 
+0

は、参照します。https://sqoop.apache.org/docs/1.4.1-incubating/SqoopUserGuide.html#_selecting_the_data_to_import – skr

+1

はすでに答え:https://stackoverflow.com/a/42331952/3929393は、私を知ってみましょうフォローアップの質問がある場合 –

答えて

2

Sqoopは、Hadoopの並列性を継承することによって、効率的なデータ転送を実行します。

  • Sqoopを並列に を転送することができ、複数のチャンクにクエリを分割しやすくするために、あなたは、クエリのWHERE句で$条件のプレースホルダを含める必要があり 。

  • Sqoop は、この個々のタスクによって転送されるべきデータの部分を と指定した生成条件で自動的に置き換えます。

  • あなたは--num-マッパ1 param- ETERを使用して1つのジョブだけを実行するために、Sqoopを強制することにより、 $条件をスキップすることができますが、このような制限は、パフォーマンスに重大な影響を与えるだろう。例えば

: -

あなたが並行輸入を実行すると、マップタスクは$条件のためで置換異なる値でクエリ を実行します。 1つのマッパー は、「foo WHERE(id> = 0およびid < 10000)からblaを選択」を実行し、次のマッパが「foo WHERE(id> = 10000 AND id < 20000)からblaを選択」を実行する可能性があります。 に。

関連する問題