标签: hive
我有一堆镶木地板文件,我正在尝试通过以下查询将它们加载到配置单元中:
CREATE EXTERNAL TABLE `events` ( // ... fields ... ) PARTITIONED BY (... partition columns ...) SORED AS PARQUET LOCATION '/path/to/parquet/files';
它将创建表,但不会在该位置加载数据。查询有问题吗?
答案 0 :(得分:0)
您在CREATE TABLE语句中指定的位置应为HDFS位置。 CREATE TABLE不会加载文件。
CREATE TABLE
使用LOAD DATA LOCAL INPATH './local/file/path' OVERWRITE INTO TABLE invites PARTITION (key='value');,请参见手册here。
LOAD DATA LOCAL INPATH './local/file/path' OVERWRITE INTO TABLE invites PARTITION (key='value');
或者,您可以使用hadoop fs -copyFromLocal /path/in/linux /hdfs/path命令将HDFS中的文件放置到具有分区子目录的位置,然后创建表并使用MSCK REPAIR TABLE创建分区,请参见手册here。
hadoop fs -copyFromLocal /path/in/linux /hdfs/path
MSCK REPAIR TABLE