21

Hadoop 序列文件相对于 HDFS 平面文件(文本)的优势是什么?序列文件以什么方式有效?

可以将小文件组合并写入序列文件,但也可以对 HDFS 文本文件执行相同的操作。需要知道这两种方式的区别。我已经在谷歌上搜索了一段时间,如果我弄清楚这一点会有所帮助吗?

4

3 回答 3

26
  1. 序列文件适用于您要存储键及其对应值的情况。对于文本文件,您可以这样做,但您必须解析每一行。
  2. 可以压缩并且仍然可以拆分,这意味着更好的工作量。除非您使用可拆分的压缩格式,否则您无法拆分压缩的文本文件。
  3. 可以作为二进制文件处理 => 存储效率更高。在文本文件中,double 将是许多字符 => 大的存储开销。
于 2012-08-02T13:48:35.720 回答
2

Hadoop序列文件的优点(根据网站上Siva的文章hadooptutorial.info

  1. 比文本文件更紧凑
  2. 支持不同级别的压缩- 块或记录等。
  3. 可以并行拆分和处理文件
  4. 他们可以解决Hadoop 中的大量小文件问题,其中 Hadoop 的主要优势是使用 Map reduce 作业处理大文件。它可以用作大量小文件的容器
  5. Mapper 的临时输出可以存储在顺序文件中

缺点:

  1. 顺序文件仅附加
于 2016-02-18T10:22:47.767 回答
0

序列文件是 MapReduce 处理的 mapper 和 reducer 阶段生成的中间文件。序列文件是可压缩的并且处理速度很快,它用于在映射器和减速器期间从它写入输出。Hadoop 和 Spark 中有 API 可以读取/写入序列文件

于 2017-01-03T12:25:58.267 回答