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看是否有传输文件

相关推荐
诗书画唱2 分钟前
【前端面试题】JavaScript 核心知识点解析(第二十二题到第六十一题)
开发语言·前端·javascript
冬天vs不冷2 分钟前
Java基础(九):Object核心类深度剖析
java·开发语言·python
TS的美梦3 分钟前
【1:1复刻R版】python版火山图函数一键出图
开发语言·python·r语言·scanpy·火山图
陈天伟教授1 小时前
(二)Python + 地球信息科学与技术 (GeoICT)=?
开发语言·python
七七&55610 小时前
2024年08月13日 Go生态洞察:Go 1.23 发布与全面深度解读
开发语言·网络·golang
java坤坤10 小时前
GoLand 项目从 0 到 1:第八天 ——GORM 命名策略陷阱与 Go 项目启动慢问题攻坚
开发语言·后端·golang
元清加油10 小时前
【Golang】:函数和包
服务器·开发语言·网络·后端·网络协议·golang
健康平安的活着10 小时前
java之 junit4单元测试Mockito的使用
java·开发语言·单元测试
DjangoJason12 小时前
C++ 仿RabbitMQ实现消息队列项目
开发语言·c++·rabbitmq
m0_4805026412 小时前
Rust 入门 KV存储HashMap (十七)
java·开发语言·rust