Middle+
Comment lire un fichier de 20 Go si j'ai seulement 10 Go de RAM?
sobes.tech IA
Réponse de l'IA
Чтобы прочитать файл размером 20 ГБ при наличии только 10 ГБ оперативной памяти, нужно использовать подход по частичной загрузке данных — читать файл по кускам (чанкам). Это позволяет обрабатывать файл последовательно, не загружая его целиком в память.
Например, в JavaScript для фронтенда можно использовать FileReader с методом slice для чтения файла по частям:
const CHUNK_SIZE = 1024 * 1024 * 10; // 10 МБ
let offset = 0;
function readChunk(file) {
const slice = file.slice(offset, offset + CHUNK_SIZE);
const reader = new FileReader();
reader.onload = function(e) {
const chunkData = e.target.result;
// Обработка данных чанка
offset += CHUNK_SIZE;
if (offset < file.size) {
readChunk(file);
}
};
reader.readAsArrayBuffer(slice);
}
// вызов: readChunk(файл);
Такой подход позволяет последовательно обрабатывать большие файлы, не превышая лимит памяти.