取消
顯示的結果
而不是尋找
你的意思是:

迷途的錯誤造成的:com.databricks。NotebookExecutionException:失敗

DipakBachhav
新的貢獻者三世

我試圖運行以下筆記本通過磚但讓下麵的錯誤。我試圖更新筆記本超時和重試機製,但仍然沒有運氣。

NotebookData(“/用戶/ mynotebook ", 9900年,重試= 3)

]

res = parallelNotebooks(筆記本,2)

結果= [f.result(超時= 9900)f在res) #這是一個阻塞調用。

打印(結果)

有人能幫我解決這個問題嗎?謝謝

% python

從並發。期貨進口ThreadPoolExecutor

類NotebookData:

def __init__(自我、路徑、超時參數= None,重試= 0):

自我。路徑=路徑

自我。timeout =超時

自我。參數=參數

自我。重試=重試

def submitNotebook(筆記本):

打印(筆記本運行% s % notebook.path)

試一試:

如果(notebook.parameters):

返回dbutils.notebook.run (notebook.path,筆記本。超時,notebook.parameters)

其他:

返回dbutils.notebook.run (notebook.path notebook.timeout)

除了例外:

如果筆記本。重試< 1:

提高

打印(重試筆記本% s % notebook.path)

筆記本。重試=筆記本。重試- 1

submitNotebook(筆記本)

def parallelNotebooks(筆記本,numInParallel):

#這段代碼限製並行筆記本的數量。

與ec ThreadPoolExecutor (max_workers = numInParallel):

返回(ec。提交(submitNotebook、筆記本)筆記本筆記本)

筆記本電腦= [

NotebookData(“/用戶/ mynotebook”, 1200000,重試= 0)

]

res = parallelNotebooks(筆記本,2)

結果= [f.result(超時= 1200000)f在res) #這是一個阻塞調用。

打印(結果)

錯誤:

Py4JJavaError:調用o1741._run時發生一個錯誤。

:com.databricks。WorkflowException: com.databricks。NotebookExecutionException:失敗

com.databricks.workflow.WorkflowDriver.run (WorkflowDriver.scala: 95)

com.databricks.dbutils_v1.impl.NotebookUtilsImpl.run (NotebookUtilsImpl.scala: 122)

com.databricks.dbutils_v1.impl.NotebookUtilsImpl._run (NotebookUtilsImpl.scala: 89)

在sun.reflect.GeneratedMethodAccessor820。調用(未知源)

sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java: 43)

java.lang.reflect.Method.invoke (Method.java: 498)

py4j.reflection.MethodInvoker.invoke (MethodInvoker.java: 244)

py4j.reflection.ReflectionEngine.invoke (ReflectionEngine.java: 380)

py4j.Gateway.invoke (Gateway.java: 295)

py4j.commands.AbstractCommand.invokeMethod (AbstractCommand.java: 132)

py4j.commands.CallCommand.execute (CallCommand.java: 79)

py4j.GatewayConnection.run (GatewayConnection.java: 251)

java.lang.Thread.run (Thread.java: 748)

引起的:com.databricks。NotebookExecutionException:失敗

com.databricks.workflow.WorkflowDriver.run0 (WorkflowDriver.scala: 141)

com.databricks.workflow.WorkflowDriver.run (WorkflowDriver.scala: 90)

…12

1接受解決方案

接受的解決方案

Hubert_Dudek1
尊敬的貢獻者三世

不知道這段代碼,但火花執行工作的工作,所以ThreadPoolExecutor沒有多大意義。如果你想並行執行的筆記本,請運行它們作為獨立工作與公平調度器(所以你儲備資源為每個筆記本——在第一行sc.setLocalProperty (“spark.scheduler。池”、“somename”)當somename獨特的平行筆記本執行)

在原帖子查看解決方案

4回複4

Hubert_Dudek1
尊敬的貢獻者三世

不知道這段代碼,但火花執行工作的工作,所以ThreadPoolExecutor沒有多大意義。如果你想並行執行的筆記本,請運行它們作為獨立工作與公平調度器(所以你儲備資源為每個筆記本——在第一行sc.setLocalProperty (“spark.scheduler。池”、“somename”)當somename獨特的平行筆記本執行)

cweymouth
新的貢獻者二世

隻是一個名詞。偉大意義筆記本並行運行,可以極大地提高性能。在一個相對較小的集群(4個節點,16個vcpu總),我能夠將我的工作的運行時減少一半。

當你產生多個進程,它可以讓你有更好的利用集群。在連續的筆記本運行時,經常停機執行人,其餘任務火花工作已經完成了。運行多個python程序驅動節點允許您開始工作在其他火花的任務。

Kaniz
社區經理
社區經理

嗨@Dipak Bachhav,我們一直沒有收到你自從上次反應@Hubert杜德克,我檢查是否你有一個決議。

如果你有任何解決方案,請與社區分享,因為它可以幫助別人。否則,我們將與更多的細節和試圖幫助回應。

同時,請別忘了點擊“選擇最佳”按鈕時提供的信息幫助解決你的問題。

sujai_sparks
新的貢獻者三世

嗨@Dipak Bachhav,不確定你是否已經解決了這個問題,但這裏有一些事情你可以檢查:

  1. 路徑“/用戶/ mynotebook”正確嗎?也許你是失蹤的點開始。
  2. 筆記本使用dbutils.notebook.run運行(“/用戶/ mynotebook”),看看有錯誤。

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map