Spotfire® 用户指南

Snowflake 连接器 - 功能和设置

可以在 Spotfire 中连接到 Snowflake 并访问其中的数据。在此页面上,可以了解相关功能、可用设置以及使用与 Snowflake 的数据连接时的注意事项。

页面内容

连接器功能

使用 Snowflake 连接器访问数据时,可以使用以下功能。

功能 支持?
加载方法
  • 导入(内存中)
  • 外部(数据库内)
  • 按需
自定义查询
预存程序
自定义连接属性
使用身份提供程序进行单点登录
在 Web 客户端中编写
包含在 Linux 上的 Spotfire 发行版中

数据源属性

以下是在使用 Oracle 连接器创建数据连接时可以配置的受支持的数据源属性。

选项 说明
服务器

您的数据所在的服务器的主机名。Snowflake 服务器包含多个数据库,这些数据库包含架构,而架构又包含表。

<account_identifier>.snowflakecomputing.com

身份验证方法

当登录到数据库时要使用的身份验证方法。其选项包括:

身份提供程序 (OAuth2)
使用身份提供程序(例如 Azure、Okta 或 Keycloak)登录。当您打开数据连接时,将会打开一个 Web 浏览器窗口,您可以使用身份提供程序的登录程序来登录。
用户名和密码(带有 MFA 令牌缓存)
使用用户名和密码登录,并让 ODBC 驱动程序缓存您在多重身份验证 (MFA) 设备上批准请求后收到的访问令牌。

缓存的令牌的有效期最长为 4 小时。如果分析的使用时长超过 4 小时,则每当 Spotfire 向 Snowflake 发送查询时,都会向您的 MFA 设备发送一个新请求。如果您没有及时批准该请求,或者如果从 Spotfire 发送了许多查询,则您可能会暂时被 Snowflake 锁定。

注: 默认情况下,无法在 Spotfire Web 客户端中使用此身份验证方法。在 Web 客户端中使用令牌缓存登录到 Snowflake 数据连接时,驱动程序会将令牌缓存在运行 Spotfire Web Player 服务的计算机上的凭据管理器中。有权访问该共享计算机的任何人都可以访问此令牌。要启用此身份验证方法以在 Web 客户端中使用,请使用“管理器”中的 AllowMfaTokenCachingOnWebPlayer 偏好。
用户名和密码
使用 Snowflake 用户名和密码登录。如果需要多重身份验证 (MFA),则必须批准从 Spotfire 发送的每个查询。
Okta
Snowflake 通过 Okta 提供本地身份验证。您可以使用用户名、密码和 URL 端点进行身份验证。
身份提供程序 (OAuth2)

[仅适用于身份提供程序 (OAuth2) 身份验证。]

选择要用于登录数据源的身份提供程序。下拉菜单中提供的选项是您已向 OAuth2IdentityProviders 偏好添加的身份提供程序。

作用域

[仅适用于身份提供程序 (OAuth2) 身份验证。]

当您登录到数据源时,作用域决定了 Spotfire 代表您请求的权限。

默认值

使用您在 OAuth2IdentityProviders 偏好中为身份提供程序指定的默认作用域。

自定义

在文本框中手动输入作用域。用空格分隔值。

Scope_1 Scope_2
Okta URL

[仅适用于 Okta 身份验证。]

输入要连接的 Okta 实例的 URL。

https://<okta_account_name>.okta.com

连接超时(秒)

指定建立连接允许的最大秒数。

默认值为 300。

注: 如果将连接超时设为零,则被视为永不超时。即,尝试连接时不设上限。通常不建议采取这种做法。
命令超时 (秒)

指定执行命令允许的最大秒数。

默认值为 0。

注: 如果将命令超时设为零,则被视为永不超时。即,尝试执行命令时不设上限。通常不建议采取这种做法。
仓库

[成功连接后,仓库选项将可用。]

