HDFS 数据大小和 Hive 数据大小的差异

Difference in HDFS data size and Hive Data Size

我在 Hive 中有一个 table。

当我运行命令show tblproperties myTableName时,它给出以下结果:

numFiles        12
numRows         1688092
rawDataSize     934923162
totalSize       936611254

rawDataSize is 934.92 MB and totalSize is 936.61 MB

并且当我 运行 命令计算相同 table 的 HDFS table 位置的数据大小时。

[user@server1 ~]$ hdfs dfs -du -h -s /apps/hive/warehouse/test.db/myTableName
893.2 M  /apps/hive/warehouse/test.db/myTableName

结果数据大小为893.2 MB

我看到相同 table 的数据大小存在很大差异。我试图理解为什么相同 table 的数据大小存在差异并寻找详细解释。

Table 类型 - MANAGED_TABLE

#存储信息

SerDe Library:          org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
InputFormat:            org.apache.hadoop.mapred.TextInputFormat
OutputFormat:           org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
Compressed:             No
Num Buckets:            -1

936611254 / 1024 / 1024 = 893.2 M