【问题标题】:Snowflake: READER ACCOUNT, 1 DB, 2 Schemas雪花:读者帐户、1 个数据库、2 个模式
【发布时间】:2020-02-12 11:04:29
【问题描述】:

我在尝试将 2 个架构从单个数据库共享到 SNOWFLAKE READER ACCOUNT 时遇到了奇怪的行为。

假设生产者数据库上的两个模式都已正确共享,则创建数据库的命令和在 READER ACCOUNT 上的共享将如下所示:

CREATE DATABASE myDB_A from share producerAccount.Producer_SHARE_Schema_A;
CREATE DATABASE myDB_B from share producerAccount.Producer_SHARE_Schema_B;

在哪里

  • Producer_SHARE_Schema_A 是一个类似于 myDB.Schema_A 的共享,并且
  • Producer_SHARE_Schema_B 是一个类似于 myDB.Schema_B 的共享

似乎发生的事情是 myDB_A 将拥有 Schema_A,并且当第二个命令运行时,myDB_A 也会选择 Schema_B。

理想情况下,我们需要一个允许我们使用 ALTER 方法向数据库添加第二个模式的命令:

CREATE DATABASE myDB_A from share producerAccount.Producer_SHARE_Schema_A;
**ALTER DATABASE myDB_B ADD share producerAccount.Producer_SHARE_Schema_B**;

最后一个问题...是否有一种标准化的方法可以将额外的模式添加到目标 READER ACCOUNT 中的共享数据库中?

谢谢!

【问题讨论】:

    标签: account reader snowflake-cloud-data-platform


    【解决方案1】:

    我想我可以回答我的问题...与其尝试将第二个架构添加到在消费者(读者帐户)端创建的共享中,不如在生产者端创建共享以包含两种模式:

    grant usage on database myDB to share myShare;
    grant usage on schema myDB.Schema_A to share myShare;
    grant usage on schema myDB.Schema_B to share myShare;
    

    那么在消费者端我们只需要担心一个共享来创建数据库:

    CREATE DATABASE myDB from share producerAccount.myshare;
    

    这解决了问题。事后看来,这是显而易见的。将制作方的所有部分放在一起,并在 READER ACCOUNT 中保持简单。

    呃……

    【讨论】:

      猜你喜欢
      • 2019-11-26
      • 2023-03-22
      • 2021-11-24
      • 2017-09-20
      • 2021-04-21
      • 1970-01-01
      • 2022-01-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多