本关任务:将文档中的数据导入到数据库的表中。
之前系列实训中我们接触过导入本地文件到Hive表中,本关就进行导入的详细讲解。
为了完成本关任务,你需要掌握:1.导入命令语法,2.如何将本地txt文件导入到分区表中。
Load操作执行copy/move命令把数据文件copy/move到Hive表位于 HDFS上的目录位置,并不会对数据内容执行格式检查或格式转换操作。Load命令语法为:
LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=vall,partcol2=val2 …)];
文件路径filepath可以是指向HDFS的相对路径或是绝对路径,也可以是指向本地文件系统(Linux文件系统)相对路径(当前工作目录)或绝对路径。
若filepath指向HDFS,LOAD执行的是move操作(即执行LOAD后filepath中的文件不再存在);若filepath指向本地文件系统,LOAD执行的是copy操作(即执行LOAD后filepath中的文件仍然存在),但需要指定LOCAL关键字。
若filepath指向一个文件,LOAD会copy或move相应的文件到表tablename;若filepath指向一个目录,LOAD会copy或move相应目录下的所有文件到表table