Как можно спарк написать (создать) таблицу в улье как внешнюю в HDP 3.1 - PullRequest
0 голосов
/ 16 октября 2019

Значение по умолчанию

spark-shell --conf spark.hadoop.metastore.catalog.default=hive
val df:Dataframe = ...
df.write.saveAsTable("db.table") 

завершается ошибкой при попытке записать внутреннюю / управляемую / транзакционную таблицу (см. Как написать таблицу для куста из искры без использования соединителя хранилища в HDP 3.1 ).

Как я могу указать спарк не создавать управляемую, а скорее внешнюю таблицу?

1 Ответ

0 голосов
/ 16 октября 2019

На данный момент отключение транзакционных таблиц по умолчанию выглядит для меня лучшим вариантом.

Внутри Ambari простое отключение опции создания транзакционных таблиц по умолчанию решает мою проблему.

, дважды установленной в false(tez, llap)

hive.strict.managed.tables = false

и включите вручную в каждом table property при желании (для использования таблицы транзакций).

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

...