Apache nifi: проблема с парсингом Excel в CSV, когда каждая строка имеет разную длину ячейки - PullRequest
1 голос
/ 24 апреля 2020

Я пытаюсь конвертировать один Excel в CSV с Apache Nifi. Когда в первой строке содержится меньше значений ячеек с информацией, чем в других строках документа (например, первая строка имеет 5 ячеек, 2-я -> 8 ячеек, 5 -> 7 ячеек), анализ документа занимает только учитывается количество ячеек первого ряда (5). Таким образом, я теряю информацию (в этом примере 2-я строка потеряет 3 значения ячейки, а 5-я, 2).

Другой визуальный пример:

enter image description here

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

enter image description here

Может кто-нибудь сказать мне, как решить проблема?

1 Ответ

1 голос
/ 24 апреля 2020

@ Jaime - Процессор NiFI ConvertExcelToCSVProcessor делает некоторые предположения, которые вы заметили. Предполагается, что вы отправляете согласованный набор данных в каждой строке. Ваш Excel не соответствует этим базовым c предположениям.

Мой лучший совет - исправить отчаянные данные в таблице Excel. Добавьте недостающие столбцы с данными, которые вы можете удалить / игнорировать позже. Единственным другим вариантом будет преобразование процессора в качестве пользовательского процессора. Там, где вы можете проверить каждую строку, получить строку с наибольшим количеством столбцов, используйте это для подсчета столбцов.

...