Apache NiFi QueryRecord SELECT 静态别名列
Apache NiFi QueryRecord SELECT Static Alias Column
我想导入一个文件,该文件具有使用 Apache NiFi 分配的以下 Avro 模式:
{
"type" : "record",
"namespace" : "SomeSpaceName",
"name" : "SampleFile",
"fields" : [
{ "name" : "PersonName" , "type" : "string" },
{ "name" : "PersonType" , "type" : "string" }
]
}
当我使用 QueryRecord 处理器时,我想在输出文件中有一个静态字段,以便我可以将它导入 MongoDB。查询是:
SELECT LOWER(PersonName) as _id,
'Male' as gender
FROM flowfile
问题是 Calcite 无法正确添加新的静态字段。添加名字成功,但新的性别字段只包含单词的第一个字母:
| _id | gender |
|------|--------|
| Eric | M |
| Bill | M |
| Chad | M |
确保 QueryRecord
处理器编写器 avro 模式 包含 _id,gender
个字段。
Writer Avro Schema:
{
"type" : "record",
"namespace" : "SomeSpaceName",
"name" : "SampleFile",
"fields" : [
{ "name" : "_id" , "type" : ["null","string"] },
{ "name" : "gender" , "type" : ["null","string"] }
]
}
我想导入一个文件,该文件具有使用 Apache NiFi 分配的以下 Avro 模式:
{
"type" : "record",
"namespace" : "SomeSpaceName",
"name" : "SampleFile",
"fields" : [
{ "name" : "PersonName" , "type" : "string" },
{ "name" : "PersonType" , "type" : "string" }
]
}
当我使用 QueryRecord 处理器时,我想在输出文件中有一个静态字段,以便我可以将它导入 MongoDB。查询是:
SELECT LOWER(PersonName) as _id,
'Male' as gender
FROM flowfile
问题是 Calcite 无法正确添加新的静态字段。添加名字成功,但新的性别字段只包含单词的第一个字母:
| _id | gender |
|------|--------|
| Eric | M |
| Bill | M |
| Chad | M |
确保 QueryRecord
处理器编写器 avro 模式 包含 _id,gender
个字段。
Writer Avro Schema:
{
"type" : "record",
"namespace" : "SomeSpaceName",
"name" : "SampleFile",
"fields" : [
{ "name" : "_id" , "type" : ["null","string"] },
{ "name" : "gender" , "type" : ["null","string"] }
]
}