Hadoop 配置单元:为分区指定不同的格式

Hadoop 配置单元:为分区指定不同的格式,hadoop,hive,Hadoop,Hive,我知道可以在表级别使用一种inputformat,在分区级别使用另一种inputformat(混合格式表),但我在文档中看不到任何说明如何实现这一点的内容。 我尝试了以下语句,但失败了: hive> alter table test_tbl_parquet add partition (year=2016,month=01,day=27) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY '\u0001' &g


我知道可以在表级别使用一种inputformat,在分区级别使用另一种inputformat(混合格式表),但我在文档中看不到任何说明如何实现这一点的内容。

我尝试了以下语句,但失败了:

hive> alter table test_tbl_parquet add partition (year=2016,month=01,day=27)
    >  ROW FORMAT DELIMITED
    > FIELDS TERMINATED BY '\u0001'
    > STORED AS INPUTFORMAT
    >   'com.mycopmany.hive.WhaleAvroGenericInputFormat'
    > OUTPUTFORMAT
    >   'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
    >  location '/mycopmany/data/test_tbl/year=2016/month=01/day=27';
FAILED: ParseException line 1:90 missing EOF at 'ROW' near ')'
你知道正确的语法是什么吗

多谢各位。 丹尼尔,你看过吗
文档中,它描述了分区的不同文件格式。

尝试将第一行更改为
alter table test\u tbl\u parquet add partition(dateCol='2016-01-27')
,其中
dateCol
是分区列的名称,这与我的问题有什么关系?我认为指定分区子句的方式导致了问题,我的评论表明。。希望这个评论能澄清…我有三个分区列。我不能再编一个包含它们的列。在这种情况下,您是否尝试过在分区列值周围添加引号,如-
addpartition(year='2016',month='01',day='27')
?谢谢。我正在寻找通过添加分区操作指定格式的方法,但是由于找不到方法,我将使用ALTER分区操作