hive数据导入全攻略:从 HDFS 到 INSERT 详解
Hive 作为数据仓库工具,数据导入是核心操作之一。由于 Hive 依赖 HDFS 存储数据,导入方式灵活多样,包括直接操作 HDFS、LOAD DATA 命令及 INSERT 语句。本文详细讲解每种导入方式的原理、操作步骤及注意事项,帮助开发者高效导入数据。
帮助开发者高效导入数据。
通过 HDFS 直接上传数据
Hive 表的数据本质上存储在 HDFS 目录中,因此可直接通过 HDFS 命令将数据文件上传到表对应的目录,实现数据导入。
操作步骤
创建表并确认存储路径
先创建表(以内部表为例),并通过desc formatted查看表在 HDFS 上的存储路径:1
2
3
4
5
6
7
8
9
10
11
12-- 创建表(指定列分隔符为制表符 \t)
create table if not exists dept(
deptno int,
dname string
)
row format delimited fields terminated by '\t';
-- 查看表存储路径
hive (study_hive)> desc formatted dept;
...
Location: hdfs://localhost:9000/user/hive/warehouse/study_hive.db/dept
...准备本地数据文件
创建dept.txt,内容如下(列之间用制表符分隔):1
21 财务
2 IT通过 HDFS 命令上传文件
使用hdfs dfs -put将本地文件上传到表的 HDFS 目录:1
hdfs dfs -put ./dept.txt /user/hive/warehouse/study_hive.db/dept/
查询表数据验证
上传后直接查询表,数据已导入: