连接问题:Databricks-雪花

时间:2020-10-13 07:31:20

标签: single-sign-on snowflake-cloud-data-platform databricks

我试图通过外部浏览器身份验证器从Databricks Notebook连接到Snowflake,但没有成功。

CMD1
sfOptions = {
 "sfURL" : "xxxxx.west-europe.azure.snowflakecomputing.com",
 "sfAccount" : "xxxxx",
 "sfUser" : "ivan.lorencin@xxxxx",
 "authenticator" : "externalbrowser",
 "sfPassword" : "xxxxx",
 "sfDatabase" : "DWH_PROD",
 "sfSchema" : "APLSDB",
 "sfWarehouse" : "SNOWFLAKExxxxx",
 "tracing" : "ALL",
}
 
SNOWFLAKE_SOURCE_NAME = "net.snowflake.spark.snowflake"

CMD2
df = spark.read.format(SNOWFLAKE_SOURCE_NAME) \
   .options(**sfOptions) \
   .option("query",  "select 1 as my_num union all select 2 as my_num") \
   .load()

CMD2尚未完成,但我收到的“ ..正在运行的命令...”将永远持续下去。

enter image description here

任何人都可以帮助解决这里的问题吗?如何建立连接? 预先感谢

1 个答案:

答案 0 :(得分:2)

您似乎将Authenticator设置为externalbrowser,但是根据the docs,它应该是sfAuthenticator-这是故意的吗?如果您尝试执行OAuth类型的auth,为什么还要输入密码?

如果您的帐户/用户需要OAuth登录,我将从sfOptions中删除该密码条目,将该条目编辑为sfAuthenticator,然后重试。

如果这不起作用,则应确保您的Spark群集可以连接到所有必需的Snowflake主机(see SnowCD for assistance)。

我希望这可以帮助...丰富

p.s。如果这个(或另一个)答案对您有帮助,请花一点时间“接受”对您有帮助的答案 通过单击答案旁边的复选标记,将其从“灰色”切换为“填充”。