Instead of loading your entire dataset into memory at once, stream it or process it in smaller chunks. This can be a game changer for filesystem indexing.
const fs = require('fs');
const readline = require('readline');
const rl = readline.createInterface({
input: fs.createReadStream('big-file.txt'),
crlfDelay: Infinity
});
rl.on('line', (line) => {
// Process each line one by one
});
This drastically reduces memory usage because you’re only holding a tiny part of the data at a time.