• sqoop介绍及安装


    什么是sqoop

    sqoop是一个用来将关系型数据库和hadoop中的数据进行相互转移的工具。例如关系型数据库mysql、oracle等,hadoop数据如hdfs、hive、hbase等。

    sqoop提供了哪些主要功能

    1. 数据导入。如关系型数据库导入到hdfs。
    2. 数据导出。如hdfs数据导出到关系型数据库。
    3. sqoop定时作业。如定时导入导出新数据。
    4. 等等

    sqoop核心技术

    1、生成mapreduce

    sqoop接收用户的请求,通过解析请求,生成mapreduce代码,并打包,将打好的jar包提交给hadoop执行。生成mapreduce代码是sqoop的核心技术,也是数据传输的关键。

    2、作业创建

    定时导入导出新数据的sqoop作业。

    3、数据映射

    关系型数据库字段是有类型的,数据映射可以自动对数据库字段类型和hadoop的类型进行对应。当然也可以自定义类型映射。

    4、并行控制

    采用sqoop集群或者多个任务并行进行数据的导入导出工作。为了提升性能使用的。

    安装

    官网下载sqoop的安装包,此处使用的sqoop2

    # 1.解压
    $ tar -zxf sqoop-1.99.7-bin-hadoop200.tar.gz
    
    $ ls
    bin  CHANGELOG.txt  conf  docs  LICENSE.txt  NOTICE.txt  README.txt  server  shell  tools
    
    # 2.配置sqoop环境变量,增加以下环境配置
    $ vim /etc/profile
    export SQOOP_HOME=/usr/local/app/sqoop/sqoop-1.99.7-bin-hadoop200
    export PATH=$PATH:$SQOOP_HOME/bin
    export CATALINA_HOME=$SQOOP_HOME/server
    export SQOOP_SERVER_EXTRA_LIB=$SQOOP_HOME/extra
    export LOGDIR=$SQOOP_HOME/logs
    
    # 3.在sqoop目录下创建extra和logs目录
    $ mkdir extra logs
    
    # 4.告知sqoop从何处寻找hadoop的配置文件
    $ vi sqoop.properties
    # Hadoop configuration directory
    org.apache.sqoop.submission.engine.mapreduce.configuration.directory=/usr/local/app/hadoop/hadoop-3.1.2/etc/hadoop
    
    # 5.在conf目录下,添加catalina.properties文件。加入本机hadoop的相关jar路径
    # catalina.properties文件内容如下,只要替换hadoop的安装目录就行了
    common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/../lib/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/common/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/common/lib/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/hdfs/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/hdfs/lib/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/mapreduce/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/mapreduce/lib/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/tools/lib/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/yarn/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/yarn/lib/*.jar,/usr/local/app/hadoop/hadoop-3.1.2/share/hadoop/httpfs/tomcat/lib/*.jar
    
    # 6.在SQOOP_HOME/server/lib目录下加入mysql的jar包
    $ pwd
    /usr/local/app/sqoop/sqoop-1.99.7-bin-hadoop200/server/lib
    $ ls mysql-connector-java-8.0.13.jar 
    mysql-connector-java-8.0.13.jar
    
    # 启动sqoop server 服务
    $ sqoop2-server start
    # 进入sqoop交互模式
    $ sqoop2-shell
    
  • 相关阅读:
    去除测序reads中的接头:adaptor
    Python学习_13_继承和元类
    Matplotlib初体验
    Python学习_12_方法和类定制
    python+requests接口自动化测试框架实例详解教程
    typeof与instanceof运算符
    闭包与递归函数的区别
    添加SSH
    AndroidStudio常用快捷键总结
    git新建分支
  • 原文地址:https://www.cnblogs.com/mengHeJiuQIan/p/11113581.html
Copyright © 2020-2023  润新知