在作业运行期间可以更改hdfs块大小吗?自定义拆分和变体大小

oewdyzsn  于 2021-06-01  发布在  Hadoop
关注(0)|答案(2)|浏览(317)

我正在使用hadoop1.0.3。输入分割/块是否可以在运行时基于某些约束进行更改(增加/减少)。是否有一个类可以重写以实现像filesplit/inputtextformat这样的机制?我们可以根据一个作业中的逻辑约束在hdfs中使用不同大小的块吗?

mzillmmw

mzillmmw1#

你不局限于文本输入格式。。。这是完全可配置的数据源的基础上,你正在阅读。大多数示例都是行分隔的纯文本,但这显然不适用于xml。
不,块边界在运行时不能更改,因为您的数据应该已经在磁盘上,并且可以读取。
但是inputsplit依赖于给定作业的inputformat,该格式在特定作业中应保持一致,但是 Configuration 代码中的对象基本上是一个hashmap,可以在运行时更改,当然

j5fpnvbx

j5fpnvbx2#

如果只想更改特定运行或应用程序的块大小,可以重写“-d dfs.block.size=134217728”。这有助于更改应用程序的块大小,而不是更改hdfs-site.xml中的整体块大小。
-d dfs.block.size=134217728

相关问题