Middle+
Jak odczytać plik o rozmiarze 20 GB, mając tylko 10 GB RAM?
sobes.tech AI
Odpowiedź od AI
Aby odczytać plik o rozmiarze 20 GB przy dostępnej tylko 10 GB pamięci RAM, konieczne jest użycie podejścia polegającego na częściowym ładowaniu danych — odczytywanie pliku w fragmentach (chunks). Pozwala to na przetwarzanie pliku sekwencyjnie, bez konieczności ładowania go w całości do pamięci.
Na przykład w JavaScript dla frontendu można użyć FileReader z metodą slice do odczytu pliku w częściach:
const CHUNK_SIZE = 1024 * 1024 * 10; // 10 MB
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;
// Przetwarzanie danych fragmentu
offset += CHUNK_SIZE;
if (offset < file.size) {
readChunk(file);
}
};
reader.readAsArrayBuffer(slice);
}
// wywołanie: readChunk(pliku);
Taka metoda pozwala na sekwencyjne przetwarzanie dużych plików, nie przekraczając limitu pamięci.