跳到主要内容 跳到补充内容

Snowflake

您可以使用 Snowflake 作为数据管道中的目标数据平台。在数据管道中,可以在目标平台上执行各种操作,包括登陆数据、存储数据、转换数据、创建数据集市和注册数据。 本主题介绍如何使用 Snowflake Target 连接器配置与 Snowflak 目标的连接。在连接到 Snowflake 目标之前,您需要在数据库上配置 所需的权限。如果您通过 数据移动网关 连接到 Snowflake,还需要安装所需的驱动程序,如 驱动程序设置 中所述。

有关使用 Snowflake Target 连接器时的限制和注意事项的信息,请参见限制和考虑事项

设置连接属性

本节介绍可用的连接属性。除非另有说明,否则所有属性都是必需的。

数据移动网关

数据网关只有当目标数据库无法从 Qlik Cloud 访问时(例如,如果它位于或虚拟专用云中),才需要 数据移动网关,并且只能使用私有链接访问。如果是这种情况,请选择要通过其访问目标数据库的 数据移动网关

根据您的使用情况,这将是从数据源部署到陆地数据的相同 数据移动网关,或者是与之不同的。有关可能的 数据移动网关 部署可能性的信息,请参阅常见用例

信息注释需要 数据移动网关 2022.11.70 或更高版本。

如果可以从 Qlik Cloud 直接访问目标数据库,请选择

信息注释通过 数据移动网关 访问目标数据库时,还需要在 数据移动网关 计算机上安装相应的驱动程序。有关详细信息,请参见下文的驱动程序设置

连接属性

  • 服务器:您用于访问 Snowflake 的 URL。例如,myaccount.snowflakecomputing.com。

  • 端口:您要用来访问 Snowflake 数据库的端口。默认值为 443。

帐户属性

用户名密码:经授权可访问 Snowflake 数据库的用户的用户名和密码。

数据库属性

  • 默认仓库:Snowflake 仓库的名称。您可以在项目设置中覆盖此设置。
  • 数据库名称:有两种方法可以用于指定数据库:

    • 方法 1 - 从列表中选择:单击加载数据库,然后选择一个数据库。
    • 方法 2 - 手动:选择手动输入数据库名称,然后输入数据库名称。

内部属性

内部属性用于特殊用例,因此不会在对话框中公开。只有在 Qlik 支持部门的指示下,您才应该使用它们。

使用字段右侧的 新建取消 按钮可以根据需要添加或删除特性。

名称

连接的显示名称。

先决条件

所需的权限

需要以下权限:

  • USAGE ON DATABASE
  • CREATE SCHEMA ON DATABASE
  • USAGE ON DATABASE
  • USAGE ON SCHEMA
  • CREATE FILE FORMAT ON SCHEMA
  • CREATE STAGE ON SCHEMA
  • CREATE TABLE ON SCHEMA

驱动程序设置

只有通过 数据移动网关 访问数据库时才需要驱动程序。

您可以使用驱动程序安装实用程序(推荐)安装 driver 或手动安装。只有在您遇到驱动程序安装实用程序发生问题的少见情况下,才应尝试手动安装。

使用驱动程序安装实用程序安装驱动程序

本部分介绍如何安装所需的 driver。这个过程包括下载 driver,将其复制到所需的文件夹(见下文),并运行一个脚本来自动安装和配置它。您还可以根据需要运行脚本来更新和卸载 driver

  • 请确保在 数据移动 网关服务器上安装了 Python 3.6 或更高版本。

    Python 预装在大多数 Linux 发行版上。您可以通过运行以下命令来检查系统上安装了哪个 Python 版本。

    python3 --version

  • 下载 Snowflake ODBC 驱动程序 "snowflake-odbc-<版本>.x86_64.rpm"。您可以在此路径下面找到受支持版本的直接下载链接:binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/snowflake.yaml。下载完成后,将文件复制到:

    /opt/qlik/gateway/movement/drivers/snowflake

安装 driver

  1. 停止 数据移动网关 服务:

    sudo systemctl stop repagent

  2. 可选择确认服务已停止:

    sudo systemctl status repagent

    状态应如下所示:

    Active: inactive (dead) since <timestamp> ago

  3. 数据移动 网关计算机上,将工作目录更改为:

    opt/qlik/gateway/movement/drivers/bin

  4. 然后运行以下命令:

    语法:

    ./install snowflake

    否则,将显示 driver 的 EULA。

  5. 执行以下选项之一:

    • 重复按 [Enter] 可在 EULA 中缓慢滚动。
    • 重复按空格键可快速滚动 EULA。
    • 按 q 退出许可证文本并显示 EULA 接受选项。
  6. 执行以下操作之一:

    • 键入 "y" 并按 [Enter] 接受 EULA 并开始安装。
    • 键入 "n" 并按 [Enter] 拒绝 EULA 并退出安装。
    • 键入“v”并按 [Enter] 以再次查看 EULA。

  7. 将会安装 driver

  8. 等待安装完成(以“完成!”指示),然后启动 数据移动网关 服务:

    sudo systemctl start repagent

  9. 可选择确认服务已启动:

    sudo systemctl status repagent

    状态应如下所示:

    Active: active (running) since <timestamp> ago

