Hadoop书籍中面向列格式章节中的顺序顺序权威指南?

时间:2018-10-05 17:17:16

标签: hadoop hive column-oriented

Hadoop:第4版权威指南的第137页中,它讨论了面向列的格式文件,并在下面显示了图片。

enter image description here

在RCFile中,为什么数字的顺序是1,4,2,5,3,6,7,10,8,11,9,12而不是1,4,7,10,2,5,8,11,3,6,9,12

1 个答案:

答案 0 :(得分:1)

首先, RC不是列文件,它是记录列文件文件。 RC和ORC都是可拆分的。这意味着您不必读取所有文件就只能得到几行,并且可以被许多容器并行读取。这就是为什么我们需要分割。

拆分包含分组在一起的行,并且可以相互独立读取,同时,列也分组在拆分内部。相似的数据可以更好地压缩,因此,如果将列分组在一起,则可以提高压缩率。在您的示例中,一个拆分仅包含两行,但可以包含10000或更多行。

documentation官方对RC文件的评价:

  • 作为行存储,RCFile保证位于同一行中的数据 在同一节点中。

  • 作为列存储,RCFile可以利用列数据压缩和 跳过不必要的列读取。

也请阅读有关ORC的信息。使用ORC中的索引,可以轻松地在最低级别过滤条带。此功能称为谓词下推。