Hive实操:Sqoop/ Mysql/ hdfs /hadoop

Hive实操

1.1 docker文件拷贝 docker cp 或通过docker cp –help查看用法:
在这里插入图片描述
CONTAINER的ID:
在这里插入图片描述
复制命令格式:
在这里插入图片描述
1.2 Hive建表
creat table student (id int, name string)nrow format delimited fields terminated by ‘\t’ ;
select * from student
在这里插入图片描述
本地数据,加载到hive的student表中:
load data local inpath ‘opt/student.txt’ into table student;
如果不加local,那么会去hdfs中load
在这里插入图片描述
将数据上传至hdfs:hadoop fs -put ‘文件名’ ‘存储路径的’ (PS.可以精确到table)在这里插入图片描述
把hdfs-datanode路径下的数据,导入table中:此时从前端页面上看对应文件(students.txt)被移动至student下,但实际上没有移动,只是账本的元数据信息产生了变动
在这里插入图片描述
在这里插入图片描述
1.3 Hive外部表
creat external table xxx() row format delimited fields terminated by ‘\t’ location ‘XXX’
在这里插入图片描述
Hive相当于维护了一系列的表以及hdfs中具体数据的关联关系

1.4 安装sqoop
解压安装包:
tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz

删除安装包:
rm -rf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz

重命名文件夹:
mv sqoop-1.4.6.bin__hadoop-2.0.4-alpha/ sqoop

sqoop连接mysql数据库
./sqoop list-databases --connect jdbc:mysql://192.168.3.42:3306/ --username root --password root

1.5 sqoop将mysql数据库导入hive
首先,新建与mysql数据库相同的databases;
其次。写命令,完成数据导入:
在这里插入图片描述
在这里插入图片描述
Jdbc是一种协议;sqoop import是将mysql中的数据导入到hdfs中;

hive import是将hdfs数据,导入到hive中。

1.6 本地数据集传入hdfs
获取数据资源,下载dataset
在这里插入图片描述
数据集拷贝至指定文件夹下
利用docker cp 命令,docker cp SogouQ.sample 2827926f2886:/opt,将数据集复制到namenode/opt文件下;

将数据集上传至hdfs中
利用hadoop上传命令,将数据集传至hdfs在这里插入图片描述
在这里插入图片描述
上传成功。

Win通过虚拟机链接docker容器的IP
首先,确定本机的windows系统下的IP,docker IP,和虚拟机IP;
其次,以管理员身份打开Powershell:
在这里插入图片描述

执行命令:ROUTE -p add docker IP mask 255.255.255 0 虚拟机IP
临时关闭Ubuntu防火墙: sudo ufw disable
删除 路由转发:route delete docker IP mask 255.255.255 0 虚拟机IP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值