仓库是服务器的集合,用来决定查询将使用多少计算能力。选择仓库为可选操作。

角色 [成功连接后,角色选项将可用。]

角色决定用户可以访问哪些数据库视图。选择角色为可选操作。角色保存在连接数据源中。

Snowflake 连接数据源的自定义属性

以下是允许用作 Snowflake 连接数据源中自定义属性的默认驱动程序设置列表。要了解如何更改允许的自定义属性,请参见控制允许哪些属性

默认允许的自定义属性

login_timeout, maxHttpRetries, network_timeout, no_proxy, odbc_use_standard_timestamp_columnsize, passcodeInPassword, proxy, query_timeout, retryTimeout, SecondaryRoles, tracing

受支持的数据类型

设置到外部数据源的连接时,Spotfire 需要将数据源中的数据类型映射到 Spotfire 中的数据类型。以下是 Snowflake 连接器支持的数据类型。

数据库数据类型 Spotfire 数据类型
BINARY Binary
VARBINARY Binary
BOOLEAN Boolean
DATE Date
TIMESTAMP DateTime
NUMERIC Currency/Decimal
DECIMAL Currency/Decimal
FLOAT Real/Double
DOUBLE Real/Double
REAL SingleReal/Float
INTEGER Integer
BIGINT LongInteger/Long
CHAR String
VARCHAR String
TIME Time

支持的函数

支持的函数是指您在处理数据库中的数据表时可以使用的函数,例如在计算的列和自定义表达式中使用。

注: 您的数据库可能无法使用某些受支持的函数。这取决于数据库中可用的函数,不同数据库版本和类型之间通常会有差异。

以下是 Snowflake 连接器支持的函数。

函数类型 支持的函数
日期和时间 Add_Months、Convert_Timezone、CURDATE、CURRENT_DATE、CURRENT_TIME、CURRENT_TIMESTAMP、CURTIME、Date_From_Parts、Date_Part、Date_Trunc、DateAdd、DateDiff、DAYNAME、DAYOFMONTH、DAYOFWEEK、DAYOFYEAR、HOUR、Last_Day、MINUTE、MONTH、MonthName、Next_Day、Previous_Day、QUARTER、SECOND、Time_From_Parts、Time_Slice、Timestamp_From_Parts、WEEK、YEAR
转换 COALESCE、NULLIF、To_Char、Try_To_Boolean、Try_To_Date、Try_To_Double、Try_To_Number、Try_To_Time、Try_To_Timestamp
数学 ABS、ACOS、Acosh、ASIN、Asinh、ATAN、ATAN2、Atanh、Cbrt、CEILING、COS、Cosh、COT、DEGREES、EXP、Factorial、FLOOR、Haversine、Ln、LOG、MOD、PI、POWER、RADIANS、RAND、ROUND、SIGN、SIN、Sinh、SQRT、Square、TAN、Tanh、TRUNCATE
注: 在 Spotfire 中,Factorial 函数的输入必须是介于 0-27 范围内的整数表达式。这与 Snowflake 中的范围不同。
运算符 +、-、*、/
统计 Avg、Count、Listagg、Max、Median、Min、Stddev、Stddev_Pop、Stddev_Samp、Sum、UniqueCount、Var_Pop、Var_Samp、Variance、Variance_Pop、Variance_Samp
文本 ASCII、BIT_LENGTH、CHAR、CHAR_LENGTH、CHARACTER_LENGTH、CharIndex、CONCAT、Contains、EditDistance、EndsWith、ILike、InitCap、INSERT、LCASE、LEFT、LENGTH、LikeAny、LOCATE、LOWER、LTRIM、OCTET_LENGTH、POSITION、RegExp_Count、RegExp_Instr、RegExp_Replace、RegExp_Substr、REPEAT、REPLACE、RIGHT、RLike、RTRIM、SPACE、StartsWith、Substr、SUBSTRING、Trim、UCASE、UPPER