我知道Hadoop中的不同文件格式?默认情况下,hadoop使用文本输入格式。使用文本输入格式的优点/缺点是什么? avro在文本输入格式上的优点/缺点是什么?Hadoop输入格式 - 用法
另请帮助我了解不同文件格式(Avro,Sequence,TextInput,RCFile)的用例。
我知道Hadoop中的不同文件格式?默认情况下,hadoop使用文本输入格式。使用文本输入格式的优点/缺点是什么? avro在文本输入格式上的优点/缺点是什么?Hadoop输入格式 - 用法
另请帮助我了解不同文件格式(Avro,Sequence,TextInput,RCFile)的用例。
我相信没有文字作为默认的优点,除了它的内容是人类可读和友好的。您可以通过发布Hadoop fs -cat轻松查看内容。
与文本格式的缺点是
它需要更多的磁盘资源,因此会影响生产作业效率。
写作/解析文本记录需要更多的时间
无选项柜面的文本是从多个列组成,以保持数据类型。
Sequence,Avro,RCFile格式与文本格式相比具有非常显着的优势。
序列 - 通过实现Writable接口,键/值对象直接通过Hadoop的本机串行化过程以二进制格式存储。这些列的数据类型保持得很好,并且使用相关数据类型解析记录也很容易。由于二进制格式的原因,与文本相比,Obvoiusly占用较小的空间。
Avro - 它是一个非常紧凑的二进制存储格式的hadoop键/值对,通过Avro序列化/反序列化读/写记录。它与序列文件格式非常相似,但也提供语言互操作性和单元版本控制。
只有当你需要单元版本控制时,你才可以选择Avro over the Sequence,或者要存储的数据将被少量用Java以外的其他语言编写的应用程序使用.Avro文件可以用任何语言处理,如C,Ruby,Python ,PHP,Java,其中序列文件仅针对Java。
RCFile - 记录列文件格式是面向列的,它是Hive特定的存储格式,旨在使配置单元支持更快的数据加载速度,减少存储空间。
除此之外,您还可以考虑ORC和Parquet文件格式。
文本格式的另一个缺点是缺乏任何方案。 –