Как вы заявили, «загрузите данные из таблицы в кадр данных, а затем объедините новый файл в тот же кадр данных, затем удалите данные из таблицы и вставьте этот кадр данных». Это определенно один вариант. Я не знаю, является ли это абсолютной лучшей практикой, но это должно быть чертовски быстро, и почти наверняка предпочтительным способом сделать это, потому что кластер будет работать параллельно, и, как таковой, манипулирование данными, вычисления и т. Д. c., будет сделано супер-быстро! Конечно, вы можете запускать обновления SQL прямо на столе. Если эти таблицы действительно большие (например, миллиарды записей и десятки столбцов), возможно, они будут очень медленными (SQL НЕ будет работать параллельно в кластере, тогда как Spark сделает именно это).
См. Ссылку ниже для некоторых дополнительных идей о том, что можно сделать.
https://kb.databricks.com/data/join-two-dataframes-duplicated-columns.html