标签: azure-databricks

如何在 Databricks Python Notebook 中运行/执行输入单元

我在Databricks笔记本中编写了以下代码

name = input("Please enter your name: ")
age = input("How old are you, {0}?".format(name))
print(age)
Run Code Online (Sandbox Code Playgroud)

正如您所猜测的,运行单元格后,系统会要求我“请输入您的姓名:”问题是我不知道在哪里输入。如果这是用 intelliJ IDEA 或 IDLE 编写的,我将获得一个单独的窗口来输入我的名字。但是,使用 Databricks 笔记本,即使我在不​​同的单元格中输入答案,它似乎也在不断等待输入,请参见图像:

在哪里输入

我真的应该知道这个问题的答案

databricks azure-databricks

6
推荐指数
2
解决办法
1万
查看次数

该请求无权使用该权限执行该操作

我正在尝试使用以下配置在 dattabricks 中安装 adls gen2

configs = {"fs.azure.account.auth.type": "OAuth",
   "fs.azure.account.oauth.provider.type": "org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider",
   "fs.azure.account.oauth2.client.id": "service principal id",
   "fs.azure.account.oauth2.client.secret": "service principal key",
   "fs.azure.account.oauth2.client.endpoint": "https://login.microsoftonline.com/tenant-id/oauth2/token",
   "fs.azure.createRemoteFileSystemDuringInitialization": "true"}
dbutils.fs.mount(
source = "abfss://file-system@storage-account.dfs.core.windows.net/directory",
mount_point = "/mnt/data",
extra_configs = configs)
Run Code Online (Sandbox Code Playgroud)

我已创建服务主体并为其创建密钥,然后在 Active Directory 角色分配中向该服务主体提供存储 Blob 角色

根据文件

"abfss://<your-file-system-name>@<your-storage-account-name>.dfs.core.windows.net/<your-directory-name>"
Run Code Online (Sandbox Code Playgroud)

blob 容器内的 your-file-system ==> 文件夹应该是什么?you-directory-name ==> 我在 Blob 容器内只有一个文件夹,所以这里很混乱 storgae(ADLS gen 2 Preview) Blob 容器文件夹 a.txt

错误


ExecutionError:调用 o480.mount 时发生错误。HEAD https://xxxxxxxxx.dfs.core.windows.net/xxxxxx?resource=filesystem&timeout=90 StatusCode=403 StatusDescription=此请求无权使用此权限执行此操作。ErrorCode=ErrorMessage=在shaded.databricks.v20180920_b33d810.org.apache.hadoop.fs.azurebfs.services.AbfsRestOperation.execute(AbfsRestOperation.java:134)在shaded.databricks.v20180920_b33d810.org.apache.hadoop.fs.azurebfs。 services.AbfsClient.getFilesystemProperties(AbfsClient.java:197)位于shaded.databricks.v20180920_b33d810.org.apache.hadoop.fs.azurebfs.AzureBlobFileSystemStore.getFilesystemProperties(AzureBlobFileSystemStore.java:214)位于shaded.databricks.v20180920_b33d810。 org.apache. hadoop.fs.azurebfs.AzureBlobFileSystem.fileSystemExists(AzureBlobFileSystem.java:749)位于shaded.databricks.v20180920_b33d810.org.apache.hadoop.fs.azurebfs.AzureBlobFileSystem.initialize(AzureBlobFileSystem.java:110)位于com.databricks.backend。 daemon.dbutils.DBUtilsCore.verifyAzureFileSystem(DBUtilsCore.scala:485) 在 com.databricks.backend.daemon.dbutils.DBUtilsCore.mount(DBUtilsCore.scala:435) 在 sun.reflect.GenerateMethodAccessor400.invoke(未知来源) 在太阳。 Reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) 在 py4j.reflection.ReflectionEngine …

databricks azure-databricks

6
推荐指数
2
解决办法
6万
查看次数

使用 Databricks 连接

我想使用我最喜欢的编辑器在本地编辑 Databricks 笔记本,然后使用Databricks Connect在我通常通过 Web 界面访问的 Databricks 集群上远程运行笔记本。

不幸的是,在网上搜索了几天后,我找不到有关 Databricks Connect 的详细文档。

databricks-connect configure按照上面 PyPI 页面上的建议运行 ,但我不确定某些设置是什么。有人可以引导我完成这个过程(比如在网络界面中哪里可以找到这些值)或提供正确文档的链接吗?

databricks-connect configure我知道一些设置应该是什么,但为了完整性和其他人的利益,我将包括运行时出现的所有内容。

