一、概述

  1. Sqoop是一个在结构化数据和Hadoop之间进行批量数据迁移的工具,结构化数据可以是MysqlOracleRDBMS
  2. Sqoop底层用MapReduce程序实现抽取、转换、加载,MapReduce天生的特性保证了并行化和高容错率,而且
  3. 相比Kettle等传统ETL工具,任务跑在Hadoop集群上,减少了ETL服务器资源的使用情况。在特定场景下,抽取过程会有很大的性能提升。    如果要用Sqoop,必须正确安装并配置Hadoop,因依赖于本地的hadoop环境启动MR程序;mysqloracle等数据库的JDBC驱动也要放到Sqooplib目录下。
  4. 本文针对的是Sqoop1,不涉及到Sqoop2,两者有很大区别;

  1. import是把数据从RDBMS导入到Hadoop的工具;

二、安装hadoop

1、说明

sqoop与hadoop集成需要编译,比较麻烦,这里直接使用cdh版本的hadoop;

CDH安装包下载:http://archive.cloudera.com/cdh5/

使用cdh-5.3.6版本:

http://archive.cloudera.com/cdh5/cdh/5/

hadoop-2.5.0-cdh5.3.6.tar.gz
        hive-0.13.1-cdh5.3.6.tar.gz
       zookeeper-3.4.5-cdh5.3.6.tar.gz
       sqoop-1.4.5-cdh5.3.6.tar.gz

2、准备安装

  1. #创建安装目录
  2. [root@hadoop-senior opt]# mkdir /opt/cdh-5.3.6
  3.  
  4. #上传安装包
  5. [root@hadoop-senior cdh]# pwd
  6. /opt/softwares/cdh
  7.  
  8. [root@hadoop-senior cdh]# ls
  9. hadoop-2.5.0-cdh5.3.6.tar.gz hive-0.13.1-cdh5.3.6.tar.gz sqoop-1.4.5-cdh5.3.6.tar.gz
  10.  
  11. #解压hadoop、hive
  12. [root@hadoop-senior cdh]# tar zxf hadoop-2.5.0-cdh5.3.6.tar.gz -C /opt/cdh-5.3.6/
  13. [root@hadoop-senior cdh]# tar zxf hive-0.13.1-cdh5.3.6.tar.gz -C /opt/cdh-5.3.6/
  14.  
  15. #查看
  16. [root@hadoop-senior cdh-5.3.6]# cd /opt/cdh-5.3.6/
  17.  
  18. [root@hadoop-senior cdh-5.3.6]# ls
  19. hadoop-2.5.0-cdh5.3.6 hive-0.13.1-cdh5.3.6
  20.  
  21. [root@hadoop-senior cdh-5.3.6]# cd hadoop-2.5.0-cdh5.3.6/
  22.  
  23. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# ls
  24. bin bin-mapreduce1 cloudera etc examples examples-mapreduce1 include lib libexec sbin share src

3、配置

java_home:

  1. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/hadoop-env.sh
  2. export JAVA_HOME=/opt/modules/jdk1.7.0_80
  3.  
  4. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/yarn-env.sh
  5. export JAVA_HOME=/opt/modules/jdk1.7.0_80
  6.  
  7. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/mapred-env.sh
  8. export JAVA_HOME=/opt/modules/jdk1.7.0_80

core-site.xml

  1. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/core-site.xml
  2. <configuration>
  3.  
  4. <property>
  5. <name>fs.defaultFS</name>
  6. <value>hdfs://hadoop-senior.ibeifeng.com:8020</value>
  7. </property>
  8.  
  9. <property>
  10. <name>hadoop.tmp.dir</name>
  11. <value>/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/data/tmp</value>
  12. </property>
  13.  
  14. </configuration>
  15.  
  16. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# mkdir -pv /opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/data/tmp

