配置 Snowpipe Streaming¶
Snowpipe Streaming 属性¶
配置 profile.json
文件中的 API 连接设置。本主题中描述了这些属性。
如 Java 示例 (https://github.com/snowflakedb/snowflake-ingest-java/blob/master/src/main/java/net/snowflake/ingest/streaming/example/SnowflakeStreamingIngestExample.java) (GitHub) 所示,您可以通过指定文件路径作为变量 PROFILE_PATH
的输入,从 profile.json
加载设置。
所需属性¶
authorization_type
配置用户的身份验证和授权方式。您可以使用以下方法之一:
JWT
:使用 JSON 网络令牌 (JWT) 进行密钥对身份验证。这是默认方法。若未配置authorization_type
,则使用默认方法JWT
。配置以下private_key
,用于密钥对身份验证:private_key
用于对用户进行身份验证的私钥。仅包含密钥,不包含标头或页脚。如果密钥分为多行,请删除换行符。您可以提供未加密的密钥,也可以提供加密的密钥并提供
snowflake.private.key.passphrase
参数,允许 Snowflake 解密密钥。当且仅当snowflake.private.key
参数值已加密时才使用此参数。
OAuth
:Snowflake OAuth。此选项仅适用于 Snowflake Ingest SDK 2.0.3 版本及更高版本。在profile.json
文件中为 Snowflake OAuth 配置以下参数:oauth_client_id
:OAuth 集成的客户端 ID。oauth_client_secret
:OAuth 集成的客户端密钥。oauth_refresh_token
:OAuth 集成的有效刷新令牌。
url
URL 用于访问您的 Snowflake 账户。URL 必须包括您的 账户标识符。请注意,协议 (
https://
) 和端口号是可选的。请注意,如果您已使用 Snowflake Ingest SDK 并在
profile.json
文件中设置了host
、scheme
和port
属性,则不需要url
。user
Snowflake 账户的用户登录名。
可选属性¶
snowflake.private.key.passphrase
密钥加密时用于解密私钥的密码。有关信息,请参阅 ` 使用密钥对身份验证和密钥轮换 `_ (本主题内容)。
role
连接到 Snowflake 后用于会话的访问控制角色。
请注意,Snowflake Ingest SDK 2.0.3 版本及更高版本的
role
属性是可选的。在早期 Ingest SDK 版本中,该属性为必选项。
示例¶
有关如何使用客户端 SDK 构建 Snowpipe Streaming 应用程序的简单示例,请参阅 此 Java 文件 (https://github.com/snowflakedb/snowflake-ingest-java/blob/master/src/main/java/net/snowflake/ingest/streaming/example/SnowflakeStreamingIngestExample.java) (GitHub)。
快速入门示例:
流数据与 Snowflake 集成 (https://quickstarts.snowflake.com/guide/data_engineering_streaming_integration/index.html)
`Snowpipe Streaming 和 Amazon MSK 入门 <https://quickstarts.snowflake.com/guide/getting_started_with_snowpipe_streaming_aws_msk/index.html (https://quickstarts.snowflake.com/guide/getting_started_with_snowpipe_streaming_aws_msk/index.html)> `_