我是靠谱客的博主 威武眼神,最近开发中收集的这篇文章主要介绍Sqoop安装部署实战1:概述         2:Sqoop的工作机制3:Sqoop2架构4:Sqoop安装部署,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1:概述        

        Sqoop是apache旗下的一款Hadoop和关系数据库之间传输数据”的工具。

        导入数据:将MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统。

        导出数据:从Hadoop的文件系统中导出数据到关系数据库。

 2:Sqoop的工作机制

将导入和导出的命令翻译成mapreduce程序实现

在翻译出的mapreduce中主要是对inputformat和outputformat进行定制

3:Sqoop2架构

版本号为1.99x为sqoop2

在架构上:sqoop2引入了sqoop server,对connector实现了集中的管理

访问方式:REST API、 JAVA API、 WEB UI以及CLI控制台方式进行访问

4:Sqoop安装部署

Sqoop安装很简单,解压好进行简单的修改就可以使用

1:下载安装包

https://mirrors.bfsu.edu.cn/apache/sqoop/1.4.7

2:上传并解压

将我们下载好的安装包上传到node03服务器的/soft路径下,然后进行解压

cd /soft/
tar -xzvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /install

3:修改配置文件

更改sqoop的配置文件

cd /install/sqoop-1.4.7.bin__hadoop-2.6.0/conf/
mv sqoop-env-template.sh sqoop-env.sh
vim sqoop-env.sh
#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/install/hadoop-3.1.4

#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/install/hadoop-3.1.4

#set the path to where bin/hbase is available
export HBASE_HOME=/install/hbase-2.2.7

#Set the path to where bin/hive is available
export HIVE_HOME=/install/apache-hive-3.1.2

#Set the path for where zookeper config dir is
export ZOOCFGDIR=/install/apache-zookeeper-3.6.2-bin

4:添加两个必要的jar包

sqoop需要两个额外依赖的jar包,将课件资料当中两个jar包添加到sqoop的lib目录下

cd /soft
cp java-json.jar mysql-connector-java-5.1.38.jar /install/sqoop-1.4.7.bin__hadoop-2.6.0/lib/

5:配置sqoop的环境变量

sudo vim /etc/profile	

添加如下内容

export SQOOP_HOME=/install/sqoop-1.4.7.bin__hadoop-2.6.0
export PATH=:$SQOOP_HOME/bin:$PATH

让环境变量生效

source /etc/profile

1:sqoop help有warning日志

执行命令sqoop help,有warning日志

 解决方案

[hadoop@node03 bin]$ pwd
/install/sqoop-1.4.7.bin__hadoop-2.6.0/bin
# 搜索HCAT_HOME,将下图红框内容注释掉
[hadoop@node03 bin]$ vim configure-sqoop

2:sqoop help有错误

   运行sqoop help有错误:

   错误: 找不到或无法加载主类 org.apache.hadoop.hbase.util.GetJavaProperty

   此错误,不影响sqoop的;可以忽略不管

   如果有洁癖,可以看如下方式解决

  解决方案一:

        简单的做法,直接用修改过的hbase文件,替换集群3个节点目录`/install/hbase-2.2.7/bin`中的hbase文件
        重启hbase集群即可

  解决方案二:

 ①node01修改hbase命令文件  

[hadoop@node01 bin]$ cd /install/hbase-2.2.7/bin/
[hadoop@node01 bin]$ vim hbase

如下图显示,找到指定的位置(根据行号或关键字内容进行定位)

  ②新增第一个红框的内容

  # Needed for GetJavaProperty check below
    add_to_cp_if_exists "${HBASE_HOME}/hbase-server/target/classes"

  ③si将第二个红框的内容注释掉

 

④继续查找hbase文件,定位到如下黄框内容

⑤在上图322行(第一个黄色框)增加下图①的代码

  temporary_cp=
  for f in "${HBASE_HOME}"/lib/hbase-server*.jar; do
    if [[ ! "${f}" =~ ^.*-tests.jar$ ]]; then
      temporary_cp=":$f"
    fi
  done

⑥将上图的第二个黄色框的内容修改成下图②的代码

  HADOOP_JAVA_LIBRARY_PATH=$(HADOOP_CLASSPATH="$CLASSPATH${temporary_cp}" "${    HADOOP_IN_PATH}" 

⑦保存退出
⑧将hbase分发到另外两个节点

[hadoop@node01 bin]$ pwd
/install/hbase-2.2.7/bin
[hadoop@node01 bin]$ scp hbase node02:$PWD
[hadoop@node01 bin]$ scp hbase node03:$PWD

⑨重启hbase

最后

以上就是威武眼神为你收集整理的Sqoop安装部署实战1:概述         2:Sqoop的工作机制3:Sqoop2架构4:Sqoop安装部署的全部内容,希望文章能够帮你解决Sqoop安装部署实战1:概述         2:Sqoop的工作机制3:Sqoop2架构4:Sqoop安装部署所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部