hdfs-site.xml

  1. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/hdfs-site.xml
  2. <configuration>
  3. <property>
  4. <name>dfs.namenode.secondary.http-address</name>
  5. <value>hadoop-senior.ibeifeng.com:50090</value>
  6. </property>
  7.  
  8. <property>
  9. <name>dfs.namenode.http-address</name>
  10. <value>hadoop-senior.ibeifeng.com:50070</value>
  11. </property>
  12.  
  13. <property>
  14. <name>dfs.replication</name>
  15. <value>1</value>
  16. </property>
  17.  
  18. <property>
  19. <name>dfs.permissions</name>
  20. <value>false</value>
  21. </property>
  22.  
  23. </configuration>

slaves文件

  1. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/slaves
  1. hadoop-senior.ibeifeng.com

yarn-site.xml

  1. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/yarn-site.xml
  2. <configuration>
  3.  
  4. <property>
  5. <name>yarn.nodemanager.aux-services</name>
  6. <value>mapreduce_shuffle</value>
  7. </property>
  8.  
  9. <property>
  10. <name>yarn.resourcemanager.hostname</name>
  11. <value>hadoop-senior.ibeifeng.com</value>
  12. </property>
  13.  
  14. <property>
  15. <name>yarn.nodemanager.resource.cpu-vcores</name>
  16. <value>4</value>
  17. </property>
  18.  
  19. <property>
  20. <name>yarn.log-aggregation-enable</name>
  21. <value>true</value>
  22. </property>
  23.  
  24. <property>
  25. <name>yarn.log-aggregation.retain-seconds</name>
  26. <value>604800</value>
  27. </property>
  28.  
  29. </configuration>

mapred-site.xml

  1. ##/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop/mapred-site.xml //先重命名
  2. <configuration>
  3.  
  4. <property>
  5. <name>mapreduce.framework.name</name>
  6. <value>yarn</value>
  7. </property>
  8.  
  9. <property>
  10. <name>mapreduce.jobhistory.address</name>
  11. <value>hadoop-senior.ibeifeng.com:10020</value>
  12. </property>
  13.  
  14. <property>
  15. <name>mapreduce.jobhistory.webapp.address</name>
  16. <value>hadoop-senior.ibeifeng.com:19888</value>
  17. </property>
  18.  
  19. </configuration>

3、启动

  1. #格式化文件系统
  2. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# bin/hdfs namenode -format
  3.  
  4. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# rm -rf /tmp/*
  5.  
  6. #启动hdfs
  7. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# sbin/hadoop-daemon.sh start namenode
  8. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# sbin/hadoop-daemon.sh start datanode
  9.  
  10. #启动yarn
  11. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# sbin/yarn-daemon.sh start resourcemanager
  12. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# sbin/yarn-daemon.sh start nodemanager
  13.  
  14. #启动historyserver
  15. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# sbin/mr-jobhistory-daemon.sh start historyserver
  16.  
  17. #查看
  18. [root@hadoop-senior ~]# jps
  19. 3165 Jps
  20. 3119 JobHistoryServer
  21. 2683 ResourceManager
  22. 2573 DataNode
  23. 2471 NameNode
  24. 2960 NodeManager

三、安装hive

1、/opt/cdh-5.3.6/hive-0.13.1-cdh5.3.6/conf/hive-env.sh           //先重命名

  1. HADOOP_HOME=/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6
  2.  
  3. export HIVE_CONF_DIR=/opt/cdh-5.3.6/hive-0.13.1-cdh5.3.6/conf

2、/opt/cdh-5.3.6/hive-0.13.1-cdh5.3.6/conf/hive-log4j.properties     //先重命名

  1. hive.log.dir=/opt/cdh-5.3.6/hive-0.13.1-cdh5.3.6/logs

