2016-10-25 1 views
0

sqoopインポートを使用してMysqlからデータをインポートしたいが、私の要件は4つのマッパーを使用したいが、hdfsターゲットディレクトリに1つのファイルのみを作成するこれを行う方法?複数のマッパーでsqoopインポートを使用して単一ファイルを作成する方法

+0

[フェーズ後に出力ファイルをマージする]の可能な複製(http://stackoverflow.com/questions/5700068/merge-output-files-after-reduce-phase) –

答えて

2

No. sqoopにファイルを1つのファイルに再パーティション化するオプションはありません。

私はこれがsqoopの頭痛であるとは思わない。

hadoopの機能getmergeを使用すると簡単に行うことができます。例:ここでは

hadoop fs -getmerge /sqoop/target-dir/ /desired/local/output/file.txt 

  • /sqoop/target-dirは、あなたのsqoopコマンド(すべての部品ファイルを含むディレクトリ)target-dirです。

  • desired/local/output/file.txtは、単一のファイルです。

0

--num-mappers 1 

をsqoopするには、このオプションを追加sqoopログを示しています。一つのファイルが作成され、HDFS上の

Job Counters 
    Launched map tasks=1 
    Other local map tasks=1 

そして最後に。

関連する問題