Snowflake (已弃用)

Snowflake 使数据存储、处理和分析解决方案比传统产品/服务更快、更易于使用且更灵活。

此连接器在以下产品和区域中可用:

服务 Class 区域
逻辑应用程序 标准 除以下各项外的所有 逻辑应用区域
     - Azure 政府区域
     - Azure 中国区域
     - 美国国防部(DoD)
Power Automate 高级 除以下各项外的所有 Power Automate 区域
     - 美国政府 (GCC)
     - 美国政府 (GCC High)
     - 由世纪互联运营的中国云
     - 美国国防部(DoD)
Power Apps 高级 除以下各项外的所有 Power Apps 区域
     - 美国政府 (GCC)
     - 美国政府 (GCC High)
     - 由世纪互联运营的中国云
     - 美国国防部(DoD)
联系人​​
Name Snowflake
URL https://www.snowflake.com/support
Email support@snowflake.com
连接器元数据
发布者 Snowflake Inc.
网站 https://www.snowflake.com
隐私策略 https://www.snowflake.com/privacy-policy
类别 Data

注释

此连接器已弃用,请使用此连接器的增强替代方法: Snowflake(预览版)连接器

此连接器基于 Snowflake SQL REST API。 Snowflake 的数据云由作为自助服务提供的高级数据平台提供支持。 Snowflake 支持数据存储、处理和分析解决方案,这些解决方案比传统产品/服务更快、更易于使用且更灵活。 连接器使用 Snowflake REST API V2 提交同步和异步查询并检索相应的结果。

先决条件

提供有关使用此连接器所需的任何先决条件的信息。 例如,网站或付费服务计划上的帐户。

如何获取凭据

按照以下步骤为 Snowflake 设置Microsoft Entra ID 身份验证:

  1. 步骤 1:在 Microsoft Entra ID 中配置 OAuth 资源,请按照步骤 1-10 按照以下说明定义范围SESSION:ROLE-ANY
  2. 步骤 2:在 Microsoft Entra ID 中创建 OAuth 客户端,请遵循步骤 1-13。
  3. 导航到 身份验证 ->平台配置 ->添加平台 ->Add “https://global.consent.azure-apim.net/redirect"-> 单击“ 保存”。 请确保在 Snowflake OAuth 客户端而不是 Snowflake OAuth 资源中设置重定向 URL。
  4. 转到在步骤 1 中创建的资源,然后转到“公开 API”->添加客户端应用程序 -“添加前面>步骤 3 中的”添加“APPLICATION_CLIENT_ID->单击”保存”
  5. 遵循 步骤 3:完全收集 Snowflake 的Microsoft条目 ID 信息
  6. 将下面的文本复制并粘贴到 Snowflake 工作表中,该工作表是在 Snowflake 中执行查询的位置。 在执行查询之前,请确保进行以下替换,以便查询成功。 答: 在 azure Microsoft中,转到 Snowflake OAuth 资源应用并单击 “终结点”。 B. 若要获取第 5 行中的AZURE_AD_ISSUER,请复制 联合元数据文档 字段中的链接,并在新选项卡中打开该链接。复制实体 ID 链接,该链接应如下所示: https://sts.windows.net/90288a9b-97df-4c6d-b025-95713f21cef9/。 将其粘贴到查询中,并确保在最后一个引号之前有一个 / 引号,并保留引号。 C. 若要获取第 6 行中的密钥 URL,请复制 OpenID Connect 元数据文档字段中的链接,并在新选项卡中打开该链接。复制应如下所示的jwks_uri: https://login.microsoftonline.com/90288a9b-97df-4c6d-b025-95713f21cef9/discovery/v2.0/keys 将其粘贴到查询中,并确保保留引号。
    D. 将第 7 行中的访问群体列表 URL 替换为 Application ID URI 步骤 1。 保留引号。
    E. 如果 Snowflake 帐户使用与 Microsoft Azure 帐户相同的电子邮件地址,请将第 9 email_address行替换为 login_name 。 否则,请保持原样,不要键入登录名。 保留引号。
    F. 请确保已将角色设置为 ACCOUNTADMIN。 现在,可以执行查询。
create security integration connector
       type = external_oauth
       enabled = true
       external_oauth_type = azure
       external_oauth_issuer = '<AZURE_AD_ISSUER>'     
       external_oauth_jws_keys_url = 'https://login.windows.net/common/discovery/keys'
       external_oauth_audience_list = ('https://analysis.usgovcloudapi.net/powerbi/connector/snowflake')
       external_oauth_token_user_mapping_claim = 'upn'
       external_oauth_snowflake_user_mapping_attribute = 'login_name'
       external_oauth_any_role_mode = 'ENABLE';

连接器入门

提交 SQL 语句以供执行

检查状态并获取结果

取消语句的执行

已知问题和限制

  1. 如果在创建新连接时收到 500 响应,则这是暂时性错误。 请等待几分钟,然后重试。
  2. 如果在步骤 1 中收到 401 响应,并且主机字段遵循以下格式“orgname-accountname”,请将“主机”字段替换为“定位符”URL。
  3. 连接器可能会超时并显示大型查询结果。

FAQ

  1. 如何在 Power Apps 中使用连接器? 目前,Power Apps 不支持动态架构。 你仍可以通过从应用调用流而不是直接从应用使用 Power Apps 中的连接器。

限制

名称 调用 续订期
每个连接的 API 调用数 100 60 秒

操作

取消语句的执行

取消语句的执行

将结果集行从数组转换为对象

将结果集行从数组转换为对象

提交 SQL 语句以供执行

提交 SQL 语句以供执行

