Sobes.tech
Middle+

Ako prečítať súbor veľkosti 20 GB, ak máte iba 10 GB RAM?

sobes.tech AI

Odpoveď od AI

Чтобы прочитать файл размером 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(файл);

Такой подход позволяет последовательно обрабатывать большие файлы, не превышая лимит памяти.