【发布时间】:2020-01-13 22:05:06
【问题描述】:
我在 NiFi 中有这个流程:
GetFile -> ConvertExcelToCSVProcessor -> ReplaceText -> 放置数据库记录。
它工作正常,但我想设置
的“表名”属性PutDatabaseRecord
基于 csv 文件名(如果可以自定义)。我在文档或网络中找不到任何内容。 谢谢!
【问题讨论】:
标签: etl apache-nifi
我在 NiFi 中有这个流程:
GetFile -> ConvertExcelToCSVProcessor -> ReplaceText -> 放置数据库记录。
它工作正常,但我想设置
的“表名”属性PutDatabaseRecord
基于 csv 文件名(如果可以自定义)。我在文档或网络中找不到任何内容。 谢谢!
【问题讨论】:
标签: etl apache-nifi
根据文档,PutDatabaseRecord 处理器的参数table name 支持nifi expression language。
因此,如果您的流文件的属性 filename 包含值 MyTableName.csv,您可以使用正则表达式的表达式将文件名转换为 PutDatabaseRecord 处理器中的表名,如下所示:
Table Name = ${filename:replaceAll('\\..*','')}
【讨论】: