Улей разделить по времени - PullRequest
0 голосов
/ 29 марта 2020

Я хочу реализовать

alter table dos_sourcedata add partition (data = to_date (current_timestamp ()));

в улье

Запускать этот оператор в указанное c время каждый день. но это всегда неправильно.

1 Ответ

0 голосов
/ 29 марта 2020

Если вы хотите создать пустой раздел , используя изменить таблицу , используйте значение, а не выражение, например:

alter table mytable add partition (partition_date='2020-04-01');

Вы можете создавать разделы динамически, когда загрузка данных с использованием раздела таблицы перезаписи вставки, в этом случае вы можете использовать выражение в запросе:

set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table mytable partition (partition_date)
select 
      col_1,
      ...
      col_n,
      current_date --partition column is the last one
  from ...

Используйте current_date вместо to_date (current_timestamp ()).

...