PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Spark Dataframes UPSERT zu Postgres-Tabelle

Es wird nicht unterstützt. DataFrameWriter kann vorhandene Tabellen entweder anhängen oder überschreiben. Wenn Ihre Anwendung eine komplexere Logik erfordert, müssen Sie sich manuell darum kümmern.

Eine Möglichkeit ist die Verwendung einer Aktion (foreach , foreachPartition ) mit Standard-JDBC-Verbindung. Eine andere besteht darin, in eine temporäre Datei zu schreiben und den Rest direkt in der Datenbank zu erledigen.

Siehe auch SPARK-19335 (Spark sollte die Durchführung eines effizienten DataFrame-Upsert über JDBC unterstützen ) und zugehörige Vorschläge.