如何使用 sparklyr 访问 Databricks 数据库

How to access a Databricks database with sparklyr

Azure Databricks 环境中的新功能,我发现包 SparkRsparklyr

从我的笔记本 SparkR,我设法连接到一个数据库:

library(SparkR)
DW <- sql("select * from mydb.sometable")

它运行良好,但 SparkR 语法似乎与经典 R 语法相去甚远(据我所知)。

所以我想尝试 sparklyr,但我无法访问同一个数据库:

library(sparklyr)
sc <- spark_connect(method="databricks")
test <- spark_read_table(sc, "mydb.sometable")

Error : org.apache.spark.sql.AnalysisException: It is not allowed to add database prefix ...

有什么问题吗?

谢谢!!

如果它对任何人有帮助,这就是我发现的似乎有效的方法。

  1. 设置默认数据库
  2. 在默认数据库中读取table
library(sparklyr)
library(dplyr)
sc <- spark_connect(method="databricks")
tbl_change_db(sc, "mydb")
foo <- spark_read_table(sc,"sometable")