2010-04-08 11 views
9

Estoy diseñando una aplicación para iPad/iPhone utilizando datos básicos. El enfoque principal de la aplicación es ordenar y ver hasta 20,000 archivos PDF. Son ~ 200KB cada uno. Por lo general, es mejor no almacenar BLOBS en una base de datos, pero para los sistemas de escritorio, normalmente lo he visto decir que si los blobs son < 1 MB, está bien utilizar la base de datos. ¿Alguna consideración que deba tener en cuenta? Si los almaceno en el sistema de archivos, ¿puedo almacenarlos en un solo directorio y no tener problemas de rendimiento (no necesitaré obtener una lista de directorios ya que almacenaría la ruta de cada uno en el DB)? ¿Debería dividirlos entre un puñado de directorios? De ser así, ¿existe una buena regla sobre # de archivos por dir?Datos básicos iPad/iPhone BLOBS vs Sistema de archivos para archivos PDF de 20k

Respuesta

9

Me gustaría buscar caminos dentro de su base de datos. Es más rápido, por búsqueda y por razones de respaldo. Yo personalmente uso una ruta relativa a un directorio, así que puedo cambiar la carpeta "raíz" en caso de migración del sistema o balanceo de carga. Puede almacenarlos en un solo directorio, porque cuando los busca desde su base de datos, es por identificación única (si su esquema está diseñado de esa manera).

Puede almacenar fácilmente 1 meg de BLOB dentro de SQLite (también otras bases de datos). Simplemente no lo recomendaría.

+2

Core Data (generalmente) utiliza SQLite como un backend, no como MySQL. –

+2

Excelente punto. Me había olvidado de la copia de seguridad. Los datos de la base de datos necesitan una copia de seguridad, pero los PDF no, ya que la aplicación siempre puede volver a descargarlos según sea necesario. – jamone

Cuestiones relacionadas