【发布时间】:2020-10-13 21:08:34
【问题描述】:
我正在尝试将数据集从我的 Databricks 文件系统 (DBFS) 导入到在 Databricks 集群上运行的 R-Studio;我在下面面临这个问题。
> sparkDF <- read.df(source = "parquet", path = "/tmp/lrs.parquet", header="true", inferSchema = "true")`
错误:加载错误:java.lang.SecurityException:没有令牌 授权委托人 在 com.databricks.sql.acl.ReflectionBackedAclClient$$anonfun$com$databricks$sql$acl$ReflectionBackedAclClient$$token$2.apply(ReflectionBackedAclClient.scala:137) 在 com.databricks.sql.acl.ReflectionBackedAclClient$$anonfun$com$databricks$sql$acl$ReflectionBackedAclClient$$token$2.apply(ReflectionBackedAclClient.scala:137) 在 scala.Option.getOrElse(Option.scala:121) 在 com.databricks.sql.acl.ReflectionBackedAclClient.com$databricks$sql$acl$ReflectionBackedAclClient$$token(ReflectionBackedAclClient.scala:137) 在 com.databricks.sql.acl.ReflectionBackedAclClient$$anonfun$getValidPermissions$1.apply(ReflectionBackedAclClient.scala:86) 在 com.databricks.sql.acl.ReflectionBackedAclClient$$anonfun$getValidPermissions$1.apply(ReflectionBackedAclClient.scala:81) 在 com.databricks.sql.acl.ReflectionBackedAclClient.stripReflectionException(ReflectionBackedAclClient.scala:73) 在 com.databricks.sql.acl.Refle
DBFS 位置正确,欢迎提出任何建议或博客!
【问题讨论】:
-
错误提示缺少身份验证。这将特定于您的 Databricks 集群和 R Studio Server 设置(请参阅此处:docs.databricks.com/spark/latest/sparkr/rstudio.html)
-
感谢您的回复。我阅读了链接,其中提到了大量信息,但与从 Azure 数据湖或 Databricks 文件系统导入数据集无关!
-
Ssry,无法为您的系统提供特定设置,但这个示例可能会有所帮助 - 这就是我对 Data Lake Gen 1 的访问进行身份验证的方式:
spark.conf.set("dfs.adls.oauth2.access.token.provider.type", "ClientCredential")spark.conf.set("dfs.adls.oauth2.client.id", _my client id_)spark.conf.set("dfs.adls.oauth2.credential", _my credentials_)@987654326 @ 直接在 Databricks 中应用操作时如何进行身份验证?将相同的配置应用于 RS 配置。 -
在 Databricks 上应用操作时,我在创建集群时启用了传递。然后,我可以通过在 Command 中提供 Data-Link 来直接访问数据湖。
标签: r databricks azure-databricks