2016-10-05 76 views
2

可以用來優化sqoop導入的技術有哪些?我曾嘗試使用按列拆分來啓用並行性,並根據表的數據量增加了映射器的數量。從FIFO改爲Fair Scheduler會有幫助嗎?提前致謝!如何優化Sqoop導入?

sqoop import -D mapred.job.queue.name=$queuename -D mapred.job.name=$table_SQOOP_INITIAL_LOAD -D java.security.egd=file:/dev/../dev/urandom -D mapred.child.java.opts=" -Djava.security.egd=file:/dev/../dev/urandom" --driver com.teradata.jdbc.TeraDriver --connect jdbc:teradata://${sqoopSourceServer}/DATABASE=${sqoopSchema} --username ${sqoopUsername} --password ${sqoopPassword} --hive-import --hive-overwrite --hive-drop-import-delims --null-string '\\N' --null-non-string '\\N' --table "$table" --num-mappers 50 --split-by column --target-dir ${hdfsTargetDirectory}$table --hive-table ${hive_database}.$table 
+0

選中此http://www.xmsxmx.com/performance-tuning-data-load-into-hadoop-with-sqoop/ – BruceWayne

回答

1

我還沒有嘗試過,但我在書本上讀過
對於某些數據庫,你可以通過使用--direct 參數利用直接模式:

sqoop import \ 
--connect jdbc:mysql://mysql.example.com/sqoop \ 
--username sqoop \ 
--table cities \ 
--direct 

希望這幫助

+0

謝謝Bhavesh!你是對的。但是,我認爲它的供應商具體。 – Holmes

+0

如果你喜歡我的回答投票:) – Bhavesh

0

下面是Sqoop的一些常見性能改進技術

  • 分通過和邊界查詢
  • 直接
  • 取尺寸
  • NUM映射器

    reference link