问题标签 [dbutils]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 使用 Databricks Connect 时如何在 Scala 中正确访问 dbutils
我正在使用 Databricks Connect 从 IntelliJ IDEA (Scala) 本地运行我的 Azure Databricks 群集中的代码。
一切正常。我可以在 IDE 中本地连接、调试和检查。
我创建了一个 Databricks 作业来运行我的自定义应用 JAR,但它失败并出现以下异常:
我的 Main.scala 类的第 30 行是
就像它在这个文档页面上的描述一样
该页面显示了一种访问 DBUtils 的方法,该方法在本地和集群中都有效。但是这个例子只显示了 Python,我使用的是 Scala。
在本地使用 databricks-connect 和在运行 JAR 的 Databricks 作业中访问它的正确方法是什么?
更新
似乎有两种使用 DBUtils 的方法。
1)这里描述的 DbUtils 类。引用文档,该库允许您构建和编译项目,但不能运行它。这不允许您在集群上运行本地代码。
2)此处描述的 Databricks Connect 。这允许您在 Databricks 集群中运行本地 Spark 代码。
问题是这两种方法有不同的设置和包名。似乎没有办法在本地使用 Databricks Connect(在集群中不可用),但是通过 sbt/maven 添加了使用 DbUtils 类的 jar 应用程序,以便集群可以访问它。
databricks - 如何生成有效期超过 48 小时的 databricks 特权令牌
想要运行连接到 Azure databricks 集群的本地 Jupiter notebook,并且需要使用 dbutils 来获取机密。这需要在本地保存特权令牌,并且仅持续 2 天。有没有办法生成比这更长的令牌或继续在本地使用 dbutils 更长时间?
azure - 我可以在单个命令中从 databricks 笔记本返回超过 1 个值吗?
我有一组值作为数据块笔记本的输出返回。任何人都可以建议一种有效且简单的方法吗?
python - 检查路径是否存在于 Databricks 中
我尝试使用 Python 检查路径是否存在于 Databricks 中:
如果路径不存在,我希望该except
语句执行。但是,该语句不是except
语句,而是try
失败并出现错误:
如何正确捕捉FileNotFoundException
?
databricks - DBFS:如何在 Datarbricks 中获取 DBFS 文件的上次访问时间
是否可以获得上次打开文件的时间,就像ls -ltu
列出所有文件一样,使用dbutils
. 我们需要在 Databricks 注释中获取有关 ADLS 文件的统计信息。
pyspark - ModuleNotFoundError:没有名为“pyspark.dbutils”的模块
我正在从 Azure 机器学习笔记本运行 pyspark。我正在尝试使用 dbutil 模块移动文件。
我收到此错误: ModuleNotFoundError: No module named 'pyspark.dbutils' 是否有解决方法?
这是另一个 Azure 机器学习笔记本中的错误:
pyspark - ModuleNotFoundError:在数据块中的作业集群上运行 multiple.py 文件/笔记本时没有名为“pyspark.dbutils”的模块
我在 TravisCI、MlFlow 和 Databricks 环境中工作,其中 .tavis.yml 位于 git master 分支并检测.py
文件中的任何更改,每当它更新时,它将运行 mlflow 命令以在 databricks 环境中运行 .py 文件。我的 MLProject 文件如下所示:
工作流程如下: TravisCI 检测到 master 分支中的变化——> 触发构建,它将运行 MLFlow 命令,它会在 databricks 中启动一个作业集群以从 repo 运行 .py 文件。
它适用于一个 .py 文件,但是当我尝试使用 dbutils 运行多个笔记本时,它正在抛出
请在 run-multiple-notebooks.py 的相关代码部分下方找到
我尝试了所有选项并尝试了
也是。它不工作:(
有人可以建议在作业集群中运行 .py 时是否可以解决上述错误。我的代码在 databricks 本地笔记本中运行良好,但使用 TravisCI 从外部运行并且 MLFlow 无法正常工作,这是管道自动化的必要条件。
databricks - dbutils.notebook.run 不选择保存在 DBFS 位置的运行笔记本
我将我的 databricks 工作区目录 (/Users/xyz/) 内容导出到一个 databricks 特定位置,例如 /dbfs/tmp,然后尝试调用以下代码来运行名为 xyz.py 的 python 笔记本导出位置如下:
dbutils 始终无法找到笔记本路径并给出以下异常:
虽然如果我检查笔记本是否存在相同的 dbfs 路径,那么我可以看到笔记本已被放置。
如何使用数据块中的特定位置运行 dbutils.notebook.run 语句?
scala - 线程“main”中的异常 java.lang.NullPointerException com.databricks.dbutils_v1.DBUtilsHolder$$anon$1.invoke
我想在 Azure Blob 中读取 parquet 文件,因此我已将 Azure Blob 中的数据挂载到本地,dbultils.fs.mount
但出现错误Exception in thread "main" java.lang.NullPointerException
以下是我的日志:
我的代码:
我的 sbt 文件:
multithreading - 如何终止 Databricks 笔记本的并行执行?
我目前正在使用 PythonThreading
来并行执行多个 Databricks 笔记本。这些是长时间运行的笔记本,如果我想用新的更改重新开始执行,我需要添加一些逻辑来杀死线程。当在不终止线程的情况下重新执行主笔记本时,集群很快就会充满计算量大、寿命长的线程,几乎没有空间用于实际需要的计算。
我没有运气就尝试过这些建议。此外,我曾尝试从中获取 runIddbutils.notebook.run()
并使用 杀死线程dbutils.notebook.exit(runId)
,但由于调用dbutils.notebook.run()
是同步的,因此在笔记本执行之前我无法获取 runId。
我将不胜感激有关如何解决此问题的任何建议!