如果要在安装提供的 driver 之前卸载以前版本的 driver,请运行 update 命令。

更新 driver

  1. 停止 数据移动网关 服务:

    sudo systemctl stop repagent

  2. 可选择确认服务已停止:

    sudo systemctl status repagent

    状态应如下所示:

    Active: inactive (dead) since <timestamp> ago

  3. 数据移动 网关计算机上,将工作目录更改为:

    opt/qlik/gateway/movement/drivers/bin

  4. 然后运行以下命令:

    语法:

    ./update snowflake

    否则,将显示 driver 的 EULA。

  5. 执行以下选项之一:

    • 重复按 [Enter] 可在 EULA 中缓慢滚动。
    • 重复按空格键可快速滚动 EULA。
    • 按 q 退出许可证文本并显示 EULA 接受选项。
  6. 执行以下操作之一:

    • 键入 "y" 并按 [Enter] 接受 EULA 并开始安装。
    • 键入 "n" 并按 [Enter] 拒绝 EULA 并退出安装。
    • 键入“v”并按 [Enter] 可从头开始查看 EULA。
  7. 将卸载旧的 driver,并安装新的 driver

  8. 等待安装完成(以“完成!”指示),然后启动 数据移动网关 服务:

    sudo systemctl start repagent

  9. 可选择确认服务已启动:

    sudo systemctl status repagent

    状态应如下所示:

    Active: active (running) since <timestamp> ago

如果要卸载 driver,请运行 uninstall 命令。

卸载 driver

  1. 停止所有配置为使用此连接器的任务。

  2. 数据移动 网关计算机上,将工作目录更改为:

    opt/qlik/gateway/movement/drivers/bin

  3. 然后运行以下命令:

    语法:

    ./uninstall snowflake

    将卸载 driver

手动安装驱动程序

只有在自动驱动程序安装未成功完成的情况下,才应尝试手动安装 driver

您需要同时安装 ODBC 驱动程序和 JDBC 驱动程序。

  1. 安装 数据移动网关 后,下载 /opt/qlik/gateway/movement/drivers/manifests/snowflake.yamlbinary-artifacts 下列出的 snowflake-odbc-<version>x86_64.rpm 驱动程序文件,并将其复制到 数据移动网关 计算机上。
  2. 数据移动网关 计算机上安装驱动程序。
  1. 下载 /opt/qlik/gateway/movement/drivers/manifests/snowflake.yamlbinary-artifacts 下列出的 snowflake-jdbc-<version>.jar 文件,并将其复制到 数据移动网关 计算机上的以下文件夹中:

    /opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib

  2. 重新启动 数据移动网关 服务,并通过运行 数据移动网关 服务命令 中所述的命令检查服务是否已启动

端口

需要为出站通信打开防火墙端口 443。

性能和云服务使用优化

有关使用 Snowflake 云服务时产生的费用的信息,请参阅 Snowflake:额外计费(云服务层)影响

限制和考虑事项

将数据移动到 Snowflake 目标时,以下限制适用:

  • 不支持复制名称中带有反斜杠的表(例如 SPECIAL\\TABLE\N)。

数据类型

下表显示了使用 Qlik Cloud 时支持的 Snowflake 数据类型以及自 Qlik Cloud 数据类型的默认映射。

本机数据类型信息将被保留,并显示在数据集视图的本机数据类型列中。如果列不可见,则需要打开数据集视图的列选择器,然后选择本机数据类型列。

支持的数据类型
Qlik Cloud 数据类型 Snowflake 数据类型

BOOLEAN

BOOLEAN

BYTES

BINARY(以字节计算的长度)

DATE

DATE

TIME

TIME(精确度)

DATETIME

TIMESTAMP_NTZ(精确度)

INT1

BYTEINT

INT2

SMALLINT

INT4

INTEGER

INT8

BIGINT

NUMERIC

NUMBER(精确度、刻度)

REAL4

FLOAT4

REAL8

FLOAT8

UINT1

BYTEINT

UINT2

INTEGER

UINT4

INTEGER

UINT8

BIGINT

STRING

VARCHAR(以字节计算的长度)

WSTRING

NVARCHAR(以字节计算的长度)

BLOB

BINARY (8388608)

NCLOB

NVARCHAR (8388608)

CLOB

VARCHAR (8388608)

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!