В современных версиях Apache Hadoop различными ограничениями HDFS управляют свойства конфигурации с fs-limits
в имени, все из которых имеют приемлемые значения по умолчанию. Этот вопрос специально задавался о количестве детей в каталоге. Это определяется dfs.namenode.fs-limits.max-directory-items
, а его значением по умолчанию является 1048576
.
Обратитесь к документации Apache Hadoop в hdfs-default.xml для получения полного списка fs-limits
свойств конфигурации и их значений по умолчанию. Скопируйте сюда для удобства:
<property>
<name>dfs.namenode.fs-limits.max-component-length</name>
<value>255</value>
<description>Defines the maximum number of bytes in UTF-8 encoding in each
component of a path. A value of 0 will disable the check.</description>
</property>
<property>
<name>dfs.namenode.fs-limits.max-directory-items</name>
<value>1048576</value>
<description>Defines the maximum number of items that a directory may
contain. Cannot set the property to a value less than 1 or more than
6400000.</description>
</property>
<property>
<name>dfs.namenode.fs-limits.min-block-size</name>
<value>1048576</value>
<description>Minimum block size in bytes, enforced by the Namenode at create
time. This prevents the accidental creation of files with tiny block
sizes (and thus many blocks), which can degrade
performance.</description>
</property>
<property>
<name>dfs.namenode.fs-limits.max-blocks-per-file</name>
<value>1048576</value>
<description>Maximum number of blocks per file, enforced by the Namenode on
write. This prevents the creation of extremely large files which can
degrade performance.</description>
</property>
<property>
<name>dfs.namenode.fs-limits.max-xattrs-per-inode</name>
<value>32</value>
<description>
Maximum number of extended attributes per inode.
</description>
</property>
<property>
<name>dfs.namenode.fs-limits.max-xattr-size</name>
<value>16384</value>
<description>
The maximum combined size of the name and value of an extended attribute
in bytes. It should be larger than 0, and less than or equal to maximum
size hard limit which is 32768.
</description>
</property>
Во всех этих настройках используются разумные значения по умолчанию, определенные сообществом Apache Hadoop. Обычно рекомендуется, чтобы пользователи не настраивали эти значения, за исключением очень необычных обстоятельств.