Поддерживает ли Hive временные таблицы? Я не могу найти его в документах apache.
Создать временную таблицу в Hive?
Ответ 1
As of Hive 0.14.0 Благодаря @hwrdprkns для комментариев. Начиная с Hive 0.14.0 существует поддержка временных таблиц https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-TemporaryTables
Ссылка на JIRA: https://issues.apache.org/jira/browse/HIVE-7090
Синтаксис CREATE TEMPORARY TABLE TABLE_NAME_HERE (key string, value string)
Pre Hive 0.14.0
Я не думаю, что у Hive временные таблицы такие же, как у SQL Server. Вы можете сделать что-то вроде временных таблиц с Hive, хотя.
Если вы создаете таблицу со схемой, которой нужна ваша временная таблица, затем выполните запрос, заполняющий таблицу, прежде чем запускать запрос, требующий данных, он будет действовать как временная таблица.
Этапы:
- Создать таблицу
- Таблица заполнения:
INSERT OVERWRITE TABLE temptbl <select_query>
- Запустить запрос
Когда вы запускаете свой запрос, вы можете использовать temptbl
, как и любую другую таблицу. INSERT OVERWRITE
будет перезаписывать все данные в таблице, чтобы они были заполнены только данными для этого запуска. Данные сохраняются, поэтому, если вы повторно используете таблицу без повторного заполнения, вы будете использовать данные из любого последнего прогона.
Это может привести к возникновению проблем, если одна и та же таблица будет необходима одновременно, но для разных данных...
Из того, что я смог найти, это единственное решение для "временной" таблицы в Hive прямо сейчас.