从文件中提取属性名称及其值并推入 MySQL table
Extract the attribute name and its value from file and push into MySQL table
我想提取属性名称及其值,然后将其进一步推入数据库表。
数据如下:
enter code here
{"Name":"Sam","Lastname":"Charles","Address":"1103 pioneer St"}
{"housename":"Jake","Lastname":"Stevenson","Address":"Abel St"}
{"foodname":"pudding","Lastname":"luther","Address":"Half Moon Bay"}
我如何在 NiFi 中实现这一点,以便我可以提取这些值并推入 MySQL?我的 MySQL table 如下所示:(我期望的输出如下):
**Names Lastname Address**
Sam Charles 1103 pioneer St
Jake Stevenson Abel St
Pudding luther Half MoonBay
如有任何建议,我们将不胜感激。谢谢你。要使用什么处理器以及要使用什么正则表达式来实现此目的?
您可以为此使用 PutDatabaseRecord,如果字段名称与列名称匹配(它们看起来如此),那么 PutDatabaseRecord 将生成正确的 SQL 来执行 INSERT 语句。如果您的输入数据是每行一个 JSON,则您至少需要 NiFi 1.7.0(对于 NIFI-4456)。您可以使用以下架构配置 JsonTreeReader(以匹配您的输入数据和目标列):
{
"namespace": "nifi",
"name": "myRecord",
"type": "record",
"fields": [
{"name": "Name", "type": "string"},
{"name": "Lastname", "type": "string"},
{"name": "Address", "type": "string"}
]
}
如果数据中可以有空值,则将"type": "string"
替换为"type": ["null", "string"]
我想提取属性名称及其值,然后将其进一步推入数据库表。
数据如下:
enter code here
{"Name":"Sam","Lastname":"Charles","Address":"1103 pioneer St"}
{"housename":"Jake","Lastname":"Stevenson","Address":"Abel St"}
{"foodname":"pudding","Lastname":"luther","Address":"Half Moon Bay"}
我如何在 NiFi 中实现这一点,以便我可以提取这些值并推入 MySQL?我的 MySQL table 如下所示:(我期望的输出如下):
**Names Lastname Address**
Sam Charles 1103 pioneer St
Jake Stevenson Abel St
Pudding luther Half MoonBay
如有任何建议,我们将不胜感激。谢谢你。要使用什么处理器以及要使用什么正则表达式来实现此目的?
您可以为此使用 PutDatabaseRecord,如果字段名称与列名称匹配(它们看起来如此),那么 PutDatabaseRecord 将生成正确的 SQL 来执行 INSERT 语句。如果您的输入数据是每行一个 JSON,则您至少需要 NiFi 1.7.0(对于 NIFI-4456)。您可以使用以下架构配置 JsonTreeReader(以匹配您的输入数据和目标列):
{
"namespace": "nifi",
"name": "myRecord",
"type": "record",
"fields": [
{"name": "Name", "type": "string"},
{"name": "Lastname", "type": "string"},
{"name": "Address", "type": "string"}
]
}
如果数据中可以有空值,则将"type": "string"
替换为"type": ["null", "string"]