语法结构
LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]
1、Load 操作只是单纯的复制/移动操作,将数据文件移动到 Hive 表对应的位置。
2、FILEPATH:
- 相对路径,例如:project/data1
- 绝对路径,例如:/user/hive/project/data1
- 包含模式的完整 URI,列如:
hdfs://namenode:9000/user/hive/project/data1
3、LOCAL关键字
- 如果指定了 LOCAL, load 命令会去查找本地文件系统中的 filepath。
- 如果没有指定 LOCAL 关键字,则根据inpath中的uri查找文件。
4、OVERWRITE 关键字
- 如果使用了 OVERWRITE 关键字,则目标表(或者分区)中的内容会被删除,然后再将 filepath 指向的文件/目录中的内容添加到表/分区中。
- 如果目标表(分区)已经有一个文件,并且文件名和 filepath 中的文件名冲突,那么现有的文件会被新文件所替代。
具体实例
1、加载相对路径数据
2、加载绝对路径数据
3、加载包含模式数据
4、OVERWRITE关键字使用