设置 Openflow Connector for Excel¶
备注
使用该连接器需遵守 连接器条款。
本主题介绍设置 Openflow Connector for Excel 的步骤。
先决条件¶
确保您已查看 关于 Openflow Connector for Excel。
确保您已 设置 Openflow。
获取凭据¶
本节介绍获取凭据以配置连接器的步骤。根据您的数据源,
获取 AWS 凭据¶
作为 AWS 管理员,请执行以下任务:
登录到您的 AWS IAM 控制台。
在 Users 下选择数字,然后选择 Create user。
按需指定用户名、群组和其他权限。用户必须至少具备
s3:GetObject
访问权限,以访问连接器从 S3 存储桶读取的对象。创建用户后,在用户视图中导航至 Security Credentials » Access Keys。
选择 Create access key。新访问密钥必须仅授予对特定资源的访问权限。为了加强安全性和访问控制,Snowflake 建议仅允许访问特定 S3 存储桶。
记下 Access Key 和 Secret Access Key。
设置 Snowflake 账户¶
作为 Snowflake 账户管理员,执行以下任务:
创建新角色或使用现有角色。
创建一个类型为 SERVICE 的新 Snowflake 服务用户。
向该 Snowflake 服务用户授予您在前面步骤中创建的角色。
为第 2 步中创建的 Snowflake SERVICE 用户配置 密钥对身份验证。
强烈建议 配置 Openflow 支持的密钥管理器(例如 AWS、Azure 和 Hashicorp),并将公钥和私钥存储在密钥存储库中。
备注
如果您不希望使用密钥管理器,则您有责任根据组织的安全策略保护用于密钥对身份验证的公钥和私钥文件。
配置密钥管理器后,确定如何对其进行身份验证。在 AWS 中,建议您使用与 Openflow 关联的 EC2 实例角色,因为这样就无需持久保留其他密钥。
在 Openflow 中,从右上角的汉堡菜单中配置与此密钥管理器关联的 Parameter Provider。导航到 Controller Settings » Parameter Provider,然后提取您的参数值。
此时,可以使用关联的参数路径引用所有凭据,无需在 Openflow 中保留敏感值。
如果任何其他 Snowflake 用户需要访问连接器引入的原始文档和表(例如,在 Snowflake 中进行自定义处理),则授予这些用户在步骤 1 中创建的角色。
在 Snowflake 中为连接器创建数据库和架构,以存储引入的数据。向第一步中创建的角色授予所需的 数据库权限。用实际值替换角色占位符,然后使用以下 SQL 命令:
CREATE DATABASE excel_destination_db; CREATE SCHEMA excel_destination_db.excel_destination_schema; GRANT USAGE ON DATABASE excel_destination_db TO ROLE <excel_connector_role>; GRANT USAGE ON SCHEMA excel_destination_db.excel_destination_schema TO ROLE <excel_connector_role>; GRANT CREATE TABLE ON SCHEMA excel_destination_db.excel_destination_schema TO ROLE <excel_connector_role>;
创建供连接器使用的仓库,或者使用现有仓库。从最小的仓库规模开始,然后根据要复制的表数量和传输的数据量来测试规模。相较于扩大仓库规模,采用 多集群仓库 通常能更有效地应对海量表数量的扩展需求。
确保具有连接器所用角色的用户具备使用仓库所需的权限。否则请为该角色授予所需权限:
CREATE WAREHOUSE excel_connector_warehouse WITH WAREHOUSE_SIZE = 'X-Small'; GRANT USAGE ON WAREHOUSE excel_connector_warehouse TO ROLE <excel_connector_role>;
设置连接器¶
作为数据工程师,执行以下任务以安装和配置连接器:
安装连接器¶
导航到 Openflow“Overview”页面。在 Featured connectors 部分中,选择 View more connectors。
在 Openflow 连接器页面上,找到连接器并选择 Add to runtime。
在 Select runtime 对话框中,从 Available runtimes 下拉列表中选择您的运行时。
选择 Add。
备注
在安装连接器之前,请确保在 Snowflake 中为连接器创建了数据库和架构,用于存储引入的数据。
使用您的 Snowflake 账户凭据对部署进行身份验证,并在系统提示时选择 Allow,以允许运行时应用程序访问您的 Snowflake 账户。连接器安装过程需要几分钟才能完成。
使用您的 Snowflake 账户凭据进行运行时身份验证。
此时将显示 Openflow 画布,其中添加了连接器进程组。
配置连接器¶
配置连接器,从受支持的密钥管理器获取连接器所需的 所有 密钥,例如用于密钥对身份验证的私钥和证书。
右键点击导入的进程组并选择 Parameters。
按照 流参数 中所述填充所需的参数值。
流参数¶
本节介绍您可以根据数据源和参数上下文配置的流参数:
流参数:用于 Amazon S3¶
Microsoft Excel(从 S3 到 Snowflake)引入参数¶
参数 |
描述 |
必填 |
---|---|---|
目标表前缀 |
目标架构中表的前缀,从 Excel 文件检索到的数据将会持久保留在该表中。该表将由连接器自动创建。 |
否 |
文件密码 |
用于保护 Excel 文件的密码。仅在保护类型为 |
否 |
保护类型 |
Excel 文件的保护类型。该值可以是 |
是 |
范围 |
代表要从中检索值的逗号分隔范围的 A1 表示法。例如:Sheet1!A1:B2,Sheet2!D4:E5,Sheet3。选定范围内的第一行必须代表列名。如果未指定,则载入整个工作簿。指定范围适用于 |
否 |
S3 桶 |
应从中提取 Excel 文件的 S3 存储桶。 |
是 |
S3 对象密钥 |
包含待提取 Excel 文件的 S3 存储桶中以逗号分隔的对象密钥列表。示例: |
是 |
计划 |
连接器引入计划。 |
是 |
Microsoft Excel(从 S3 到 Snowflake)源参数¶
参数 |
描述 |
必填 |
---|---|---|
AWS 访问密钥 ID |
用于提取 Excel 文件的 AWS 用户的访问密钥 ID。 |
是 |
AWS 私密访问密钥 |
用于提取 Excel 文件的 AWS 用户的私有访问密钥。 |
是 |
AWS 区域 |
AWS S3 存储桶所在区域。 |
是 |
Microsoft Excel(从 S3 到 Snowflake)目标参数¶
参数 |
描述 |
必填 |
---|---|---|
目标数据库 |
要从中提取数据的 Snowflake 数据库的名称(区分大小写)。 |
是 |
目标架构 |
要在其中创建表的 Snowflake 架构的名称(区分大小写)。 |
是 |
Snowflake 账户标识符 |
Snowflake 账户名称格式为 [organization-name]-[account-name],指明要持久保留从 Excel 文件检索到的数据的位置。 |
是 |
Snowflake 私钥 |
根据 PKCS8 标准格式化的私钥,包含标准 PEM 头尾标记,用于密钥对身份验证。 |
是 |
Snowflake 私钥密码 |
Snowflake 私钥的密码。如果密钥不受密码保护,则必须留空,不指定任何值。 |
否 |
Snowflake 角色 |
连接器将使用的 Snowflake 角色。 |
是 |
Snowflake 用户 |
Snowflake 账户的用户名。 |
是 |
Snowflake 仓库 |
在向目标表中插入数据时,用于运行查询的 Snowflake 仓库。 |
是 |
运行流¶
右键点击“飞机”图标并选择 Enable all Controller Services。
右键点击导入的进程组并选择 Start。连接器开始数据引入。
生成的表名称¶
连接器创建使用以下模板命名的目标表:{PREFIX}{FILENAME}_{RANGE}
。名称始终为 加双引号的标识符。
{PREFIX}
替换为Destination Table Prefix
参数的值,例如prfx_
。{FILENAME}
替换为所引入文件的完整路径,例如file1.xlsx
或folder/file2.xlsx
。{RANGE}
会替换为:如果
Ranges
参数值为空,则替换为所引入工作表的名称。包含
Ranges
参数指定引入范围(例如Sheet1!A1:B2
)的引入工作表名称。
生成的表名称示例:
"file1.xlsx_Sheet1"
"prfx_folder/file2.xlsx_Sheet1!A1:B2"
(可选)重新配置当前运行的连接器¶
在连接器开始引入数据后,您可以重新配置连接器参数。如果您需要更改引入的文件或范围,请执行以下步骤,确保数据正确发送到 Snowflake:
停止连接器:确保所有 Openflow 处理器都已停止。
访问配置设置:在 Openflow 中导航到连接器配置设置。
修改参数:根据需要调整参数。
启动连接器:启动连接器,并确保所有控制器服务均已启动。