3、创建配置文件

  1. [root@hadoop-senior ~]# cd /opt/cdh-5.3.6/hive-0.13.1-cdh5.3.6/conf/
  2.  
  3. [root@hadoop-senior conf]# touch hive-site.xml
  4.  
  5. ################hive-site.xml#######################
  6. <?xml version="1.0"?>
  7. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  8. <configuration>
  9.  
  10. <property>
  11. <name>javax.jdo.option.ConnectionURL</name>
  12. <value>jdbc:mysql://hadoop-senior.ibeifeng.com:3306/metadata?createDatabaseIfNotExist=true</value>
  13. <description>JDBC connect string for a JDBC metastore</description>
  14. </property>
  15.  
  16. <property>
  17. <name>javax.jdo.option.ConnectionDriverName</name>
  18. <value>com.mysql.jdbc.Driver</value>
  19. <description>Driver class name for a JDBC metastore</description>
  20. </property>
  21.  
  22. <property>
  23. <name>javax.jdo.option.ConnectionUserName</name>
  24. <value>root</value>
  25. <description>username to use against metastore database</description>
  26. </property>
  27.  
  28. <property>
  29. <name>javax.jdo.option.ConnectionPassword</name>
  30. <value>123456</value>
  31. <description>password to use against metastore database</description>
  32. </property>
  33.  
  34. <property>
  35. <name>hive.cli.print.header</name>
  36. <value>true</value>
  37. <description>Whether to print the names of the columns in query output.</description>
  38. </property>
  39.  
  40. <property>
  41. <name>hive.cli.print.current.db</name>
  42. <value>true</value>
  43. <description>Whether to include the current database in the Hive prompt.</description>
  44. </property>
  45.  
  46. <property>
  47. <name>hive.fetch.task.conversion</name>
  48. <value>more</value>
  49. </property>
  50.  
  51. </configuration>

4、拷贝mysql驱动文件

  1. [root@hadoop-senior hive-0.13.1-cdh5.3.6]# cp /opt/modules/hive-0.13.1/lib/mysql-connector-java-5.1.27-bin.jar ./lib/