检查状态并获取结果

检查语句的执行状态并获取结果

取消语句的执行

取消语句的执行

参数

名称 密钥 必需 类型 说明
实例
Instance True string

Snowflake 实例的 URI(没有 https://)

语句句柄
statementHandle True string

语句句柄

请求编号
requestId string

请求编号

返回

名称 路径 类型 说明
代码
code string

代码

sqlState
sqlState string

sqlState

消息
message string

消息

statementHandle
statementHandle string

statementHandle

statementStatusUrl
statementStatusUrl string

statementStatusUrl

将结果集行从数组转换为对象

将结果集行从数组转换为对象

参数

名称 密钥 必需 类型 说明
rowType
resultSetMetaData string
数据
data string

返回

名称 路径 类型 说明
数据
data array of object

结果集数据。

items
data object

提交 SQL 语句以供执行

提交 SQL 语句以供执行

参数

名称 密钥 必需 类型 说明
实例
Instance True string

Snowflake 实例的 URI(没有 https://)

请求编号
requestId string

请求的 ID

异步
async boolean

指示是否应异步执行查询

可为空
nullable boolean

如果可为 null 为 false,则 null 值将被字符串替换

报表
statement string

要执行的 SQL 语句 - 尚不支持的语句批处理

timeout
timeout integer

超时前的秒数

数据库
database string

数据库

架构
schema string

架构

warehouse
warehouse string

warehouse

角色
role string

角色

timezone
timezone string

执行语句时要使用的时区。

查询标记
query_tag string

要与 SQL 语句关联的查询标记。

二进制输出格式
binary_output_format string

二进制值的输出格式。

日期输出格式
date_output_format string

DATE 值的输出格式。

时间输出格式
time_output_format string

TIME 值的输出格式。

时间戳输出格式
timestamp_output_format string

TIMESTAMP 值的输出格式。

timestamp ltz 输出格式
timestamp_ltz_output_format string

TIMESTAMP_LTZ值的输出格式。

timestamp_ntz_output_format
timestamp_ntz_output_format string

TIMESTAMP_NTZ值的输出格式。

timestamp tz 输出格式
timestamp_tz_output_format string

TIMESTAMP_TZ值的输出格式。

多语句计数
multi_statement_count integer

使用多语句功能时要执行的语句数。 0 表示可变数量的语句。 不允许负数。

返回

名称 路径 类型 说明
代码
code string
sqlState
sqlState string
消息
message string
statementHandle
statementHandle string
createdOn
createdOn integer

指定语句执行何时启动的时间戳。 时间戳表示为自纪元以来的毫秒

statementStatusUrl
statementStatusUrl string
格式
resultSetMetaData.format string

对于 v2 终结点,此字段的唯一可能值为 jsonv2。

rowType
resultSetMetaData.rowType array of object
姓名
resultSetMetaData.rowType.name string
类型
resultSetMetaData.rowType.type string
可为空
resultSetMetaData.rowType.nullable boolean
partitionInfo
partitionInfo array of object

分区信息

rowCount
partitionInfo.rowCount integer

分区中的行数。

compressedSize
partitionInfo.compressedSize integer

解压缩前的分区大小。 这可能存在于 partitionInfo 中,也可能不存在。 未压缩的大小将始终存在。

uncompressedSize
partitionInfo.uncompressedSize integer

解压缩后的分区大小

可为空
nullable boolean

如果 null 替换为字符串“null”,则为 false;否则为 false

数据
data array of array

结果集数据。

items
data array of string
numRowsInserted
stats.numRowsInserted integer

插入的行数。

numRowsUpdated
stats.numRowsUpdated integer

已更新的行数。

numRowsDeleted
stats.numRowsDeleted integer

已删除的行数。

numDuplicateRowsUpdated
stats.numDuplicateRowsUpdated integer

已更新的重复行数。

检查状态并获取结果

检查语句的执行状态并获取结果

参数

名称 密钥 必需 类型 说明
实例
Instance True string

Snowflake 实例的 URI(没有 https://)

语句句柄
statementHandle True string

语句句柄

请求编号
requestId string

请求编号

分区
partition integer

分区

返回

名称 路径 类型 说明
代码
code string
sqlState
sqlState string
消息
message string
statementHandle
statementHandle string
createdOn
createdOn integer

指定语句执行何时启动的时间戳。 时间戳表示为自纪元以来的毫秒

statementStatusUrl
statementStatusUrl string
格式
resultSetMetaData.format string

对于 v2 终结点,此字段的唯一可能值为 jsonv2。

rowType
resultSetMetaData.rowType array of object
姓名
resultSetMetaData.rowType.name string
类型
resultSetMetaData.rowType.type string
可为空
resultSetMetaData.rowType.nullable boolean
partitionInfo
partitionInfo array of object

分区信息

rowCount
partitionInfo.rowCount integer

分区中的行数。

compressedSize
partitionInfo.compressedSize integer

解压缩前的分区大小。 这可能存在于 partitionInfo 中,也可能不存在。 未压缩的大小将始终存在。

uncompressedSize
partitionInfo.uncompressedSize integer

解压缩后的分区大小

可为空
nullable boolean

如果 null 替换为字符串“null”,则为 false;否则为 false

数据
data array of array

结果集数据。

items
data array of string
numRowsInserted
stats.numRowsInserted integer

插入的行数。

numRowsUpdated
stats.numRowsUpdated integer

已更新的行数。

numRowsDeleted
stats.numRowsDeleted integer

已删除的行数。

numDuplicateRowsUpdated
stats.numDuplicateRowsUpdated integer

已更新的重复行数。