为 Snowflake Open Catalog 配置目录集成

备注

这些说明也适用于为 Apache Polaris™ 配置目录集成。

Snowflake Open Catalog 创建一个目录集成,借此您可以使用 Snowflake 查询 Snowflake Open Catalog 中的表,或将 Snowflake 管理的表与 Open Catalog 同步。有关更多信息,请参阅 在 Snowflake 中将 Apache Iceberg™ 表与 Snowflake Open Catalog 结合使用

Open Catalog 的目录集成与 Open Catalog 账户中的特定目录和服务连接相关联。

有关创建目录集成以将 Open Catalog 连接到 Snowflake 的更多信息,请参阅以下主题:

示例:为 Open Catalog 创建目录集成

要为 Open Catalog 创建目录集成,请使用 CREATE CATALOG INTEGRATION 命令。

例如:

CREATE OR REPLACE CATALOG INTEGRATION my_open_catalog_int
  CATALOG_SOURCE = POLARIS
  TABLE_FORMAT = ICEBERG
  CATALOG_NAMESPACE = 'myOpenCatalogCatalogNamespace'
  REST_CONFIG = (
    CATALOG_URI = 'https://ABCDEFG-ACCOUNT1.snowflakecomputing.cn/polaris/api/catalog'
    CATALOG_NAME = 'myOpenCatalogExternalCatalogName'
  )
  REST_AUTHENTICATION = (
    TYPE = OAUTH
    OAUTH_CLIENT_ID = 'myClientId'
    OAUTH_CLIENT_SECRET = 'myClientSecret'
    OAUTH_ALLOWED_SCOPES = ('PRINCIPAL_ROLE:ALL')
  )
  ENABLED = TRUE;
Copy
  • CATALOG_URI 的值是您的 Open Catalog 账户 URL。有关更多信息,请参阅 CATALOG_URI 参数说明。

  • 如果您 将 Snowflake 管理的表与 Open Catalog 同步,则 CATALOG_NAMESPACE 参数不是必填的,也不会影响您与 Open Catalog 同步表的方式。Snowflake 将表同步到您在目录集成中指定的 Open Catalog 外部目录,并同步其在 Snowflake 中的父命名空间。

    例如,如果您在 Snowflake 中注册了一个 db1.public.table1 Iceberg 表,并且在目录集成中指定了 catalog1,则该表将与 Open Catalog 同步,并使用以下完全限定名称:catalog1.db1.public.table1

备注

要检查您的身份验证配置,请参阅 Check a configuration for OAuth

语言: 中文