sqoop2 调研

sqoop简介

sqoop 即 SQL to Hadoop ,是一款方便的在传统关系数据库与 Hadoop 之间进行数据迁移的工具,充分利用 MapReduce 并行特点以批处理的方式加快数据传输,发展至今主要演化了二大版本,sqoop1和sqoop2。

sqoop : clouder 公司开发

sqoop特点

sqoop架构非常简单,其整合了Hive、Hbase和Oozie,通过map-reduce任务来传输数据,从而提供并发特性和容错。

Sqoop 由两部分组成:客户端(client)和服务端(server)。需要在集群的其中某个节点上安装server,该节点的服务端可以作为其他 Sqoop 客户端的入口点。

在 server 端的节点上必须安装有 Hadoop。client 可以安装在任意数量的机子上。在装有客户端的机子上不需要安装 Hadoop。

sqoop 官网 : https://sqoop.apache.org

sqoop2 常用命令

  • 环境

    Command Line shell
    1.99.4-cdh5.3.6
    
  • 模式

    两种模式 communicating with Sqoop 2 server using REST interface

    1. interactive (Interactive mode supports all available commands.)
    2. batch mode

      Sqoop uses unique names or persistent ids to identify connectors, links, jobs and configs
      
      https://sqoop.apache.org/docs/1.99.4/CommandLineClient.html
      
  • show command…

    show version -a
    show server --all
    show driver
    show connector
    show link
    show job
    
  • set command…

    show server --all
    set server --host localhost --port 12000 --webapp sqoop
    set server -h 192.168.**.**
    set option  (set various client side options)
    
  • create link and job

  • 实践经验

    > show version -all 
    Exception has occurred during processing command
    Exception: org.apache.sqoop.common.SqoopException Message:         CLIENT_0001:Server has returned exception
    根本不知道这个提示说什么,通过修改设置:
    > set option --name verbose --value true
    再次执行 show version -all,显示出有用的出错信息:
    

    sqoop:000> show connector

    Id Name Version Class Supported Directions
    1 hdfs-connector 1.99.4-cdh5.3.6 org.apache.sqoop.connector.hdfs.HdfsConnector FROM/TO
    2 generic-jdbc-connector 1.99.4-cdh5.3.6 org.apache.sqoop.connector.jdbc.GenericJdbcConnector FROM/TO

    sqoop:000> create link –cid 2

    属性 Value
    Name First Link
    JDBC Driver Class com.mysql.jdbc.Driver
    JDBC Connection String jdbc:mysql://192.168.xxx.xx:3306/libin_test_db?useUnicode=true&characterEncoding=UTF-8
    Username your username
    Password your password
    entry# protocol=tcp

    sqoop:000> create link –cid 1

    属性 Value
    Name Second Link
    HDFS URI hdfs://nameservice1:8020/

    sqoop:000> show links -all

    sqoop:000> create job -f 1 -t 2

    sqoop:000> update job –jid 1

    sqoop:000> start job –jid 1

    sqoop:000> status job –jid 1

    sqoop:000> stop job –jid 1

  • 调研感悟与结果

    暂时放弃使用 sqoop2,拥有太多的问题难以解决 和 有待解决

    参见 : http://blog.selfup.cn/1510.html

    参见 : http://blog.csdn.net/zhangzhaokun/article/details/44256569

你可能感兴趣的:(数据平台-基础架构)