PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Spark Dataframes UPSERT alla tabella Postgres

Non è supportato. DataFrameWriter può aggiungere o sovrascrivere una tabella esistente. Se la tua applicazione richiede una logica più complessa, dovrai gestirla manualmente.

Un'opzione è usare un'azione (foreach , foreachPartition ) con connessione JDBC standard. Un altro è scrivere su un temporaneo e gestire il resto direttamente nel database.

Vedi anche SPARK-19335 (Spark dovrebbe supportare l'esecuzione di un efficiente DataFrame Upsert tramite JDBC ) e relative proposte.