В NiFi у меня есть процессор ExecuteSQL, который возвращает следующее
person_id| name | adress
01 | John | Street 01
01 | John | Street 02
02 | Deby | Street 01
Обратите внимание, что Adress - это таблица, отличная от Person, поэтому левое соединение приводит к дублированию значений.
В NifiЯ преобразовал AVro в Json, а затем в XML, и это результат:
<person>
<person_id>01</person_id>
<name>John</name>
<address>Street 01</address>
</person>
<person>
<person_id>01</person_id>
<name>John</name>
<address>Street 02</address>
</person>
<person>
<person_id>02</person_id>
<name>Deby</name>
<address>Street 01</address>
</person>
Однако мой желаемый результат будет:
<person>
<person_id>01</person_id>
<name>John</name>
<addresses>
<address>Street 01</address>
<address>Street 02</address>
</addresses>
</person>
<person>
<person_id>02</person_id>
<name>Deby</name>
<addresses>
<address>Street 01</address>
</addresses>
</person>
Возможно ли это сделать вNifi?Я не могу найти подходящий процессор для этого, я должен использовать XSLT (с процессором Transform XML)?написать свой процессор?Как я могу это сделать?
Я новичок в NiFi, и любая помощь будет признательна.