¿Cuál es la cantidad máxima de archivos y directorios permitidos en un directorio HDFS (hadoop)?¿Cuál es la cantidad máxima de archivos permitidos en un directorio HDFS?
Respuesta
Los bloques y archivos se almacenan en un HashMap. Por lo tanto, está obligado a Integer.MAX_VALUE. Por lo tanto, un directorio no tiene ninguna limitación, sino todo el FileSystem.
De http://blog.cloudera.com/blog/2009/02/the-small-files-problem/:
Cada archivo, directorio y bloque en HDFS se representa como un objeto en la memoria del NameNode, cada uno de los cuales ocupa 150 bytes, como una regla de oro. Entonces, 10 millones de archivos, cada uno usando un bloque, usarían aproximadamente 3 gigabytes de memoria. Ampliar mucho más allá de este nivel es un problema con el hardware actual. Ciertamente, mil millones de archivos no es factible.
Esta pregunta menciona específicamente HDFS, pero una pregunta relacionada es cuántos archivos puede almacenar en un clúster de Hadoop.
Tiene una respuesta diferente si utiliza el sistema de archivos MapR. En ese caso, miles de millones de archivos se pueden almacenar en el clúster sin ningún problema.
En las versiones modernas de Apache Hadoop, varios límites de HDFS están controlados por las propiedades de configuración con fs-limits
en el nombre, todos los cuales tienen valores predeterminados razonables. Esta pregunta específicamente preguntó sobre la cantidad de niños en un directorio. Eso está definido por dfs.namenode.fs-limits.max-directory-items
, y su valor predeterminado es 1048576
.
Consulte la documentación de Apache Hadoop en hdfs-default.xml para obtener la lista completa de las propiedades de configuración fs-limits
y sus valores predeterminados. Copiar y pegar aquí por conveniencia:
<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>
Todos estos ajustes, utilice los valores por defecto razonables según lo decidido por la comunidad Apache Hadoop. En general, se recomienda que los usuarios no ajusten estos valores, excepto en circunstancias muy inusuales.
gracias por su respuesta detallada y clara –
- 1. ¿Cuál es la cantidad máxima de archivos por jarra?
- 2. ¿Cuál es la cantidad máxima de parámetros permitidos por tipo de proveedor de base de datos?
- 3. ¿Cuál es la cantidad máxima de espacios de claves en Cassandra?
- 4. En un tipo de cambio de divisa, ¿cuál es la cantidad máxima de decimales utilizada?
- 5. ¿Cuál es la cantidad máxima de elementos o tamaño de archivo para un documento HTML?
- 6. ¿Cuál es la cantidad máxima de conexiones simultáneas que hará un navegador?
- 7. ¿Cuál es la mejor respuesta para la búsqueda de la máxima cantidad posible de una matriz
- 8. ¿Cuál es la cantidad máxima de argumentos en una función de Python?
- 9. Cantidad máxima de objetos en NSArray
- 10. ¿Cuál es la demora máxima para setInterval?
- 11. Cuál es la cantidad máxima de hilos disponibles en Asp.net ThreadPool
- 12. ¿Cuál es la cantidad máxima de dimensiones permitidas para una matriz en C++?
- 13. ¿Cuál es la cantidad máxima de combinaciones permitidas en SQL Server 2008?
- 14. ¿Cuál es la cantidad máxima de subprocesos en Windows Server 2003?
- 15. ¿Cuál es la cantidad máxima de conexiones simultáneas de TCP/IP de Windows?
- 16. Cantidad máxima de caracteres de TextBox (no es MaxLength)
- 17. Obtiene la cantidad de desplazamiento HorizontalScrollView máxima
- 18. ¿Cuál es la cantidad máxima de volúmenes adjuntos por instancia de Amazon EC2?
- 19. ¿Cuál es la cantidad máxima de subprocesos de trabajo oscilante que se pueden ejecutar?
- 20. ¿Cuál es la cantidad máxima de filas que puede almacenar una única tabla de SQL Server?
- 21. ¿Cuál es la cantidad máxima de redirecciones HTTP permitidas por todos los principales navegadores?
- 22. ¿Cuál es la cantidad máxima de caracteres que va a contener nvarchar (MAX)?
- 23. Recuperando archivos del directorio que contiene gran cantidad de archivos
- 24. ¿Cuál es la cantidad máxima de registros que puede almacenar una tabla MySQL?
- 25. ¿Cuál es la capacidad de almacenamiento máxima de Core Data?
- 26. ¿Existe un límite para la cantidad de archivos en un directorio en una tarjeta SD?
- 27. ¿Cómo puedo recuperar de manera eficiente la cantidad de archivos en un directorio?
- 28. ¿Cuál es la cantidad máxima de conexiones HTTP que puedo tener abiertas en un cuadro de Windows Server 2008?
- 29. ¿Cuál es la longitud máxima de un objeto NSString?
- 30. Anidamiento de la cantidad máxima de formas en una superficie
Pero, el marco puede no escalarse realmente a ese número debido a las restricciones s/w y h/w. –