У меня очень мало опыта работы с большими файлами и ограничениями по памяти.
Обратите внимание, что я использую Java в качестве языка программирования.
Я должен найти записи размером 15 ГБ и записать результат в другой файл. По сути, это реализация функции диапазона поиска. Моя цель - записать записи, которые находятся в моем диапазоне, в файл результатов, разделенный новой строкой. То есть каждая запись должна приходить на отдельной строке. И количество таких запросов составляет около 400-1000. Таким образом, каждый запрос приведет к записи множества записей, лежащих в его диапазоне.
Так что из следующего является более быстрым подходом?
1- Как только я начинаю получать записи диапазона запросов, я начинаю записывать их в файл последовательно?
2- Я храню свои записи в какой-то строке и добавляю в строку для каждой найденной записи, а затем в конце пишу?
3 - Использовать построитель строк для объединения результатов каждого запроса, а затем записывать в файл в конце? но построитель строк не поддерживает новую строку.
4- Сделать мое собственное будущее данных?
5- Сделать массив списков записей, а затем перебрать его в конце для записи в файл?
Пожалуйста, дайте мне знать, какой подход наиболее быстрый как с точки зрения ввода-вывода, так и с точки зрения MM.