Nifi:嵌套 JSON 记录模式验证
Nifi : Nested JSON records schema validation
我正在尝试使用 SplitRecord 处理器拆分包含嵌套记录的 JSON 文件。
因此,我总是得到空值而不是预期的记录数组:
{"userid":"xxx","bookmarks":null}
下面是示例 JSON
{
"userid": "Ib6gZ8ZPwRBbAL0KRSSKS",
"bookmarks": [
{
"id": "10000XXXXXXW0007760",
"creator": "player",
"position": 42.96
},
{
"id": "41ANSMARIEEW0075484",
"creator": "player",
"position": 51.87
},
{
"id": "ALBATORCORSW0088197",
"creator": "player",
"position": 93.47
},
{
"id": "ALIGXXXXXXXW0007944",
"creator": "player",
"position": 95.06
}
]
}
这是我的 avro 架构:
{
"namespace": "nifi",
"name": "bookmark",
"type": "record",
"fields": [
{ "name": "userid", "type": "string" },
{ "name": "bookmarks", "type": {
"type": "record",
"name": "bookmarks",
"fields": [
{ "name": "id", "type": "string" },
{ "name": "creator", "type": "string" },
{ "name": "position", "type": "float" }
]
}
}
]
}
如有任何帮助,我们将不胜感激!
我不得不实现一个特定的 groovy 处理器来克服 nifi 的限制,这花了我很多时间。 avro 方案的管理仅限于最简单的情况,不适用于高级治疗。
我正在尝试使用 SplitRecord 处理器拆分包含嵌套记录的 JSON 文件。
因此,我总是得到空值而不是预期的记录数组:
{"userid":"xxx","bookmarks":null}
下面是示例 JSON
{
"userid": "Ib6gZ8ZPwRBbAL0KRSSKS",
"bookmarks": [
{
"id": "10000XXXXXXW0007760",
"creator": "player",
"position": 42.96
},
{
"id": "41ANSMARIEEW0075484",
"creator": "player",
"position": 51.87
},
{
"id": "ALBATORCORSW0088197",
"creator": "player",
"position": 93.47
},
{
"id": "ALIGXXXXXXXW0007944",
"creator": "player",
"position": 95.06
}
]
}
这是我的 avro 架构:
{
"namespace": "nifi",
"name": "bookmark",
"type": "record",
"fields": [
{ "name": "userid", "type": "string" },
{ "name": "bookmarks", "type": {
"type": "record",
"name": "bookmarks",
"fields": [
{ "name": "id", "type": "string" },
{ "name": "creator", "type": "string" },
{ "name": "position", "type": "float" }
]
}
}
]
}
如有任何帮助,我们将不胜感激!
我不得不实现一个特定的 groovy 处理器来克服 nifi 的限制,这花了我很多时间。 avro 方案的管理仅限于最简单的情况,不适用于高级治疗。