У меня есть таблица каталога Unity под названием test.dummy
. Я запрашиваю и изменяю данные следующим образом
df=spark.sql("select * from `test`.dummy")
df=df.where(col("lastname")= = "smith")
Теперь я хотел бы использовать df
в качестве новой таблицы. Единственный способ, который я нашел, это следующее (для которого требуется разрешение на запись файла):
df.write.mode("overwrite").parquet("abfss://[email protected]/dd")
Могу ли я напрямую обновить таблицу содержимым df
, не создавая заново таблицу и не используя abffs? Я хочу использовать pyspark и просто заменить содержимое.
Если вы используете delta
, вы можете сделать это с помощью следующего запроса:
df.write.option("overwriteSchema", "true").saveAsTable("`xxx`.`test`.`trips_external`",mode = "overwrite")
С CSV
это не работает. overwriteSchema
необходим только при изменении схемы.