zoukankan      html  css  js  c++  java
  • sqoop 使用

    安装配置好之后,就可以使用啦。注意,需要自己将jdbc的jar包放到sqoop的lib目录下。

    1.将数据从sqlserver导出到hdfs:

     sqoop import --connect 'jdbc:sqlserver://192.168.68.90:1433;username=sa;password=sa;database=Feedback' --table user_info  --split-by 'id'   --fields-terminated-by ‘	’  --warehouse-dir /Feedback

    导出的结果存在了hdfs的:

     /Feedback/user_info/ part-m-00000

     /Feedback/user_info/ part-m-00001

     /Feedback/user_info/ part-m-00002

     /Feedback/user_info/ part-m-00003

    等文件中,文件的内容为:

    1 abc
    2 sdfasdf
    3 zhangsan
    4 lisi

    其实 是不可见字符,为了描述出来,我就将它写了出来,在浏览hdfs的文件的时候,是看不到它的。

    这个脚本中带了一个参数:

     --split-by 'id'

    这个'id'是表的主键,如果该表没有主键,则不能使用并行导入,需要指定并行导入的任务数为1:

      --m 1

    官方是这么解释的:

    -m,--num-mappers <n>     Use n map tasks to import in parallel

    导入的脚本就得这么写了:

    sqoop import --connect 'jdbc:sqlserver://192.168.68.90:1433;username=sa;password=sa;database=Feedback' --table user_info  --fields-terminated-by '	' -m 1  --warehouse-dir /Feedback

    这样的job的map数只有1.所以输出文件也就只有一个了。

  • 相关阅读:
    JavaWeb 输出九九乘法表,三角形,菱形
    模拟ATM机将输入的数据插入数据库
    JDBC连接数据库
    执行动态语句
    python深拷贝和浅拷贝
    redis数据库操作
    pymysql数据库操作
    linux 从Python 2.7升级至Python3.6.1
    模块---常用模块
    模块---安装模块
  • 原文地址:https://www.cnblogs.com/sixiweb/p/3372448.html
Copyright © 2011-2022 走看看