Right!
The external binary file storage has another advantage (that may be
considered as disadvantage as well) - it is usually easier to develop
and test mechanism as you're able to browse uploaded file result using
os / application or even "exchange" file contents for test purposes,
while in case of iternal storage you need some extra code to do it for
you and you newer know, if it works well. Another problem is caching /
feeding files in case of heavy load condition - caching of huge objects
is problematic while you never know the dimension of the problem,
non-caching approach may cause bottlenecks on frequent database reads.
I was considering both scenarios and finally've choosen external storage
for our invoice generation system.
Regards,
Piotr