【问题标题】:Activating warehouse in Snowflake using Java and spark使用 Java 和 spark 在 Snowflake 中激活仓库
【发布时间】:2020-11-15 07:08:32
【问题描述】:

我正在尝试连接到雪花数据库并激活特定的仓库。我在两个 JDBC 连接中都使用了仓库

jdbc:snowflake://xy12345.eu-central-1.snowflakecomputing.com/?warehouse=mywh

以及在属性中

options.put("仓库", "mywh")

还有什么需要补充的吗?

即使我给了一个不正确的仓库,连接也是不正确的。 我是否遗漏了任何东西,或者无论如何通过 spark 执行“使用仓库 mywh”。

谢谢

【问题讨论】:

  • 你能添加更多关于日志和代码的信息吗?
  • 即使我提供了不正确的仓库名称,我在连接时也没有遇到任何问题。我能够连接到我的数据库
  • 连接到 Snowflake 和使用仓库是两件不同的事情。完全可以在没有仓库的情况下连接到 Snowflake。那么,您确定您有权访问您指定的仓库并且没有拼写错误吗?如果您使用相同的用户/角色登录 UI,您可以成功选择该仓库吗?这听起来像是一个 RBAC 问题。

标签: java apache-spark snowflake-cloud-data-platform snowflake-schema snowflake-task


【解决方案1】:

你可以执行命令 - USE WAREHOUSE 使用光标来改变仓库的使用情况。

【讨论】:

    【解决方案2】:

    使用 JDBC 上的仓库参数,或者在属性中给出它就足以使用该仓库。困惑在于 JDBC 驱动程序如何连接到 Snowflake。

    当您使用 JDBC 连接到 Snowflake 时,JDBC 驱动程序不会立即运行“USE WAREHOUSE”。这就是为什么你在连接时不会出现任何错误,即使你输入了错误的仓库。

    当您尝试执行 SQL 查询时,如果它需要一个活动仓库,则将使用您选择的仓库。如果您输入了错误的仓库,则会收到如下错误:

    Exception in thread "main" net.snowflake.client.jdbc.SnowflakeSQLException: No active warehouse selected in the current session.  Select an active warehouse with the 'use warehouse' command.
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-04
      • 1970-01-01
      • 2021-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多