Сортировка массива json в одном потоковом файле на основе атрибута Json: Apache Nifi - PullRequest
0 голосов
/ 13 мая 2018

Я пробовал nifi и хотел знать, как отсортировать массив json по атрибуту. У меня есть Json, как это

[{«name»: «Backham», «creationDate»: «2018-05-07 06:30:09»}, {«name»: «Rooney», «creationDate»: »2016-05-12 19:50:03 ”}, {« name »:« Ronaldo »,« creationDate »:« 2019-01-07 06:30:09 »}]

Я должен отсортировать по созданному дате asc / desc.

Я знаю, что могу написать собственный процессор, чтобы отсортировать данные и отправить их обратно. Есть ли другой лучший способ сделать это? Может кто-нибудь сказать, пожалуйста, как это сделать?

1 Ответ

0 голосов
/ 13 мая 2018

Вы можете использовать Процессор записи запросов в NiFi.Сконфигурируйте и включите службы контроллера Record Reader / Writer (JsonPath Reader / JsonSetWriter).

Добавьте новое свойство в обработчике Query Record как

OrderbyCreatedDate

SELECT * from FLOWFILE Order By createdDate DESC

Теперь обработчик queryrecord будет выполнять приведенное выше SQL-выражение для содержимого потокового файла и выдаст выходной потоковый файл с отсортированным порядком на основе поля createdate.

Используйте отношение OrderbyCreatedDate из процессора QueryRecord для дальнейшей обработки.

Подробнее о настройке / использовании процессора Queryrecord см. эту ссылку.

...