簡體   English   中英

在Apache Zeppelin上沒有使用python解釋器的runParagraph()

[英]No runParagraph() using python interpreter on Apache Zeppelin

我既不能使用%python也不可以使用zzuseParagraph()%spark.pyspark解釋器。

在一個最小的不工作示例中,可以從一個空筆記本開始,並添加以下兩段:

第一段:

%python
print("Hello")
z.z.runParagraph('REPLACE_ME')

第二段:

%python
print("World")

然后,將REPLACE_ME替換為第二段的段ID,最后運行第一段。 結果將是一個異常,指出runParagraph()方法確實存在。 我得到的完全例外是:

Traceback (most recent call last):
  File "/tmp/zeppelin_python-9073316303905892812.py", line 283, in <module>
    raise Exception(traceback.format_exc())
Exception: Traceback (most recent call last):
  File "/tmp/zeppelin_python-9073316303905892812.py", line 276, in <module>
    exec(code, _zcUserQueryNameSpace)
  File "<stdin>", line 2, in <module>
  File "/zeppelin/interpreter/python/py4j-0.9.2/src/py4j/java_gateway.py", line 836, in __call__
    answer, self.gateway_client, self.target_id, self.name)
  File "/zeppelin/interpreter/python/py4j-0.9.2/src/py4j/protocol.py", line 314, in get_return_value
    format(target_id, ".", name, value))
Py4JError: An error occurred while calling t.runParagraph. Trace:
py4j.Py4JException: Method runParagraph([class java.lang.String]) does not exist
    at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:335)
    at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:344)
    at py4j.Gateway.invoke(Gateway.java:279)
    at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:133)
    at py4j.commands.CallCommand.execute(CallCommand.java:79)
    at py4j.GatewayConnection.run(GatewayConnection.java:209)
    at java.lang.Thread.run(Thread.java:748)

然而,

%python
z.z.runParagraph

報告<py4j.java_gateway.JavaMember object at 0x7f7319460d90> ,因此我認為應該以這種方式訪問​​該方法。 我是否缺少一些初始化步驟? 如何使用python解釋器運行其他段落?

您想要的方法是zzrun(<paragraph-id>)

您可以檢查上下文對象的類型/類,以在源代碼中查找它們的方法。

%spark.pyspark
print(type(z))
# <class '__main__.PyZeppelinContext'>
print(z.z.getClass())
# class org.apache.zeppelin.spark.SparkZeppelinContext

SparkZeppelinContext擴展了BaseZeppelinContext ,您可以在其中找到與該圖表中為后端API記錄的方法匹配的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM