如何引发异常以退出 Synapse Apache Spark 笔记本

How to raise an exception to exit Synapse Apache Spark notebook

我正在尝试在出现故障情况时执行两个操作。

  1. 将 table 的结果写入 parquet 中的单个文件。
  2. 退出笔记本。

根据结果采取行动

if validation_result["success"]:
    print("Successful")
else:
    (
        spark.sql("Select * from notify_error")
        .coalesce(1)
        .write.format("delta")
        .mode("overwrite")
        .save(lakePath)
    )

正如您从上面看到的,我正在尝试使用 coalesce(1) 创建一个 table。 要在 Synapse 中退出笔记本,我相信代码是:

mssparkutils.notebook.exit(returnValue)

但我不知道在上面的代码中放置代码的位置。

有什么想法吗?

你能用ValueErrorraise吗,例如

%%pyspark

notebookName = mssparkutils.runtime.context.get('notebookname')
errorString = f"error in notebook '{notebookName}'"

raiseError = True

if raiseError:
  raise ValueError(errorString)