Nifi - Обработка огромного массива json записей в отдельные записи - PullRequest
1 голос
/ 23 сентября 2019

Я использую HTTP-процессор invoke, который выдает массив объектов JSON.размер ответа составляет 2-3 ГБ.Ответ выглядит примерно так:

[
{
  "id": 17,
  "name": "ONE by AOL: Video"
},
{
  "id": 63,
  "name": "Adform"
} ---

Позже в нисходящем потоке я хочу использовать каждый объект JSON за раз, потому что мне нужно применить к нему некоторые фильтры и сохранить его в базе данных позже.Хотите знать, является ли splitjson подходящим процессором?В настоящее время я получаю исключение "Недостаточно памяти" при использовании splitjson, даже когда я выделил 5 ГБ в файле bootstrap.conf, а также 2 ГБ в конфигурацию очереди.Я могу пойти на дополнительную оперативную память, если это единственный вариант?

1 Ответ

2 голосов
/ 23 сентября 2019

Вы должны использовать процессоры записи, чтобы избежать необходимости деления.Вы можете использовать QueryRecord для фильтрации и PutDatabaseRecord для вставки в базу данных.

...