簡體   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