走近大数据之Hive进阶(一、Hive数据的导入)

耗尽温柔 提交于 2019-12-31 21:35:35

一、使用Load语句进行数据的导入

走近大数据之Hive进阶(一、Hive数据的导入)

 

 

-语法:

LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE]
INTO TABLE tablename [PARTITION (partcoll = vall, partcol2 = val2 ...)]

*将student01.txt数据导入t2 (t2表没有指定分隔符)

load data local inpath '/root/data/student01.txt' into table t2;

select * from t2--查询检查(需要在建表的时候确定数据分隔符是否与导入数据来源相同,不同的话,数据全为NULL)

走近大数据之Hive进阶(一、Hive数据的导入)

 

 

*将/root/data下的所有数据文件导入t3表中,并且覆盖原来的数据 (t3表分隔符是逗号)

load data local inpath '/root/data/' overwrite into table t3;

走近大数据之Hive进阶(一、Hive数据的导入)

 

 

*将HDFS中,/input/student01.txt 导入到t3;(HDFS中的文件导入,不需要添加‘local')

load data inpath '/input/student01.txt/ overwrite into table t3;

*将数据导入分区表

load data local inpath '/root/data/data1.txt' into table partition_table partition (gender = 'M');

二、使用Sqoop进行数据的导入

下载jar包:http://sqoop.apache.org/

解压 :

tar -zxvf sqoop-1.4.5.bin__hadoop-0.23.tar.gz

设置环境变量 :(~/training/hadoop-2.4.1/为hadoop的安装目录)

export HADOOP_COMMON_HOME=~/training/hadoop-2.4.1/
export HADOOP_MAPRED_HOME=~/training/hadoop-2.4.1/

使用sqoop导入Oracle数据到hdfs中

./sqoop import --conncet jdbc:oracle:thin:@192.168.56.101:1521:orcl --username scottt --password tiger --table emp --columns 'empno,ename,job,sal,deptno' -m l --target-dir '/sqoop/emp'

--connect:指定jdbc连接的URL地址,用户名,密码

--table:指明导入的表

--columns:指明导入表的列

-m: mapreduce 的 进程数

--target-dir:导入到hdfs的目录

使用sqoop导入Oracle数据到Hive中

./sqoop import --hive-import --connect jdbc:oracle:thin:@192.168.56.101:1521:orcl --username scottt --password tiger --table emp -m l --columns 'empno,ename,job,sal,deptno'

指明表的名字

./sqoop import --hive-import --connect jdbc:oracle:thin:@192.168.56.101:1521:orcl --username scottt --password tiger --table emp -m l --columns 'empno,ename,job,sal,deptno' --hive-table empl

使用where条件

./sqoop import --hive-import --connect jdbc:oracle:thin:@192.168.56.101:1521:orcl --username scottt --password tiger --table emp -m l --columns 'empno,ename,job,sal,deptno' --hive-table empl2 where age>10

注意:如果要换行需要在后面加上 \(空格和\),如:

./sqoop import --hive-import \
--connect jdbc:oracle:thin:@192.168.56.101:1521:orcl \
--username scottt --password tiger
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!