SemanticException добавление таблицы partiton Hive

попытка создать раздел в таблице улья со следующим:

> alter table stock_ticker add if not exists
> partition(stock_symbol='ASP')
> location 'data/stock_ticker_sample/stock_symbol=ASP/'

который производит следующий вывод

FAILED : SemanticException table is not partitioned but partition spec exists: {stock_symbol=ASP} 

в этой таблице нет разделов до этой попытки добавления

> show partitions stock_ticker;

что приводит к

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. 
Table stock_ticker_sample is not a partitioned table

нет никаких сомнений в том, что столбец stock_symbol существует и имеет тип string.

запрос-какие шаги необходимо предпринять, чтобы добавить этот раздел?

1 ответов


решением было бы добавить информацию о секционировании в определение таблицы stock_ticker:

CREATE EXTERNAL TABLE stock_ticker (
... 
)
PARTITIONED BY (stock_symbol STRING);

затем вы можете легко добавить внешние данные в свою таблицу:

> alter table stock_ticker add if not exists
> partition(stock_symbol='ASP')
> location 'data/stock_ticker_sample/stock_symbol=ASP/'

GL!