写点什么

hive 数据导入:文件导入

  • 2022 年 7 月 01 日
  • 本文字数:1147 字

    阅读完需:约 4 分钟

大家好,我是怀瑾握瑜,一只大数据萌新,家有两只吞金兽,嘉与嘉,上能 code 下能 teach 的全能奶爸

如果您喜欢我的文章,可以[关注⭐]+[点赞👍]+[评论📃],您的三连是我前进的动力,期待与您共同成长~



1. 从本地文件系统导入数据到 hive 表

PS.注意,改方法已经在 hdp3.x 中不支持使用,所以这里不详细说明


基础语法如下:


LOAD DATA LOCAL INPATH "path" [OVERWRITE] INTO TABLE tablename;
复制代码


通过指定本地路径(服务器)直接导入到表中


load data local inpath '/home/hdfs/a.txt' into table temp
复制代码

2. 从 HDFS 上导入数据到 hive 表

2.1 创建好数据表

CREATE EXTERNAL TABLE if not exists xxx_temp(    id string comment "",    name int COMMENT "")ROW FORMAT DELIMITED FIELDS TERMINATED BY ','STORED AS TEXTFILE;
复制代码


该表的含义是数据内容使用逗号“,”分隔,存储类型为默认的文本格式

2.2 准备好要导入数据的文件

1,23,45,6
复制代码


注意,如果你的数据是通过一定渠道导出的(比如 yanagishima),可能第一行是字段,注意去掉,要不也会一并导入

2.3 上传文件到 hdfs 上

# hadoop fs -put a.txt /tempData/
复制代码

2.4 连接 hive 并且导入数据到表

hive> load data inpath '/tempData/a.txt' into table xxx_temp;hive> select * from xxx_temp;
复制代码


与本地文件的导入方式相比,只是把关键字“local”去掉


注意文件必须要放到 hdfs 上面,并且 hdfs 用户有访问权限

3. 拷贝文件数据

如果是一些静态表,或者只是想数据进行迁移,可以把原始数据从 hdfs 上下载下来,然后再新的表里重新上传


# hadoop fs -ls /warehouse/tablespace/external/hive/xx.db/xxx_temp-rw-rw-rw-+  3 hdfs hadoop    7023975  /warehouse/tablespace/external/hive/xxx.db/xxx_temp/000000_0-rw-rw-rw-+  3 hdfs hadoop    7013810  /warehouse/tablespace/external/hive/xxx.db/xxx_temp/000001_0-rw-rw-rw-+  3 hdfs hadoop    7029668  /warehouse/tablespace/external/hive/xxx.db/xxx_temp/000002_0-rw-rw-rw-+  3 hdfs hadoop    7021533  /warehouse/tablespace/external/hive/xxx.db/xxx_temp/000003_0-rw-rw-rw-+  3 hdfs hadoop    7035739  /warehouse/tablespace/external/hive/xxx.db/xxx_temp/000004_0-rw-rw-rw-+  3 hdfs hadoop    7033479  /warehouse/tablespace/external/hive/xxx.db/xxx_temp/000005_0# hadoop fs -get /warehouse/tablespace/external/hive/xx.db/xxx_temp/*# hadoop fs -put /warehouse/tablespace/external/hive/xx.db/xxx_temp_new/*
复制代码


如果插入数据的表是分区表,注意文件导入后刷新分区


hive> msck repair table xxx_temp_new;
复制代码



结束语

如果您喜欢我的文章,可以[关注⭐]+[点赞👍]+[评论📃],您的三连是我前进的动力,期待与您共同成长~

可关注公众号【怀瑾握瑜的嘉与嘉】,获取资源下载方式

用户头像

还未添加个人签名 2022.07.01 加入

还未添加个人简介

评论

发布
暂无评论
hive数据导入:文件导入_大数据_怀瑾握瑜的嘉与嘉_InfoQ写作社区