UpdateSnowflakeView 2025.10.2.19

捆绑包

com.snowflake.openflow.runtime | runtime-snowflake-processors-nar

描述

根据传入的 FlowFile 中提供的列映射创建或替换 Snowflake 视图。处理器会检查视图是否存在,仅在定义发生更改时重新创建视图。FlowFile 内容应包含 JSON,包括列映射,可选的连接配置和可选的扁平化配置:{ "columns": [ { "source_field": "customer_data:id", "destination_column": "customer_id", "type": "VARCHAR" }, { "source_field": "f.value:order_amount", "destination_column": "order_amount", "type": "NUMBER" }, { "expression": "SUM(f.value:order_amount::NUMBER)", "destination_column": "total_amount" }, { "expression": "COUNT(*)", "destination_column": "order_count" } ], "from": { "table": "raw_data", "alias": "rd", "joins": [ { "type": "INNER", "table": "customers", "alias": "c", "on": "customer_data:id::VARCHAR = c.customer_id" } ] }, "flatten": [ { "input": "rd.orders", "alias": "f", "path": null } ], "where": "active = true AND status ='VALID'", "group_by": ["customer_id", "region"], "order_by": ["order_amount DESC", "customer_id ASC"] } 列配置支持:- source_field:简单的字段/列引用(支持“data:field”等 JSON 表示法或“t.column”等表别名)- expression:复杂的 SQL 表达式(例如,“SUM(amount)”、“COUNT(*)”)- destination_column:视图中的输出列名称(可选 - 如果未提供,则自动生成)- type:用于自动类型转换的 Snowflake 数据类型(VARCHAR、NUMBER、BOOLEAN、DATE、TIMESTAMP 等)使用任一 source_field OR 表达式,不能同时使用两者。指定 type 时,将应用自动类型转换。省略 type 时,表达式按原样使用,不进行类型转换。扁平化配置支持:- input:要展平的嵌套字段/列(必填)- alias:展平的数据的别名(必填)- path:嵌套结构中的可选路径 “from”部分是必填的,用于指定源表和可选连接。可选的 SQL 子句可以包含在内:- where: WHERE 子句条件(例如 "active = true AND status ='VALID'")- group_by: GROUP BY 子句,作为列名数组(例如 ["customer_id", "region") - order_by: ORDER BY 子句,作为列/表达式及排序方向数组(例如 ["order_amount DESC", "customer_id ASC"])

标签

flatten、view

输入要求

REQUIRED

支持敏感的动态属性

false

属性

属性

描述

连接池

用于连接到 Snowflake 的连接池

架构名称

将在其中创建视图的架构的名称

安全

是否创建安全视图。安全视图会对未授权的使用者隐藏视图定义。

视图名称

要创建或更新的视图的名称

关系

名称

描述

failure

处理失败的 FlowFiles

success

处理成功的 FlowFiles

不变

FlowFiles 视图已存在且未发生更改

语言: 中文