当前位置:   article > 正文

将文本文件导入到Hive数仓表中_将文本数据加载到表中

将文本数据加载到表中

一、获取文本文件

1、自创,编写假数据(分隔符用‘/t’)
在这里插入图片描述

2、其他途径

二、将文本文件上传到Liunx操作系统中

使用文件传输工具,例如:Xftp。

三、将Linux中的文本文件上传到HDFS中

注意:文件路径自定义

hdfs dfs -put ./student.txt /testdata/hivetest/
  • 1

在这里插入图片描述
在这里插入图片描述

四、在Hive中创建一张表

CREATE table student02
(id int,
 name string)
row format delimited fields terminated by '\t';
  • 1
  • 2
  • 3
  • 4

row format delimited fields terminated by ‘\t’ 的作用是指定一行数据的解析方式

五、加载本地文件到hive

本地:是指hiveserver2服务所在的Linux系统,而非windows系统
local:表示从本地加载数据到Hive表;否则从HDFS加载数据到Hive表。

load data local inpath '/opt/module/hive-3.1.3/testdata/data/student.txt' 
into table student01;
  • 1
  • 2

在这里插入图片描述

六、加载HDFS文件到Hive

加载完成以后,HDFS上的文件就不存在了
原因: 当你将 HDFS 中的文件加载到 Hive 中时,通常会使用 Hive 的 LOAD DATA INPATH 或者 INSERT OVERWRITE DIRECTORY 命令。这些命令实际上会将文件从 HDFS 移动到 Hive 所管理的目录中,因此在移动后,原始的文件就不再存在于原来的 HDFS 路径中了。
这种行为是由这些命令的设计决定的,它们的目的是为了将数据加载到 Hive 表中进行管理和查询。如果你希望保留原始的文件副本,可以在加载到 Hive 前先进行备份,或者在加载后手动将文件复制回原始的 HDFS 路径中。

load data inpath '/testdata/hivetest/student.txt' 
into table student02;
  • 1
  • 2

在这里插入图片描述

七、加载数据覆盖表中原有数据

load data inpath '/testdata/hivetest/student.txt' 
overwrite into table student02;
  • 1
  • 2

overwrite:表示覆盖表中已有数据,否则表示追加。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/718862
推荐阅读
相关标签
  

闽ICP备14008679号