Оставить и переписать внешний стол в улье - PullRequest
0 голосов
/ 11 октября 2018

Мне нужно создать внешнюю таблицу в hiveql с выводом из предложения SELECT.Каждый раз, когда запускается HiveQL, таблицу следует отбрасывать и создавать заново.Когда мы удаляем внешнюю таблицу, удаляется только структура таблицы, но не файлы данных из расположения HDFS.Как этого добиться?

1 Ответ

0 голосов
/ 12 октября 2018

Создать таблицу как выбор ( CTAS ) имеет ограничения.Одним из них является то, что таблица назначения не может быть внешней.

У вас есть следующие опции:

  1. Создать внешнюю таблицу один раз, затем ВСТАВИТЬ ПЕРЕЗАПИСАТЬ

    ВСТАВИТЬ ПЕРЕЗАПИСАТЬ ТАБЛИЦУ tablename1 [PARTITION (partcol1 = val1, partcol2 =val2 ...) select_statement1 FROM from_statement;

  2. Используйте управляемую таблицу, затем вы можете DROP TABLE, затем CREATE TABLE ... as SELECT

См. такжеответ о свойство skipTrash и auto.purge .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...