Проблема разбора массива NiFi JsonPathReader - PullRequest
0 голосов
/ 04 февраля 2019

Я пытаюсь проанализировать JSON в csv с помощью процессоров GetFile -> CovertRecord -> PutFile.Мой пример JSON выглядит следующим образом:

[
    {
        "id": "A1",
        "value": "blue",
        "num": [5,6,7]
    }, 
    {
        "id": "B2",
        "value": "red",
        "num": [1,2,3]
    }, 
    {
        "id": "C3",
        "value": "green",
        "num": [4,8,9]
    }
]

После настройки контроллеров JsonPathReader и CSVRecordSetWriter я могу успешно проанализировать JSON с выводом csv, похожим на:

id, value,  num
A1, blue,   [5, 6, 7]
B2, red,    [1, 2, 3]
C3, green,  [4, 8, 9] 

Схема Avro вКонфигурация JsonPathReader выглядит следующим образом:

{
    "type" : "record",
    "namespace" : "data",
    "name" : "stuff",
    "fields" : [
        {"name" : "id" , "type" : "string"},
        {"name" : "value" , "type" : "string"},
        {"name" : "num" , "type" : {"type" : "array", "items" : "int"}}
     ]
}

Однако мне в конечном итоге нужно, чтобы вывод csv выглядел следующим образом:

id, value,  num
A1, blue,   5
A1, blue,   6
A1, blue,   7
B2, red,    1
B2, red,    2
B2, red,    3
C3, green,  4
C3, green,  8
C3, green,  9

Возможно ли это при использовании стандартных процессоров и контроллеров NiFi?Я пытаюсь избежать создания собственного процессора.

...