Анализ большого CSV-файла с проверкой согласованности данныхJAVA

Программисты JAVA общаются здесь
Anonymous
Анализ большого CSV-файла с проверкой согласованности данных

Сообщение Anonymous »

Я разрабатываю новый ресурс для приложения SpringBoot, который должен отвечать следующим требованиям:
  • Получить CSV в качестве входных данных. Каждая строка этого файла соответствует определенному объекту в моем домене.
  • Проверьте согласованность каждой строки. По сути, это включает в себя получение данных из базы данных для проверки их существования (т. е. данные в столбце X существуют в моей базе данных).
  • Вставка в базу данных всех допустимых объектов.
До сих пор мой подход заключался в следующем:
  • Разобрать CSV на компоненты с помощью OpenCSV.
  • Выполнить необходимые проверки для каждого проанализированного компонента (с использованием многопоточности).
  • Массовая вставка действительных компонентов в базу данных.
Шаги 1 и 3 хороши с точки зрения производительности, но шаг 2 занимает 24 минуты для 284 тысяч строк, что довольно много. Я понятия не имею, как его оптимизировать. Я хотел бы знать, как я могу улучшить этот подход или даже использовать совершенно другой подход, если это необходимо.

Подробнее здесь: https://stackoverflow.com/questions/746 ... onsistency

Вернуться в «JAVA»