【问题标题】:node.js how to stream 22GB gzipped file uncompress on the flynode.js 如何流式传输 22GB gzipped 文件即时解压缩
【发布时间】:2015-03-02 22:54:07
【问题描述】:

我需要遍历 22GB gzip 文件中的行。展开后,文件大小为 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);

【问题讨论】:

  • 这是一个大量的数据量;通常,这么多数据实际上仅用于媒体系统(音乐、视频),可以使用行业标准流程 (CODEC) 进行 CO 压缩和 DEC 压缩。这么大的数据流需要什么样的数据?
  • 这是 Google Freebase 转储。它只有一种尺寸。

标签: node.js stream gunzip


【解决方案1】:

这里是使用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);

【讨论】:

  • 谢谢 - 最后一件事:我如何将其限制为前 1000 行?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-21
  • 2013-03-09
相关资源
最近更新 更多