Databricks Host
Databricks Token
Cluster ID(例如,0921-001415-jelly628
Org ID(仅限 Azure,请参阅?o=orgIdURL)
Port(是吗spark.databricks.service.port?)

另外,我认为这是我最感兴趣的,我是否需要对笔记本本身进行任何更改,例如定义 SparkContext 或其他内容?如果有的话,用什么配置?

我应该如何运行它?运行后databricks-connect configure,似乎没有发生任何“魔法”。当我运行时jupyter notebook,它仍然在本地运行,并且似乎不知道将其转发到远程集群。

更新: 如果您想考虑更具体的东西,在 Databricks 的 Web 界面中,dbutils是一个预定义的对象。远程运行笔记本时如何引用它?

jupyter-notebook databricks azure-databricks

6
推荐指数
1
解决办法
6541
查看次数

如何在azure databricks中重命名数据库?

我正在尝试重命名 azure databricks 中的数据库,但收到以下错误:

输入“ALTER DATABASE inventory”时没有可行的替代方案

下面是代码:

%sql 
use inventory;
ALTER DATABASE inventory MODIFY NAME = new_inventory;
Run Code Online (Sandbox Code Playgroud)

请解释这个错误“在输入'ALTER DATABASE inventory时没有可行的替代方案”的含义以及如何解决它

apache-spark-sql databricks azure-databricks

6
推荐指数
1
解决办法
8993
查看次数

为 Azure 服务主体名称创建 Azure Databricks PAT 令牌

我无法通过门户将 Azure AD 服务主体名称添加到 Azure Databricks 中,但我能够在 Databricks API 端点的帮助下添加我的服务主体。如何为我的服务主体名称创建 PAT 令牌。

azure databricks azure-databricks

6
推荐指数
1
解决办法
8803
查看次数

使用 Spark(Databricks) 的并行 REST API 请求

我想利用 Spark(它在 Databricks 上运行,我正在使用 PySpark)向 REST API 发送并行请求。现在我可能面临两种情况:

  • REST API 1:返回 ~MB 量级的数据
  • REST API 2:返回~KB量级的数据。

关于如何在节点之间分配请求有什么建议吗?

谢谢!

rest apache-spark pyspark databricks azure-databricks

6
推荐指数
1
解决办法
6929
查看次数

如何在 Databricks 中使用 Selenium 并访问下载的文件并将其移动到安装的存储并保持 Chrome 和 ChromeDriver 版本同步?

我看过几篇关于在 Databricks 中使用 Selenium%sh来安装 Chrome 驱动程序和 Chrome 的帖子。这对我来说效果很好,但是当我需要下载文件时我遇到了很多麻烦。该文件会下载,但我在 databricks 的文件系统中找不到它。即使我在将 Chrome 实例化到 Azure Blob 存储上的挂载文件夹时更改了下载路径,下载后文件也不会放置在那里。还有一个问题是,如何在不手动更改版本号的情况下自动保持 Chrome 浏览器和 ChromeDriver 版本同步。

以下链接显示了有同样问题但没有明确答案的人:

https://forums.databricks.com/questions/19376/if-my-notebook-downloads-a-file-from-a-website-by.html

https://forums.databricks.com/questions/45388/selenium-in-databricks-with-add-experimental-optio.html

当我使用 Selenium Python 进行 Web 自动化时,有没有办法确定文件在 Azure Databricks 中的下载位置?

还有一些人在努力让 Selenium 正常运行: https://forums.databricks.com/questions/14814/selenium-in-databricks.html

不在路径错误中: https://webcache.googleusercontent.com/search? q=cache:NrvVKo4LLdIJ:/sf/ask/4053306071/ -databricks+&cd=5&hl=en&ct=clnk&gl=us

是否有在 Databricks 上使用 Selenium 和管理下载文件的明确指南?如何让 Chrome 浏览器和 ChromeDriver 版本自动保持同步?

python selenium pyspark databricks azure-databricks

6
推荐指数
1
解决办法
1万
查看次数

在 databricks 中加载增量表特定分区的最佳实践是什么?

我想知道加载增量表特定分区的最佳方法是什么?选项 2 是否在过滤之前加载所有表?

选项1 :

df = spark.read.format("delta").option('basePath','/mnt/raw/mytable/')\
   .load('/mnt/raw/mytable/ingestdate=20210703')
Run Code Online (Sandbox Code Playgroud)

(这里需要basePath选项吗?)

选项2:

df = spark.read.format("delta").load('/mnt/raw/mytable/')
df = df.filter(col('ingestdate')=='20210703')
Run Code Online (Sandbox Code Playgroud)

提前谢谢了 !

partitioning apache-spark pyspark azure-databricks delta-lake

6
推荐指数
1
解决办法
9306
查看次数

在 Databricks 笔记本中显示图像错误

我正在努力创建带有公司徽标的 databricks 笔记本模板。使用下面的代码显示图像会引发错误。

代码:

%md
<img src ='/test/image/MyImage.jpg'>
Run Code Online (Sandbox Code Playgroud)

错误:

HTTP ERROR 403: Invalid or missing CSRF token
Run Code Online (Sandbox Code Playgroud)

请指导我。

databricks azure-databricks azure-data-lake-gen2

6
推荐指数
1
解决办法
6695
查看次数

以 Excel 格式保存文件时 Databricks 出错:OSError: [Errno 95] 不支持操作

您好,我正在尝试以 Excel 格式保存数据帧文件。但不断收到此错误 OSError: [Errno 95] 不支持操作我正在尝试使用以下代码:

  filtered_df.to_excel('/dbfs/digital_nurture_abovejune.xlsx',index=False)
  dbutils.fs.cp('dbfs:/digital_nurture_abovejune.xlsx', path + 'output')
Run Code Online (Sandbox Code Playgroud)

错误的片段是:

 OSError                                   Traceback (most recent call last)

  filtered_df.to_excel('/dbfs/digital_nurture_abovejune.xlsx',index=False)
  2 dbutils.fs.cp('dbfs:/digital_nurture_abovejune.xlsx', path + 'output')

/databricks/python/lib/python3.8/site-packages/pandas/core/generic.py in to_excel(self, 
excel_writer, sheet_name, na_rep, float_format, columns, header, index, index_label, startrow, 
startcol, engine, merge_cells, encoding, inf_rep, verbose, freeze_panes, storage_options)
 2187             inf_rep=inf_rep,
 2188         )
 -> 2189         formatter.write(
 2190             excel_writer,
2191             sheet_name=sheet_name,

 /databricks/python/lib/python3.8/site-packages/pandas/io/formats/excel.py in write(self, writer, sheet_name, startrow, startcol, freeze_panes, engine, storage_options)
829             # make sure to close opened file handles
830             if need_save:
 --> 831 …
Run Code Online (Sandbox Code Playgroud)

python excel dataframe databricks azure-databricks

6
推荐指数
0
解决办法
5765
查看次数