如何在databricks中的python笔记本中获取工作区名称

san*_*nde 9 databricks azure-databricks

我正在尝试获取 python 笔记本中的工作区名称。我们有什么办法可以做到这一点吗?

例如:我的工作区名称是databricks-test. 我想在 python 笔记本的变量中捕获它

Sco*_*ell 12

要获取工作区名称(不是其他答案给您的组织 ID),您可以通过以下两种主要方式之一进行操作

spark.conf.get("spark.databricks.workspaceUrl")
Run Code Online (Sandbox Code Playgroud)

这将为您提供绝对 URL,然后您可以拆分第一个。IE

spark.conf.get("spark.databricks.workspaceUrl").split('.')[0]
Run Code Online (Sandbox Code Playgroud)

您还可以通过以下两种方式获取:

dbutils.notebook.entry_point.getDbutils().notebook().getContext() \
.browserHostName().toString()
Run Code Online (Sandbox Code Playgroud)

或者

import json

json.loads(dbutils.notebook.entry_point.getDbutils().notebook() \
  .getContext().toJson())['tags']['browserHostName']
Run Code Online (Sandbox Code Playgroud)

重要提示如果您想知道 Spark Conf 的存在,您可以在如下列表中找到其中的大部分内容:

sc.getConf().getAll()
Run Code Online (Sandbox Code Playgroud)