Wednesday, March 28, 2012

Images in SQL database or filesystem

We are wondering which storage type to choose. The number of images will be
about 30 million and the size of one image will be about 30kb.
What are the advantages and divantages of the two storage areas?
Is there anyone who can help me with his expertise in this area?
Please no answers like: On my filesystem everythings works great.I prefer to store images on the file system, but I know that there are
others that don't share my view. In any case there are advantages and
divantages for each method.
The advantages of storing the BLOB in the database are:
1) You don't need to worry about synchronizing the data in the DB and
the images.
2) When you backup the database you already backup the images.
3) You can manage permissions in the database only.
The divantages of storing the files in the database are:
1) Backup and restore time for the database will increase
significantly.
2) Writing the code to handle the images will be harder.
3) When you work with image data type you'll might have performance
problem (comparing to storing the images on the file system). I have
to admit that I only read it and never tested it.
Adi|||Hi
You will probably get a few replies saying "Put it on the File System".
The issue with that is:
1. How do you keep the DB and FS in sync so during a restore, you don't
loose links? With difficulty.
2. All file systems start have performance problems if you have too many
files in one directory. 30 Million files does result in a very complicated
structure to keep the number of files at a manageable level (10'000 or less,
mileage may vary)
3. You have permissioning issues. If you want to read/write to the files,
the people need read/write access to the files. Files can get modified and
deleted very easily. You control the DB, and once written, you can stop
modifications.
I am in favor of DB storage.
Regards
Mike
"morerice" wrote:

> We are wondering which storage type to choose. The number of images will b
e
> about 30 million and the size of one image will be about 30kb.
> What are the advantages and divantages of the two storage areas?
> Is there anyone who can help me with his expertise in this area?
> Please no answers like: On my filesystem everythings works great.
>|||My rule of thumb (but rule are meant to be broken) is that if you have a
large number of small files, it is better to store them in the database
because of synchronization issues and file system problems managing a large
number of files.
In your case though, you say that you have them in a fileSystem and
everything works great.
I don't know how things will evolve in you situation (file modifications, 40
million files next year, etc.), but unless you have a very good reason to
change a good working system... don't.
"morerice" <morerice@.discussions.microsoft.com> wrote in message
news:FB2F0C09-5E26-4996-8022-CFBC57D3960B@.microsoft.com...
> We are wondering which storage type to choose. The number of images will
be
> about 30 million and the size of one image will be about 30kb.
> What are the advantages and divantages of the two storage areas?
> Is there anyone who can help me with his expertise in this area?
> Please no answers like: On my filesystem everythings works great.
>|||Morice,
It sounds like you will have a headache coming one way or the other. My
experience working with blobs is that they stink. Database size tend grow ou
t
of control, online backup start to become expensive if you pay for storage
like we do and maintenance on the database get longer and longer. Here's a
link to an article that describe a problem you will encounter one day.
http://support.microsoft.com/?id=324432
My point is this: DO YOUR HOMEWORK and communicate, communicate communicate
before you embark on putting the images in the database.
Joseph
"morerice" wrote:

> We are wondering which storage type to choose. The number of images will b
e
> about 30 million and the size of one image will be about 30kb.
> What are the advantages and divantages of the two storage areas?
> Is there anyone who can help me with his expertise in this area?
> Please no answers like: On my filesystem everythings works great.
>

No comments:

Post a Comment