2

I would like to store millions of images using a distributed fault tolerant system. While storing images in relational database has never been recommended, I was wondering if it is a suitable approach to store and manage image files in NoSQL databases.

I would appreciate if you could share your experience in details here. (i.e. what NoSQL database did you use? it's advantages and disadvantages in this case, etc)

Thanks

Arash
  • 578
  • 1
  • 7
  • 26
  • search much?: http://stackoverflow.com/questions/2278186/storing-images-in-nosql-stores – Mitch Wheat Sep 16 '13 at 01:37
  • Yeah we do a lot of search on the images. Couldn't find my answer in that thread. – Arash Sep 16 '13 at 01:41
  • I think the most reliable way to do this is by using a SQL database where you only store paths to your images. Why don't you want to use one ? – user2154283 Sep 16 '13 at 01:42
  • @user2154283 I was thinking of using a fault tolerant database to reduce the risk of loosing my data. Also we are planning to perform some sort of encryption on the images so they are accessible only through our application. I thought these both can be achieved by storing images in a NoSQL database. – Arash Sep 16 '13 at 01:49
  • @Arash When it comes to data safety, I would rather trust an enterprise-grade storage-area-network with high-level RAID and redundant backups than an experimental NoSQL database. – Philipp Sep 16 '13 at 13:33
  • Why do you want to store the image in the database? – BehrouzMoslem Mar 30 '17 at 05:32

1 Answers1

3

MongoDB has an API called GridFS which was made for storing binary files on the database cluster.

But just as with relational databases, storing files in a filesystem on a SAN is often a faster, more efficient, more maintainable and safer alternative.

Philipp
  • 67,764
  • 9
  • 118
  • 153