1

sqoop インポートを使用して、MySQL から HBase にデータを移行しようとしています。私が使用しているコマンドは次のとおりです。

sqoop import --connect jdbc:mysql://hostname/database --username username -P
--query 'SELECT * FROM logs WHERE $CONDITIONS' --split-by log_id -m 4
--hbase-table logs --column-family cf --hbase-create-table

問題は、マップ数を増やすと実行時間が長くなることです。マッパーを増やして並列処理を行うので、理想的には実行時間が実際に減るはずです。

これがパターンです

マップ数 時間(秒)
    1 16
    2 20
    4 29
    8 51
    10 55
    16 82
    25 122


上から見ると、マッパーが 1 人しかいない場合に最も時間がかかりません。何が原因でしょうか?どんな助けでも大歓迎です。
私のクラスターは、namenode と 2 つの datanode で構成されています。

4

1 に答える 1