hive中的序列文件格式和镶木地板文件格式是什么?

时间:2016-09-22 18:35:52

标签: hadoop hive

你能用实时例子解释在哪里使用序列文件和镶木地板文件吗?

1 个答案:

答案 0 :(得分:0)

序列文件

序列文件以二进制格式存储数据,其结构与CSV类似。与CSV一样,序列文件不会与数据一起存储元数据,因此唯一的模式演变选项是追加新字段。但是,与CSV不同,序列文件确实支持块压缩。由于读取序列文件的复杂性,它们通常仅用于“飞行中”数据,例如在一系列MapReduce作业中使用的中间数据存储。

实木复合地文件

Parquet文件是另一种柱状文件格式,源自Hadoop创建者Doug Cutting的Trevni项目。与RC和ORC一样,Parquet享有压缩和查询性能优势,并且写入速度通常比非柱状文件格式慢。但是,与RC和ORC文件不同,Parquet serdes支持有限的模式演变。在Parquet中,可以在结构的末尾添加新列。目前,Hive和Impala能够查询新添加的列,但生态系统中的其他工具(如Hadoop Pig)可能会面临挑战。 Parou由Cloudera支持,并针对Cloudera Impala进行了优化。 Hadoop生态系统的其他部分正在快速添加Native Parquet支持。

关于使用Hive支持Parquet文件的一个注意事项...... Parquet列名称是小写的非常重要。如果您的Parquet文件包含混合大小写列名称,Hive将无法读取该列,并将返回具有空值的列上的查询,而不记录任何错误。与Hive不同,Impala处理混合大小写列名称。当你遇到我

时,这是一个真正令人困惑的问题