Установите Hive TBLPROPERTIES, используя (py) Spark - PullRequest
0 голосов
/ 12 ноября 2018

Мне нужно установить пользовательское свойство в одной из моих таблиц Hive с помощью pySpark. Обычно я просто запускаю эту команду в любом интерфейсе Hive, чтобы сделать это:

ALTER TABLE table_name SET TBLPROPERTIES ('key1'='value1');

Но вопрос в том, могу ли я сделать то же самое в скрипте pySpark?

Спасибо!

1 Ответ

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

Ну, это было на самом деле легко ... это можно установить с помощью sqlContext в pySpark:

sqlContext.sql("ALTER TABLE table_name SET TBLPROPERTIES('key1' = 'value1')")

Будет возвращен пустой фрейм данных: DataFrame[]
Но свойство фактически присутствует в целевой таблице. Его можно получить аналогичным образом, используя:

sqlContext.sql("SHOW TBLPROPERTIES table_name('key1')").collect()[0].asDict()

{'value': u'value1'}

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