For a while I've been working on inserting the data from a bloated Excel workbook into a SQL database. My team has suggested keeping a backup of the .xls, and they are wondering if it might be a good idea to put the Excel workbook actually inside the database so that all the relevant data from our project was together.
I know some databases support the insertion of binary files, but clearly this was the not the original intended use of DB systems, and so I'm thinking that this is a bad idea. My vote would be to put URLs to the workbooks in the database and keep the workbooks in a secure location on our intranet.
What are the pros (if any, besides keeping both the production data and the backup in the same place) and cons of putting BLOBs in a database?
Edit: Just to clarify a little further, though I give a specific scenario, I intend this question to primarily be about BLOBs in general. But whatever I can glean for your responses that will assist me in my specific situation is, of course, appreciated. :)
Thanks,
-Robert
P.S. For those of you that didn't know, BLOB is a backcronym for "Binary Large Object"
Generally I avoid putting blobs in the database if there are other storage options that cost less. Sure, there are valid reasons for storing blobs in the database, but I tend to err on the side of caution and use the FS for file storage, and databases for data structures.
Since you're using SQL 2008, you might also be interested in the FileStream data type. It could make things a lot easier on you.
Many CMS packages (such as Sharepoint) store it all as BLOBs anyway.
A quick summary. I have no personal opinions because I've never had to design or develop very large BLOBs (such as spreadsheets) in a DB. I've stored images and other smaller stuff.
Pros: Assuming other data as well as BLOBs:
Cons:
Pros:
Cons:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With