sqoop数据导入导出--as-parquetfile--num-mappers,需要1.4.6及以上版本

mysql数据导入导出到hdfs

 
  1. mysql导入到hdfs bin/sqoop help import 查看帮助
  2. bin/sqoop import \
  3. --connect jdbc:mysql://hadoop-senior0.ibeifeng.com:3306/study \
  4. --username root \
  5. --password 123456 \
  6. --table my_user \
  7. --target-dir /output1 \
  8. --query 'select id, account from my_user where $CONDITIONS' \
  9. --num-mappers 1 \
  10. --as-parquetfile
  11. 如果没有指定路径会默认存储在/user/beifeng/下面即是用户主目录
  12. ==============================================================
  13. hdfs导出到mysql bin/sqoop help export help查看帮助
  14. bin/sqoop export \
  15. --connect jdbc:mysql://hadoop-senior.ibeifeng.com:3306/test \
  16. --username root \
  17. --password 123456 \
  18. --table my_user \
  19. --export-dir /user/beifeng/sqoop/exp/user/ \
  20. --num-mappers 1
  21. 导出的目录下的文件要以逗号分隔,因为mysql表默认是以逗号分隔的,或者加上一个参数指定输出分隔符,就会以指定的分隔符来区分不同的字段;
  22. 导出到mysql中的表是已存在的

mysql数据导入导出到hive

 
  1. bin/sqoop import \
  2. --connect jdbc:mysql://hadoop-senior.ibeifeng.com:3306/test \
  3. --username root \
  4. --password 123456 \
  5. --table my_user \
  6. --fields-terminated-by '\t' \
  7. --delete-target-dir \
  8. --num-mappers 1 \
  9. --hive-import \
  10. --hive-database default \
  11. --hive-table user_hive
  12. 实质上是首先导入数据到hdfs上,然后用一个load语句加载数据到hive
  13. ===============================================================
  14. bin/sqoop export \
  15. --connect jdbc:mysql://hadoop-senior.ibeifeng.com:3306/test \
  16. --username root \
  17. --password 123456 \
  18. --table my_user2 \
  19. --export-dir /user/hive/warehouse/user_hive \
  20. --num-mappers 1 \
  21. --input-fields-terminated-by '\t'

 

转载于:https://my.oschina.net/sniperLi/blog/751133

你可能感兴趣的:(sqoop数据导入导出--as-parquetfile--num-mappers,需要1.4.6及以上版本)