6 votos

Archivos acceso frecuente y uso de I/O

¿Me resulta curioso, desde un punto de vista de rendimiento, hay una ventaja en guardar todos los archivos en un directorio versus tener cada archivo en un directorio separado? No estoy preocupado por la organización.

También, esto es suponiendo que los archivos se accederá a menudo--así que uso I/O será alto. No participa listado en el directorio, los archivos se va desplazando por la ruta de acceso absoluta.

El entorno del sistema es Linux, CentOS 5.3.

6voto

dvogel Puntos 206

Resolución de la ruta de acceso es proporcional (aunque no tan linealmente) al número de archivos en el directorio. Esto es cierto incluso para resolver rutas absolutas ya que el sistema de archivos todavía necesita analizar los nombres de archivo en cada bloque de directorio para resolver la ruta de acceso. Sistemas de archivo diferentes tienen características diferentes de resolución pero, en general, usted comenzará a notar que el rendimiento golpea alrededor 10.000 archivos.

0voto

pobk Puntos 1500

A menos que los directorios se encuentran en diferentes discos o bandas, entonces no verá una diferencia notable, si están todos en un directorio o no. Las operaciones de E/S para cada disco se juntan en una cola. Si están en diferentes incursiones, entonces verás la sensible ventaja que buscas.

0voto

Matt Simmons Puntos 16275

Si tienes memoria suficiente para mantener todos los archivos, ¿has considerado caché en la memoria RAM? http://www.linuxmaza.com/System-Administration/How-to-Mount-ramfs-tmpfs-in-Linux/

0voto

jim mcnamara Puntos 339

ext3 hace algunas cosas buenas:

http://www.ibm.com/developerworks/linux/library/l-fs8.html

Ver el encabezado de sección: opciones de publicación y la latencia de escritura
Esto le permite "sintonizar" ext3 para su aplicación.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: