![](/img/trans.png)
[英]Execute a Databricks Notebook with PySpark code using Apache Airflow
[英]PySpark Wait to finish in notebook (Databricks)
目前,我在一個單元格中使用火花 dataframe(自動加載器)時遇到了一些問題,可能需要一些時間來寫入數據。 然后,在下面的單元格中,代碼引用了第一個表所做的工作。 但是,如果由於 spark 的分布式特性而運行整個筆記本(特別是作為作業),則第二個單元在第一個單元完全完成之前運行。 如何讓第二個單元等待 writeStream 的完成而不將它們放在單獨的筆記本中。
例子:
單元格1
autoload = pysparkDF.writeStream.format('delta')....table('TABLE1')
單元格2
df = spark.sql('select count(*) from TABLE1')
您需要使用awaitTermination
function 等待 stream 處理完成(請參閱文檔)。 像這樣:
autoload = pysparkDF.writeStream.format('delta')....table('TABLE1')
autoload.awaitTermination()
df = spark.sql('select count(*) from TABLE1')
盡管使用以下內容可能會更容易和更難出錯:
df = spark.read.table('TABLE1').count()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.