HDFS 默认块大小为 128 MB,而 Hive 默认条带大小为 250 MB

Posted

技术标签:

【中文标题】HDFS 默认块大小为 128 MB,而 Hive 默认条带大小为 250 MB【英文标题】:HDFS default block size is 128 MB while Hive default stripe size is 250 MB 【发布时间】:2019-03-12 18:16:17 【问题描述】:

HDFS 块大小默认为 128 MB(来源:https://hadoop.apache.org/docs/r2.9.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml)

Hive 条带大小默认为 250 MB(来源:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+ORC#LanguageManualORC-FileStructure)

据我了解,1 个条带必须完全适合 HDFS 的 1 个块。

我在这里遗漏了什么吗?我有不正确的信息吗?

您是否只需将 HDFS 配置为具有 250 MB 块以适应条带?

【问题讨论】:

【参考方案1】:

Orc 文件格式可在条带级别拆分。这意味着不需要将一种条带大小放入一个块中。

HDFS 块大小在文件级别,无论其格式如何。

【讨论】:

那么一个条带可以存储在 2 个或更多 HDFS 块上吗?

以上是关于HDFS 默认块大小为 128 MB,而 Hive 默认条带大小为 250 MB的主要内容,如果未能解决你的问题,请参考以下文章

HDFS读写原理

HDFS设置BLOCK的目的

hdfs的块设置多大合适?

hdfs的基本命令行

HDFS架构

更改 Hadoop 中现有文件的块大小