美文网首页
2018-07-19 sqoop

2018-07-19 sqoop

作者: 江江江123 | 来源:发表于2018-07-19 17:13 被阅读0次

    sqoop:

    数据从传统数据库到到hadoop的导入,导出

    安装:

    1.解压
    2.修改配置文件
    cdSQOOP_HOME/conf
    $ mv sqoop-env-template.sh sqoop-env.sh
    打开sqoop-env.sh并编辑下面几行:
    export HADOOP_COMMON_HOME=/home/hadoop/apps/hadoop-2.6.1/
    export HADOOP_MAPRED_HOME=/home/hadoop/apps/hadoop-2.6.1/
    export HIVE_HOME=/home/hadoop/apps/hive-1.2.1
    3.加入mysql驱动包
    4.检验
    bin/sqoop-version
    正确打印版本安装成功 会有2个warming 但没有影响

    常用操作

    导入hdfs
    bin/sqoop import \ --connect jdbc:mysql://ip:3306/数据库名 \ --username 用户名 \ --password 密码 \ --table 表名 --m 1 导入hive bin/sqoop import --connect jdbc:mysql://ip:3306/数据库名--username root --password root --table emp --hive-import --m 1 条件导入 --connect jdbc:mysql://hdp-node-01:3306/test \ --username root \ --password root \ --where "条件'" \ --target-dir /wherequery \ 导入hdfs的目标文件 --table emp_add --m 1 sql导入 sqoop import \ --connect jdbc:mysql://hdp-node-01:3306/test \ --username root \ --password root \ --target-dir /wherequery2 \ --query 'select id,name,deg from emp WHERE id>1207 andCONDITIONS'
    --split-by id
    --fields-terminated-by '\t'
    --m 1
    从hdfs导出
    bin/sqoop export
    --connect jdbc:mysql://hdp-node-01:3306/test
    --username root
    --password root
    --table emp2
    --export-dir /user/hadoop/emp/

    sqoop作业

    1创建
    bin/sqoop job --create myimportjob -- import --connect jdbc:mysql://hdp-node-01:3306/test --username root --password root --table emp --m 1
    2查看list
    sqoop job --list
    3查看job详情
    sqoop job --show myjob
    4执行某个job
    sqoop job --exec myjob

    导入定制

    生产导入源码
    sqoop-codegen \ --import --connect jdbc:mysql://localhost/userdb \ --username root \ --table emp 修改目标java文件 cd /tmp/sqoop-hadoop/compile/9a300a1f94899df4a9b10f9935ed9f91/

    相关文章

      网友评论

          本文标题:2018-07-19 sqoop

          本文链接:https://www.haomeiwen.com/subject/jzgtmftx.html