sqoop,flume草稿

连xftp传sqoop压缩包到/opt/soft 目录下

cd opt/soft/

tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

mv sqoop-1.4.7.bin__hadoop-2.6.0 sqoop

cd sqoop/conf/

cp sqoop-env-template.sh sqoop-env.sh

vi sqoop-env-sh

export HADOOP_COMMON_HOME=/opt/soft/hadoop

export HADOOP_MAPRED_HOME=/opt/soft/hadoop

export HBASE_HOME=/opt/soft/hbase

export HIVE_HOME=/opt/soft/hive

vi /etc/profile

export SQOOP_HOME=/opt/soft/sqoop

export PATH=PATH:SQOOP_HOME/bin

export HIVE_CONF_DIR=/opt/soft/hive/conf

export HADOOP_CLASSPATH=HADOOP_CLASSPATH:HIVE_HOME/lib/*

export CLASSPATH=.:$HIVE_HOME/lib

source /etc/profile

start-all.sh

zkServer.sh start

rm -rf /opt/soft/sqoop/lib/jackson-*

cp /opt/soft/hive/lib/mysql-connector-java-5.1.37.jar /opt/soft/sqoop/lib/

cp /opt/soft/hive/conf/hive-site.xml /opt/soft/sqoop/conf/

cp /opt/soft/hive/lib/hive-common-3.1.2.jar /opt/soft/sqoop/lib/

cp /opt/soft/hive/lib/hive-exec-3.1.2.jar /opt/soft/sqoop/lib/

cp /opt/soft/hive/lib/libthrift-0.9.3.jar /opt/soft/sqoop/lib/

cp /opt/soft/hive/lib/disruptor-3.3.6.jar /opt/soft/sqoop/lib/

cp /opt/soft/hive/lib/jackson-* /opt/soft/sqoop/lib/

useradd hadoop

su hadoop

测试sqoop是否能够正常连接MySQL数据库。

sqoop list-databases --connect jdbc:mysql://127.0.0.1:3306/ --username root -password 123456

创建MySQL数据库和数据表。

mysql -uroot -p

create database sample;

use sample;

create table student (number char(9) primary key,name char(10));

insert into student values('01','zhangsan');

insert into student values('02','lisi');

insert into student values('03','wangwu');

select * from student;

exit

在hive中创建sample数据库和student数据表。

su root

cd /opt/soft/hive/conf

vi hive-site.xml 85改217

hive

create database sample;

show databases;

use sample;

create table student(number STRING,name STRING) row format delimited fields terminated by "|" stored as textfile;

exit;

列出MySQL数据库

sqoop list-databases -connect jdbc:mysql://localhost:3306/ -username root -password 123456

连接MySQL并列出sample库中的表

sqoop list-tables -connect jdbc:mysql://localhost:3306/sample -username root -password 123456

从MySQL中导出数据,并导入hive。

sqoop import --connect jdbc:mysql://192.168.217.80:3306/sample --username root --password 123456 --table student --fields-terminated-by '|' --delete-target-dir --num-mappers 1 --hive-import --hive-database sample --hive-table student

从hive中导出数据,并导入MySQL。

sqoop export --connect "jdbc:mysql://192.168.217.80:3306/sample?useUnicode=true&characterEncoding=utf-8" --username root --password 123456 --table student --input-fields-terminated-by '|' --export-dir /user/hive/warehouse/sample.db/student/*

查看数据是否导入浏览器 192.168.217.80:50070

Utilities user hive warehouse sample.db student

列出MySQL数据库中的所有数据库。

sqoop list-databases -connect jdbc:mysql://localhost:3306/ -username root -password 123456

连接MySQL并列出test数据库中的表。

sqoop list-tables -connect jdbc:mysql://localhost:3306/test -username root -password 123456

将关系型数据的表结构复制到hive中。

sqoop create-hive-table -connect jdbc:mysql://localhost:3306/test -table sqoop_test -username root -password Password 123456 -hive-table test

从关系数据库导入文件到hive中。

sqoop import -connect jdbc:mysql://localhost:3306/zxtest -username root -password 123456 -table sqoop_test -hive-import -hive-table s_test -m 1

从关系数据库导入MySQL中。

sqoop export -connect jdbc:mysql://localhost:3306/zxtest -username root -password root -table hive_test -export-dir /user/hive/warehouse/ new_test_partition

从数据库导出表的数据到HDFS文件中。

sqoop import -connect jdbc:mysql://localhost:3306/comperssion-username=hadoop-password=123456 -table HADOOP_USER_INFO -m 1 -target-dir /user/test

从数据库增量导入表数据到HDFS中

sqoop import -connect jdbc:mysql://localhost:3306/compression -username=hadoop -password=123456 -table HADOOP_USER_INFO -m 1 -target-dir /user/test -check-columnid -incremental append -last-value 3

解压、安装Flume

解压安装

解压、

cd /opt/soft

tar -zxvf apache-flume-1.6.0-bin.tar.gz

安装Flume 配置Flume

mv apache-flume-1.6.0-bin flume

vim /etc/profile

内容:

export FLUME_HOME=/opt/soft/flume

export PATH=PATH:FLUME_HOME/bin

source /etc/profile

cd /opt/soft/flume/conf

ls一下

cp flume-env.sh.template flume-env.sh

ls一下 看有没有生成flume-env.sh

vim flume-env.sh

内容:

export JAVA_HONE=/opt/soft/jdk

验证

flume-ng version

删除一些包

cd /opt/soft/hadoop/share/hadoop/common/lib

rm -rf guava-11.0.2.jar

在hdfs创建:hdfs dfs -mkdir -p /tmp/flume

然后给权限:hdfs dfs -chmod 777 /tmp/flume让它能够接收和发送数据

cd /opt/soft/flume

配置文件

vim simple-hdfs-flume.conf

内容为

a1.sources=r1

a1.sinks=k1

a1.channels=c1

a1.sources.r1.type=spooldir

a1.sources.r1.spoolDir=/opt/soft/hadoop/logs/

a1.sources.r1.fileHeader=true

a1.sinks.k1.type=hdfs

a1.sinks.k1.hdfs.path=hdfs://master:9000/tmp/flume

a1.sinks.k1.hdfs.rollsize=1048760

a1.sinks.k1.hdfs.rollCount=0

a1.sinks.k1.hdfs.rollInterval=900

a1.sinks.k1.hdfs.useLocalTimeStamp=true

a1.channels.c1.type=file

a1.channels.c1.capacity=1000

a1.channels.c1.transactionCapacity=100

a1.sources.r1.channels=c1

a1.sinks.k1.channel=c1

使用flume命令加载simple-hdfs-flume.conf配置信息,启动Flume传输数据

flume-ng agent --conf-file simple-hdfs-flume.conf --name a1

hdfs dfs -ls /tmp/flume看是否有传输文件

相关推荐
Redamancy_Xun2 分钟前
开源软件兼容性可信量化分析
java·开发语言·程序人生·网络安全·测试用例·可信计算技术
ZLRRLZ15 分钟前
【C++】多态
开发语言·c++
m0_7482466127 分钟前
【论文投稿】Python 网络爬虫:探秘网页数据抓取的奇妙世界
开发语言·爬虫·python
minstbe31 分钟前
AI开发 - 算法基础 递归 的概念和入门(二)汉诺塔问题 递归的应用和使用注意 - Python
开发语言·python·算法
岁月如歌,青春不败1 小时前
HMSC联合物种分布模型
开发语言·人工智能·python·深度学习·r语言
言之。1 小时前
【Java】面试题 并发安全 (1)
java·开发语言
m0_748234521 小时前
2025最新版Java面试八股文大全
java·开发语言·面试
chengxuyuan1213_1 小时前
Python有哪些常用的库
开发语言·python
xiaosannihaiyl241 小时前
Scala语言的函数实现
开发语言·后端·golang
新手小袁_J2 小时前
java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigur
java·开发语言·spring·spring cloud·bootstrap·maven·mybatis