直到hive 0.13版本我才能使用以下命令将文件添加到配置单元表的特定分区:
alter table table add partition (year=2016,month=07,day=25,file_part=1) location '/home/user/data/201607/NetworkActivity_553_1051924_07-25-2016.log.gz';
我们的群集已更新,hive现在是hive 1.2版本。我无法执行上述命令,因为它抛出以下错误:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:maprfs:/home/user/data/201607/NetworkActivity_553_1051924_07-25-2016.log.g is not a directory or unable to create one)
请您告诉我,从hive 1.2版本我们只能添加目录到分区?
答案 0 :(得分:0)
分区位置应该是目录。首先使用location = some_directory创建分区,然后将文件放入目录。或者将文件放入某个目录,然后使用location = directory更改表添加分区。
在你的例子中,这是这样的:
alter table table add partition (year=2016,month=07,day=25,file_part=1) location '/home/user/data/201607';