你好@Yuan高,
磚、火花和dbutils自動隻注入的主要入口點——你的筆記本,但他們不會傳播到Python模塊。火花解決方案很簡單,就是使用getActiveSession SparkSession的函數類(如SparkSession.getActiveSession()),但你需要繼續通過dbutils明確直到你不讓dbutils抽象為某個函數
的文檔磚連接顯示了一個示例可能是怎麼實現的。這個例子SparkSession作為顯式參數,但它可以改良後用來完全避免,就像這樣:
從pyspark def get_dbutils ():。sql進口SparkSession火花= SparkSession.getActiveSession()如果spark.conf.get (spark.databricks.service.client.enabled) = = " true ": pyspark。dbutils進口dbutils返回dbutils(火花)其他:進口IPython返回IPython.get_ipython () .user_ns (“dbutils”)
然後在你的函數,您可以使用主要功能的火花dbutils功能