5、连接hive

  1. ##连接测试
  2. [root@hadoop-senior hive-0.13.1-cdh5.3.6]# bin/hive
  3. Logging initialized using configuration in file:/opt/cdh-5.3.6/hive-0.13.1-cdh5.3.6/conf/hive-log4j.properties
  4. hive (default)>
  5.  
  6. ##创建hive的数据存储目录
  7. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# bin/hdfs dfs -mkdir -p /user/hive/warehouse
  8.  
  9. [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# bin/hdfs dfs -chmod g+w /user/hive/warehouse
  10.  
  11. ##创建一张测试表
  12. hive (default)> create table student(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
  13. OK
  14. Time taken: 0.708 seconds
  15.  
  16. hive (default)> load data local inpath '/opt/datas/student.txt' overwrite into table student;
  17. Loading data to table default.student
  18. Table default.student stats: [numFiles=1, numRows=0, totalSize=36, rawDataSize=0]
  19. OK
  20. Time taken: 0.885 seconds
  21.  
  22. hive (default)> select * from student;
  23. OK
  24. student.id student.name
  25. 1001 zhangsan
  26. 1002 lisi
  27. 1003 wangwu
  28. Time taken: 0.218 seconds, Fetched: 3 row(s)

此时web页面应该也可以打开:ip:8088     ip:50070

1.1-1.4 sqoop概述及安装cdh版hadoop的更多相关文章

  1. Apache Sqoop - Overview——Sqoop 概述

    Apache Sqoop - Overview Apache Sqoop 概述 使用Hadoop来分析和处理数据需要将数据加载到集群中并且将它和企业生产数据库中的其他数据进行结合处理.从生产系统加载大 ...

  2. OpenVAS漏洞扫描基础教程之OpenVAS概述及安装及配置OpenVAS服务

    OpenVAS漏洞扫描基础教程之OpenVAS概述及安装及配置OpenVAS服务   1.  OpenVAS基础知识 OpenVAS(Open Vulnerability Assessment Sys ...

  3. Sqoop简介及安装

    Hadoop业务的大致开发流程以及Sqoop在业务中的地位: Sqoop概念 Sqoop可以理解为[SQL–to–Hadoop],正如名字所示,Sqoop是一个用来将关系型数据库和Hadoop中的数据 ...

  4. C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节

    C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节 1.Qt概述 1.1 什么是Qt Qt是一个跨平台的C++图形用户界面应用程序框架.它为应用程序开发者提供建立艺术级图形界面 ...

  5. ElasticSearch入坑指南之概述及安装

    ---恢复内容开始--- ElasticSearch入坑指南之概述及安装 了解ElasticSearch ElasticSearch(简称ES)基于Lucene的分布式全文检索引擎.使用ES可以实现近 ...

  6. Flask 学习(一)概述及安装

    Flask 概述及安装 Flask 简介 Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 官方网址 ...

  7. 1.5.7、CDH 搭建Hadoop在安装之前(定制安装解决方案---配置单用户模式)

    配置单用户模式 在传统的Cloudera Manager部署中,管理每台主机上的Hadoop进程的Cloudera Manager Agent以root用户身份运行.但是,某些环境会限制对root帐户 ...

  8. CDH 部署 Hadoop:5.开始安装

    Cloudera Enterprise 6.2.x   或者参考https://blog.csdn.net/shawnhu007/article/details/52579204 第零步:优化相关 e ...

  9. CentOS7安装CDH 第十一章:离线升级CDH版本

    相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...

随机推荐

  1. 服务管理-Nginx

    nginx优势 select,epoll模型 对于一次IO访问(以read举例),数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区拷贝到应用程序的地址空间.所以说.当一个read ...

  2. kubernetes高级之创建只读文件系统以及只读asp.net core容器

    系列目录 使用docker创建只读文件系统 容器化部署对应用的运维带来了极大的方便,同时也带来一些新的安全问题需要考虑.比如黑客入侵到容器内,对容器内的系统级别或者应用级别文件进行修改,会造成难以估量 ...

  3. Java ClassLoader详解(转载)

    Java ClassLoader详解 类加载器是 Java 语言的一个创新,也是 Java 语言流行的重要原因之一.它使得 Java 类可以被动态加载到 Java 虚拟机中并执行.类加载器从 JDK ...

  4. RYU改动监听port Mininet在custom自建拓扑和连接到指定控制器命令解释

    1.RYU控制器改动监听port 在ryu/ryu/ofproto以下的ofproto_common.py watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc ...

  5. 《学习opencv》笔记——矩阵和图像操作——cvConvertScale,cvConvertScaleAbs,cvCopy and cvCountNonZero

    矩阵和图像的操作 (1)cvConvertScale函数 其结构: void cvConvertScale( //进行线性变换,将src乘scale加上shift保存到dst const CvArr* ...

  6. 代码空间项目 -- alert窗口自定义

    function z_alert(msg){    //创建提示框盒子,设置盒子的css样式    var msgBox=document.createElement("div") ...

  7. for(String s:list)的运行

    源码 List<String> list = new ArrayList<>(); for (String s:list){ } class文件 List<String& ...

  8. OSI和TCP/IP

    OSI和TCP/IP 1.        OSI的七层网络结构(功能及特点) 1)  物理层:为数据链路层提供物理连接,在其上串行传送比特流,即所传送数据的单位是比特.此外,该层中还具有确定连接设备的 ...

  9. mongodb压缩——snappy、zlib块压缩,btree索引前缀压缩

    MongoDB 3.0 WiredTiger Compression and Performance One of the most exciting developments over the li ...

  10. 万亿级日志与行为数据存储查询技术剖析——Hbase系预聚合方案、Dremel系parquet列存储、预聚合系、Lucene系

    转自:http://www.infoq.com/cn/articles/trillion-log-and-data-storage-query-techniques?utm_source=infoq& ...