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

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

Сообщение Anonymous »

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

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

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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