#apache-spark #hadoop #hive #hive-partitions #partitioned-view
#apache-spark #hadoop #hive #hive-разделы #разделенный-просмотр
Вопрос:
У меня есть разделенное представление, и я пытаюсь удалить существующий раздел из определения представления с помощью командной строки hive. Однако, когда я пытаюсь удалить раздел, он выдает мне следующую ошибку:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. null
Вот моя инструкция create для view:
CREATE or replace VIEW test_view (logrecordtype, datacenter, ts_date, gen_date)
PARTITIONED ON (ts_date, gen_date)
AS SELECT logrecordtype, datacenter, ts_date, gen_date from test_table1 where ts_date <= '20200720'
union all
select logrecordtype, datacenter, ts_date, gen_date from test_table2 where ts_date != '20200720';
Базовые таблицы test_table1, test_table2 также разделены на (ts_date, gen_date).
Команда удаления раздела:
ALTER VIEW test_view DROP IF EXISTS PARTITION (ts_date = '20200720', gen_date = '2020072201')
Я могу добавить разделы и отобразить раздел в своем представлении, но удалить раздел не удается.
Моя команда show partition показывает:
show partitions test_view;
ts_date=20200720/gen_date=2020072201
Комментарии:
1. попробуйте
ALTER VIEW test_view DROP IF EXISTS PARTITON(ts_date='20200720'),PARTITION(gen_date='2020072201')
2. Это не сработало.
3. можете ли вы поделиться результатами
show create table test_view
?4.
CREATE VIEW test_view AS SELECT logrecordtype AS logrecordtype, datacenter AS datacenter, ts_date AS ts_date, gen_date AS gen_date FROM (SELECT test_table1.logrecordtype, test_table1.datacenter, test_table1.ts_date, test_table1.gen_date from schema.test_table1 where test_table1.ts_date <= '20200720' union all select test_table2.logrecordtype, test_table2.datacenter, test_table2.ts_date, test_table2.gen_date from schema.test_table2 where test_table2.ts_date != '20200720') test_view
является ли ddl, который я получил, даже после создания представления5. с
CREATE or replace VIEW test_view (logrecordtype, datacenter, ts_date, gen_date) PARTITIONED ON (ts_date, gen_date) ...
. пожалуйста, поделитесь своим представлением ddls после создания.show parititons test_view
также не извлекает никаких выходных данных для меня в hdp hive.