Snowflake Lookup 设置

Version 24.3.9111


Snowflake Lookup 设置


Lookup 操作从 Snowflake 检索值并将这些值插入到流中的现有知行之桥消息中。

  1. 在知行之桥的工作流中,从端口中拖动一个箭头,该箭头将为 Snowflake 端口提供输入。

  2. (可选)选择 示例文件。 建议使用示例文件,因为它允许端口提供有关文件结构的更多上下文并帮助构建 过滤器 条件。

  3. 完成以下配置步骤后,在知行之桥的工作流中,将箭头从 Snowflake 端口拖动到希望生成的 XML 或消息头数据所在的端口。

Lookup 配置

使用此部分定义要包含在查询中的表和列。 设计器模式 可帮助选择要作为查询目标的表和列,而不是要求构建自由形式的查询。 但是,如果希望从头开始编写查询,则可以使用查询模式

设计器模式

按照以下步骤使用设计器为 Snowflake 端口配置查找操作。

  1. 使用 表格 下拉列表选择要包含的表格。

  2. 选择要从表中包含的

  3. 输出目标:选择 XPath 将查询响应值插入到 XML 文件中,或选择 Header 将查询响应值插入到消息头中。
    • XPath:当选择 XPath 时,目标分为两部分。 父级 XPath 应已存在于 XML 文档中。 新节点名称 是注入到 XML 文档中以保存查找结果的节点的名称。 查询中的每一列在此处提供的 XML 元素中都有自己的 XML 元素(叶级别)。
    • 消息头:当选择“消息头”时,端口会向查询中每一列的输出消息添加一个消息头。 从数据库返回的每条记录的值均以逗号分隔。
  4. 使用 Record Limit 指定查询返回多个结果时应该发生的情况。
    • 如果从下拉列表中选择 使用第一个结果,则可以使用 如果多个结果时出错 在返回多个结果时查看错误。
    • 如果选择 自定义限制,则必须在显示的字段中指定限制。
  5. 使用 排序 选择按哪一列对结果进行排序。

  6. 过滤器 部分允许创建过滤器来构建查询 WHERE 子句,包括对输入文件中的消息头或 XML 的引用。

过滤器

可以通过定义单个过滤器和/或过滤器组来构建复杂的过滤器。 为了便于阅读,请单击栏右侧的扩展器图标 expander 展开 Filters 部分。

要添加过滤器,请单击 添加过滤器添加组

当构建过滤器时,请使用下拉菜单进行选择并选择运营商。 然后指定要过滤的值。 可以从以下选项中进行选择:

  • 消息头
  • 输入XML
  • 静态值

当为过滤器选择输入 XML 时,如果已上传示例文件,编辑器将显示文档的树形表示形式,以便可以轻松找到所需的 XPath,如下图所示。

可以重新排序过滤器和组。 单击手柄 handle 并将对象拖动到新位置。

查询模式

按照以下步骤使用查询模式为 Snowflake 端口配置查找操作。

  1. 输出目标:选择 XPath 将查询响应值插入到 XML 文件中,或选择 消息头 将查询响应值插入到消息头中。
    • XPath:当选择 XPath 时,目标分为两部分。 父级 XPath 应已存在于 XML 文档中。 新节点名称 是注入到 XML 文档中以保存查找结果的节点的名称。 查询中的每一列在此处提供的 XML 元素中都有自己的 XML 元素(叶级别)。
    • 消息头:当选择“消息头”时,端口会向查询中每一列的输出消息添加一个消息头。 从数据库返回的每条记录的值均以逗号分隔。
  2. 查询中,输入 SQL 查询以从 Snowflake 表检索数据。
    • XPath:将路径格式设置为“${XPATH:/path/to/element}”。 例如,SELECT CustomerID FROM Customers WHERE CustomerName = ${XPATH:/Items/Invoices/Customer}
    • 消息头:将路径格式设置为${HEADER:HeaderName}
  3. 这两个复选框可让配置当查询返回多个结果时应发生的情况。
    • 选中使用第一个结果以始终使用第一个结果。
    • 选中如果有多个结果则出错 以出现返回多个结果时返回错误。

高级设置

  1. 使用未找到匹配记录操作来指定如果未找到与查询匹配的记录时应执行的操作。

  2. Snowflake 端口可以针对本地缓存执行 Lookup 查询,而不是直接为每个 Lookup 查询 Snowflake。 这可以提高查询性能,尤其是对于较大的数据库。 要启用此功能,请选中启用缓存并配置其余字段。

    • 缓存容错:控制端口向数据源发出查询以刷新缓存的频率。
    • 缓存容错单元缓存容错单元。 选择分钟、小时或天。
    • 缓存提供器:选择使用哪个驱动程序以方便连接到缓存数据库。
    • 连接字符串 设置后,端口将使用此处指定的数据库进行缓存。

    注意

    • 如果查询未从缓存返回结果,端口将直接查询 Snowflake。

    • 如果查询语句包含 limitoffsetgroup by参数,则缓存功能不起作用。 这些查询直接转到 Snowflake。

测试 Lookup

使用 测试 Lookup 按钮检查配置并查看结果,而无需手动处理文件。 使用 保存示例数据 按钮将输出保存为示例,以便稍后在流程中进行映射。