hadoop中的二进制类型是什么?

时间:2015-10-23 22:59:10

标签: hadoop mapreduce

Hadoop - 权威指南说

  

如果要记录二进制类型,则纯文本格式不合适。

我的问题是1.为什么不呢? 2.什么是二进制类型?

并进一步:

  

Hadoop的SequenceFileclass适合这种情况,提供   二进制键值对的持久数据结构。用它作为一个   在日志文件格式中,您可以选择一个密钥,例如表示的时间戳   通过LongWritable,值是一个表示的Writable   记录的数量。

为什么不能使用文本文件并且需要序列文件?

1 个答案:

答案 0 :(得分:0)

在同一页面上,引用了:

  

对于某些应用程序,您需要一个专门的数据结构来保存您的数据。为了做   基于MapReduce的处理,将每个blob二进制数据放入其自己的文件中   因此,Hadoop为这些情况开发了许多更高级别的容器。

e.g。假设您正在Facebook上传图像,您必须删除重复的图像。您无法以textformat格式存储图像。您可以做什么:获取图像文件的MD5SUM,如果系统中已存在MD5SUM,则只丢弃重复图像的插入。在您的文字文件中,您只需“日期:”和“上传的图片数量”即可。图像可以存储在HDFS系统的外部,如CDN网络或其他一些Web服务器