Использование BufferedReader и FileReader для построчного считывания очень большого файла?
Имеются файлы логов размерами от 1 до 15 гб каждый. Задача: построчно считывать файлы, если строка соответствует регулярке, пишем в бд. Насколько корректно использовать BufferedReader br = new BufferedReader(new FileReader(file)); для считывания из файла. Могут ли быть проблемы с памятью на файлах такого размера. Может есть способ лучше?
Та норм будет. Сразу проверяйте считанную строку на условие и если подошло - добавляй в jdbc batch. Поставьте максимальное ограничение батча, например 200. Наполнился? - updateBatch, и дальше считывать строки.