Storing images in the database.

[tweetmeme source=”snarayan” only_single=false]

My personal opinion is that going forward, more and more images would be stored in the database instead of the file server. (for enterprise kind of applications).
Though currently, most databases are not equipped to handle images efficiently.

Current Concerns with the approach:
1. Slow retrieval : It is generally considered slower to retrieve images from db. Though it is fast changing.
2. Size of db : Size of db becomes large. creating backup issues.
3. Complex : It is more complex to add/retrieve images from db.
4. Caching : It is relatively more complex to cache/index images in the db. URL/image caching is easier.

Advantages:
1. Backup : It just simplifies the backup process. Also it reduces the risk of not syncing up the database with the file-system resulting in the “image not found” errors.
2. Secure : It adds more fine-grained control on the security of access-control, since all rules of db apply on them.

Under current circumstances, it is better to NOT have images images in the database (unless you’re willing to invest in oracle 10g, which handles images better than most servers)

Some other alternatives could be Amazon S3, variety of CMS, Document repositories, etc.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s