为 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;
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。