Spark Streaming - Different Output modes explained - Spark by {Examples}
This article describes usage and differences between complete, append and update output modes in Apache Spark Streaming. outputMode describes what data is written to a data sink (console, Kafka e.t.c) when there is new data available in streaming input (Kafka, Socket, e.t.c)
Use complete as output mode outputMode("complete") when you want to aggregate the data and output the entire results to sink every time.
It is similar to the complete with one exception; update output mode outputMode("update") just outputs the updated aggregated results every time to data sink when new data arrives.
Use append as output mode outputMode("append") when you want to output only new rows to the output sink.