node.js 如何实时流式传输 22GB 的 gzip 文件解压缩
node.js how to stream 22GB gzipped file uncompress on the fly
我需要遍历 22GB 压缩文件中的行。展开后,文件大小为250GB。(是Google Freebase db dump)
我对流不太了解。有没有一种方法可以流式传输文件并在我运行时对其进行压缩?
这是相反的方向:
var r = fs.createReadStream('file.txt');
var z = zlib.createGzip();
var w = fs.createWriteStream('file.txt.gz');
r.pipe(z).pipe(w);
这里是用zlib.createGunzip
代替zlib.createGzip
的反向操作:
var r = fs.createReadStream('file.txt.gz');
var z = zlib.createGunzip();
var w = fs.createWriteStream('file.txt');
r.pipe(z).pipe(w);
我需要遍历 22GB 压缩文件中的行。展开后,文件大小为250GB。(是Google Freebase db dump)
我对流不太了解。有没有一种方法可以流式传输文件并在我运行时对其进行压缩?
这是相反的方向:
var r = fs.createReadStream('file.txt');
var z = zlib.createGzip();
var w = fs.createWriteStream('file.txt.gz');
r.pipe(z).pipe(w);
这里是用zlib.createGunzip
代替zlib.createGzip
的反向操作:
var r = fs.createReadStream('file.txt.gz');
var z = zlib.createGunzip();
var w = fs.createWriteStream('file.txt');
r.pipe(z).pipe(w);