Все зависит от задач и от файловой системы на сервере. Так, в некоторых случаях ядро линукс для ext2 и ext3 имеет ограничение на количество директорий, а именно не более 32000 (''EXT2_LINK_MAX''' и '''EXT3_LINK_MAX''). Соотвественно, если Ваша система предназначена для использования на различных операционных системах и Вы не можете предвидеть на что ее будут устанавливать, советую хранить файлы в самой БД. Кроме того, это позволит избежать лишних проблем с мандатным доступом.