Я работаю над проектом java, который позволит пользователям анализировать несколько файлов с потенциально тысячами строк. Анализируемая информация будет храниться в разных объектах, которые затем будут добавлены в коллекцию.Каков наиболее эффективный способ загрузки данных из файла в коллекцию по запросу?
Поскольку GUI не требует одновременного загрузки ВСЕХ этих объектов и сохранения их в памяти, я ищу эффективный способ загрузки/выгрузки данных из файлов, так что данные загружаются только в коллекцию, когда пользователь запрашивает его.
Я просто оцениваю варианты прямо сейчас. Я также подумал о том, когда после загрузки подмножества данных в коллекцию и представления его в графическом интерфейсе лучший способ перезагрузить ранее обнаруженные данные. Повторно запустить сборщик/сбор данных/заполнить графический интерфейс? или, возможно, найти способ сохранить коллекцию в памяти или сериализовать/десериализовать коллекцию?
Я знаю, что подмножество данных для загрузки/разгрузки данных может оказаться сложным, если выполняется какая-либо фильтрация данных. Предположим, что я фильтрую идентификатор, поэтому мое новое подмножество будет содержать данные из двух предыдущих проанализированных подмножеств. Это не проблема, я сохраняю основную копию всех данных в памяти.
Я читал, что сбор google хорош и эффективен при обработке большого количества данных и предлагает методы, которые упрощают множество вещей, поэтому это может предложить альтернативу, позволяющую мне хранить коллекцию в памяти. Это просто разговоры. Вопрос о том, какая коллекция использовать - это отдельная и сложная вещь.
Вы знаете, что является общей рекомендацией по этому типу задач? Я хотел бы услышать, что вы сделали с похожими сценариями.
При необходимости я могу предоставить более подробную информацию.
Не вижу проблемы. Вы хотите загружать данные из файла по запросу. Так сделай это. В чем проблема? – Roman
Это не проблема.Вопрос в том, что более эффективно? Сохранение основной копии данных (в коллекции) в памяти/вне памяти в случае необходимости перераспределения данных или загрузки/выгрузки данных в/из коллекции по требованию? – Dan