Я не уверен, хотите ли вы сделать это «потоковым» способом или в «пакетном» режиме. Однако вы можете сделать это, используя возможности потоковой передачи, и запустить задание за один раз.
(spark
.readStream # Read data as streaming
.schema(USER_SCHEMA) # For streaming, you must provide the input schema of data
.format("parquet")
.load(PARQUET_ORIGIN_LOCATION)
.writeStream
.format("delta")
.option("path", PARQUET_DESTINATION_LOCATION + 'data/') # Where to store the data
.option("checkpointLocation", PARQUET_DESTINATION_LOCATION + 'checkpoint/') # The check point location
.option("overwriteSchema", True) # Allows the schema to be overwritten
.queryName(QUERY_NAME) # Name of the query
.trigger(once=True) # For Batch Processing
.start()
)