我正在写一个火花作业,它需要在本地以及在Databricks上都可以运行。在每个环境(文件路径)中,代码必须略有不同,因此我试图找到一种方法来检测作业是否在Databricks中运行。到目前为止,我发现的最好方法是在根目录中查找“ dbfs”目录,如果存在,则假定它在Databricks上运行。这感觉不像是正确的解决方案。有谁有更好的主意吗?
3 回答
森栏
TA贡献1810条经验 获得超5个赞
您可以简单地检查是否存在环境变量,例如:
def isRunningInDatabricks(): Boolean = sys.env.contains("DATABRICKS_RUNTIME_VERSION")
芜湖不芜
TA贡献1796条经验 获得超7个赞
这个怎么样:
Python:
def isLocal():
setting = spark.conf.get("spark.master")
return ("local" in setting)
Scala:
def isLocal(): Boolean = {
val setting = spark.conf.get("spark.master")
return ("local" contains setting)
}
添加回答
举报
0/150
提交
取消