繁体   English   中英

具有 ORC/Parquet 文件格式的巨大配置单元表中的列具有相同值的影响

[英]Impact of having same value for a column in huge hive table with ORC/Parquet file format

如果我们在一个巨大的 hive 表中的所有行都有多个具有相同值的列,该表具有 ORC 或 Parquet 存储格式的下划线文件格式,那么存储和性能的含义是什么。

假设我有镶木地板蜂巢表,第 5 列和第 8 列的值始终为“HELLO”。

  1. 在这种情况下,文件如何根据 ORC 和 Parquet 进行存储。
  2. 具有重复的列数据,它是否会对稍后在此表上使用的查询产生任何性能影响。

至少在 Parquet 文件的情况下,列是独立压缩的。 连续多次使用相同的值通常会得到很好的压缩,但重复列也意味着重复所需的存储。

对于 Parquet,压缩方案大致是:

每列,分成 RowGroups(通常每个文件一个,有时更多,但通常是一个非常小的数字)。 每个 RowGroup 对值进行编码(编码通常是字典编码或游程编码)。 在名为“页面”的 16KiB/1MiB 边界上大致拆分编码行。 使用 GZIP 或 ZStandard 等通用压缩编解码器单独压缩每个页面。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM