Hive 分区表 & 数据加载

本文详细介绍了Hive表数据的导入方式,包括本地上传至HDFS、本地导入、HDFS导入、覆盖导入、查询导入和insert导入。接着,深入探讨了Hive分区表的概念、创建语法、多分区表创建、查看分区数据和加载数据的方法。通过分区,可以提高数据检索和管理效率,减少全表扫描的资源消耗。最后,还提及了修改、添加和删除分区的操作。
摘要由CSDN通过智能技术生成

1. Hive表数据的导入方式

1.1 本地上传至hdfs

命令:

hdfs dfs -put [文件名] [hdfs绝对路径]

例如:测试文件 test_001.txt 内容如下

图片

在 hdfs 绝对路径:/user/hive/warehouse/mytest.db/ 下有一张表 test_001,建表语句如下:

create table test_001(id string, name string) row format delimited fields terminated by '\t';

使用如下命令将 test_001.txt 的内容上传至 /user/hive/warehouse/mytest.db/test_001 表中

hdfs dfs -put test_001.txt /user/hive/warehouse/mytest.db/test_001

注意:

test_001.txt 文件内容中:数据类型、数据列数、列数之间的分隔符要与 hdfs 中 test_001 表定义的一一对应。

1.2 本地导入

命令:

load data local inpath [本地文件路径] into table [表名];

示例:

load data local inpath '/user/xiaomin.liu/hive_testdata/student.csv' into table student;

含义:

将 /user/xiaomin.liu/hive_testdata 目录下 student.csv 文件的内容加载至 hdfs 中的 student 表中。

注意:

1. student.csv 文件内容中:数据类型、数据列数、列数之间的分隔符要与 hdfs 中 student 表定义的一一对应。

2. 使用本地导入的方式加载数据至 hive,使用的是复制操作,即当本地路径下的文件被加载至 hive 后,该本地路径下的文件依然存在,不会消失。

1.3 hdfs导入

命令:

load data inpath [文件在hdfs中的路径] into table [表名];

示例:

load data inpath '/user/warehouse/test/student.txt' into table student;

含义:

将 hdfs 路径为 /user/warehouse/test 下的 student.txt 文件的数据加载至 hdfs 中的 student 表中。

注意:

使用 hdfs 导入数据至 hive,使用的是剪切操作,即原 hdfs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wu_Candy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值