no pude encontrar un buen título para la cuestión, esto es lo que estoy tratando de hacer:La mejor manera de almacenar muchos archivos en el disco
- Esta es la aplicación .NET.
- necesito para almacenar hasta 200000 objetos (entre 3 KB-500 KB)
- I necesidad de almacenar unos 10 de ellos por segundo desde-múltiples hilos
- utilizo binaryserialization antes de almacenarlo
- Necesito acceso más tarde por un entero, ID único
¿Cuál es la mejor manera de hacerlo?
- no puedo mantenerlos en la memoria como voy a conseguir excepciones OutOfMemory
- Cuando los almacena en el disco como archivos separados Cuáles son los posibles problemas de rendimiento? ¿Disminuiría mucho el rendimiento general?
- Debo implementar algún tipo de almacenamiento en caché, por ejemplo, combinar 100 objetos y escribirlo una vez como un archivo. Luego analizarlos más tarde. ¿O algo similar?
- ¿Utilizará una base de datos? (El tiempo de acceso no es importante, no habrá búsqueda y solo accederé un par de veces con el ID exclusivo conocido). En teoría, no necesito una base de datos, no quiero complicar esto.
ACTUALIZACIÓN:
- Asumo base de datos sería más lento que el sistema de archivos, demostrar que estoy equivocado si tiene algo de eso. Entonces es por eso que también me inclino por el sistema de archivos. Pero lo que realmente me preocupa es escribir 200KB * 10 por segundo en HDD (esto puede ser cualquier HDD, no controlo hardware, es una herramienta de escritorio que se implementará en diferentes sistemas).
- Si uso del sistema de archivos que voy a almacenar los archivos en carpetas separadas para evitar problemas relacionados con el sistema de archivos (por lo que puede pasar por alto que la limitación)
es el ID único que nos brinda, o tenemos para generarlo? Si tenemos que generarlo, no lo necesitan para sobrevivir reinicios del sistema? –
identificación única ya está a cargo de un proporcionada, no es necesario que viva después del reinicio. Solo se requiere durante la ejecución de la aplicación. –
Tenga en cuenta que es una tontería, pero vea: http://stackoverflow.com/questions/2230032/which-is-a-better-method-for- storage-images-folder-or-sql-server-as-binary –