我想在导入到数据块笔记本中的 python 包中创建自定义连接器类。像这样的东西:
class snowflake_read():
def __init__(self, format, options):
self.options = options
self.format = format
def sf_query(self, query):
df = spark.read.format(self.format).options(self.options).options("query", query).load()
return df
虽然我能够将包导入笔记本并初始化 snowflake_read() 类,但我无法使用 sf_query() 函数,因为 spark 未定义。
import read_package
sf_read = snowflake_read(<format>, <options>)
sf_read.sf_query('<query>')
这段代码产生一个未定义的变量('spark')错误。
如何在 init 函数中定义 spark? Spark 在 datbricks notebook 中自动定义/初始化,但显然不在导入类的范围内。