pig、sqoop安装

1.pig安装

1.解压安装包

bash 复制代码
sudo tar -zxvf pig-0.17.0.tar.gz -C /opt
//解压安装包

2.修改文件名,授权

bash 复制代码
cd /opt
sudo mv ./pig-0.17.0 pig
sudo chown -R hadoop pig
//修改文件名并授权

3.将pig-0.17.0-src.tar.gz解压到pig目录中

bash 复制代码
sudo tar -zxvf pig-0.17.0-src.tar.gz -C /opt/pig
//将pig-0.17.0-src.tar.gz解压到pig

4.配置pig

bash 复制代码
gedit pig.properties
//配置pig.properties文件
bash 复制代码
pig -h properties

5.配置环境变量

bash 复制代码
gedit ~/.bashrc
//打开环境配置文件
bash 复制代码
export PIG_HOME=/opt/pig
export PATH=$PATH:/opt/pig/bin
export PIG_CLASSPATH=$HADOOP_HOME/conf
//添加配置
bash 复制代码
source ~/.bashrc
//使环境生效

6.检查版本

bash 复制代码
pig -version
//版本

2.pig运行实例

1.本地模式操作

1.启动本地模式
bash 复制代码
pig -x local
//启动本地模式
2.在交互界面执行操作
bash 复制代码
grunt > sh ls
//查看当前目录下文件
grunt > clear
//清空屏幕
grunt > help
//查看帮助信息
3.批处理模式执行脚本
bash 复制代码
student = LOAD '/opt/pig/student.txt' USING PigStorage(',') AS (id:int,name:chararray,city:chararray);
Dump student;
//脚本文件

bash 复制代码
pig -x local stulocal.pig
//执行

2.MapReduce模式操作

bash 复制代码
start-dfs.sh
start-yarn.sh
//开启Hadoop服务
bash 复制代码
hdfs dfs -mkdir -p /user/hadoop/pig
//创建目录
hdfs dfs -put /opt/pig/student.txt /user/hadoop/pig/
//上传
bash 复制代码
hdfs dfs -ls /user/hadoop/pig/student.txt
//查看文件
bash 复制代码
pig -x mapreduce
//启动MapRduce模式
bash 复制代码
stu1 = LOAD 'hdfs://localhost:9000/user/hadoop/pig/student.txt' USING PigStorage(',') AS (id:int, name:chararray, city:chararray);
//数据处理
bash 复制代码
# 查看加载的数据内容
Dump stu1;

# 显示数据结构(字段名和类型)
Describe stu1;

# 显示执行计划(逻辑执行流程)
Explain stu1;

# 展示执行步骤(带示例数据的流程说明)
Illustrate stu1;
bash 复制代码
# 按city字段分组,结果保存到groupstu
groupstu = GROUP stu1 by city;

# 查看分组结果
Dump groupstu;

3.sqoop安装

1.解压安装包

bash 复制代码
sudo tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz -C /opt
//解压安装包

2.修改文件名,授权

bash 复制代码
cd /opt
sudo mv sqoop-1.4.6.bin__hadoop-2.0.4-alpha sqoop
sudo chown -R hadoop sqoop
//修改文件名,授权

3.修改配置文件sqoop-env.sh

bash 复制代码
cd /opt/sqoop/conf
cat sqoop-env-template.sh >> sqoop-env.sh
gedit sqoop-env.sh
//复制一个新文件并编辑
bash 复制代码
export HADOOP_COMMON_HOME=/opt/hadoop-3.1.3
export HADOOP_MAPRED_HOME=/opt/hadoop-3.1.3
export HBASE_HOME=/opt/hbase
export HIVE_HOME=/opt/hive
export ZOOCFGDIR=/opt/zookeeper/zoo1/conf
//配置(用自己的路径)

4.配置环境变量

bash 复制代码
gedit ~/.bashrc
//打开环境配置文件
bash 复制代码
export SQOOP_HOME=/opt/sqoop
export PATH=$PATH:$SBT_HOME/bin:$SQOOP_HOME/bin
export CLASSPATH=$CLASSPATH:$SQOOP_HOME/lib
bash 复制代码
source ~/.bashrc
//使环境生效

5.拷贝驱动包

bash 复制代码
cp /mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar /opt/sqoop/lib
//拷贝安装包到目录下

6.测试与MySQL连接

bash 复制代码
service mysql start
//开启MySQL服务
bash 复制代码
 sqoop list-databases --connect jdbc:mysql://127.0.0.1:3306/ --username root -P
//建立连接

结果:

4.sqoop实际运行实例

查看数据库和表

bash 复制代码
sqoop list-databases --connect jdbc:mysql://localhost:3306 -username root -password 111111
//查看数据库

可以创建一个测试库

bash 复制代码
create database test_db;
use test_db;
create table student(id int, name varchar(20));
insert into student values(1,'张三'),(2,'李四');
//创建一个测试库
bash 复制代码
sqoop list-tables --connect jdbc:mysql://localhost:3306/test_db -username root -password 111111
//查看表
相关推荐
唐青枫1 小时前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10157 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao8 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone