Azure Databricks 中的外部属性文件
External Properties File in Azure Databricks
我们有一个完整的 Spark 应用程序,它从属性文件中删除了很多参数。现在我们想将应用程序移动到 Azure 笔记本格式。整个代码工作正常,并通过硬编码参数给出预期结果。但是也可以在 Azure Databricks Notebook 中使用外部属性文件吗?如果可以,那么我们需要在哪里放置属性文件??
使用 Databricks Jobs REST API 可能会出现 providing/returning 个参数,可以找到更多信息,例如这里:https://docs.databricks.com/dev-tools/api/latest/examples.html#jobs-api-example
您可以使用 Databricks DBFS Filestore
,Azure Databricks 笔记本可以从这里访问用户的文件。
要上传您拥有的属性文件,您可以使用 2 个选项
使用wget
,
import sys
"wget -P /tmp/ http://<your-repo>/<path>/app1.properties"
dbutils.fs.cp("file:/tmp/app1.properties", "dbfs:/FileStore/configs/app1/")
使用dbfs.fs.put
,(可能是一次性activity创建此文件)
dbutils.fs.put("FileStore/configs/app1/app1.properties", "prop1=val1\nprop2=val2")
要导入属性文件值,
properties = dict(line.strip().split('=') for line in open('/dbfs/FileStore/configs/app1/app1.properties'))
希望对您有所帮助!!
我们有一个完整的 Spark 应用程序,它从属性文件中删除了很多参数。现在我们想将应用程序移动到 Azure 笔记本格式。整个代码工作正常,并通过硬编码参数给出预期结果。但是也可以在 Azure Databricks Notebook 中使用外部属性文件吗?如果可以,那么我们需要在哪里放置属性文件??
使用 Databricks Jobs REST API 可能会出现 providing/returning 个参数,可以找到更多信息,例如这里:https://docs.databricks.com/dev-tools/api/latest/examples.html#jobs-api-example
您可以使用 Databricks DBFS Filestore
,Azure Databricks 笔记本可以从这里访问用户的文件。
要上传您拥有的属性文件,您可以使用 2 个选项
使用
wget
,import sys "wget -P /tmp/ http://<your-repo>/<path>/app1.properties" dbutils.fs.cp("file:/tmp/app1.properties", "dbfs:/FileStore/configs/app1/")
使用
dbfs.fs.put
,(可能是一次性activity创建此文件)dbutils.fs.put("FileStore/configs/app1/app1.properties", "prop1=val1\nprop2=val2")
要导入属性文件值,
properties = dict(line.strip().split('=') for line in open('/dbfs/FileStore/configs/app1/app1.properties'))
希望对您有所帮助!!