Hive SQL-DML-Load加载数据
在 Hive 中,可以使用 SQL DML(Data Manipulation Language)语句中的 LOAD 命令来加载数据到表中。LOAD 命令用于将本地文件系统或 HDFS(Hadoop 分布式文件系统)中的数据加载到 Hive 表中。
LOAD 命令的基本语法:
LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)];
其中,各部分含义如下:
-
LOCAL
:可选参数,表示数据文件位于本地文件系统。如果不使用LOCAL
参数,则表示数据文件位于 HDFS。
-
INPATH 'filepath'
:指定要加载的数据文件的路径。
-
OVERWRITE
:可选参数,如果目标表中已经存在数据,则使用OVERWRITE
可以覆盖原有数据。如果不使用OVERWRITE
,则默认是追加数据。
-
INTO TABLE tablename
:指定要加载数据的目标表名。 -
PARTITION (partcol1=val1, partcol2=val2 ...)
:可选参数,如果目标表是分区表,则可以使用PARTITION
子句指定要加载数据的分区。
示例
1.从本地加载数据
复制操作:原路径下的文件将会被复制到目标路径。
2.从HDFS加载数据
移动操作:原路径下的文件将会被移动到目标路径。
3.从HDFS加载数据到分区表中并制定分区
Hive3.0 Load 新特性