I recently found myself in a pickle. When I moved the other day, my wife and I brought two mattresses with us. We had a small 5’x5′ storage unit in the location we were moving to already, but obviously brought another truckload to move into storage (because we temporarily stayed at the in-laws). Well…. the California King mattress is 8 feet long! Um yeah, that’s definitely not going to fit. So, lucky us we upgraded to a new 5’x’10’ and spent an entire day transferring everything from one storage to another.
There can definitely be a lesson learned here, and what I went through is not unique to moving, but also to data storage for an application! So, how should you store your data? Well, here is some info I learned recently (and this will definitely not cover everything).

Relational Database
Are you using some flavor of SQL? Does all of your data nicely relate to other data? Then this is the choice for you! The tried and true method, you really can’t go wrong. There is continual research into making queries faster, boatloads of documentation, and standards that SQL follows to make everything nice for the developer.
When to use:
- Something in your data relates to another piece of data (like a person owns a car, or a person works at a certain company)
- You want an entire community of support when you inevitably run into problems querying across 700 tables with 20 join statements
- Your professor told you to
NoSQL
Don’t buy the hype. It’s good, but it’s definitely not the end-all-be-all. Chances are your data could be formatted to conform to a standard table in a relational database (seriously, keep breaking it up into smaller tables until it happens). But, NoSQL is great for fast queries for a single item and easy integration into specific programming languages usually implementing an easy to use chained method call for executing queries.
When to use:
- Easy database set-up, language integration, and learning
- When you don’t want structured data
- When the tutorial online told you to use MongoDB
BLOB Storage
This is great and I just learned about it! It stands for Binary Large Object and is a storage solution used to store large files like audio, video, and image files. When going through a cloud provider, they provide a file like system with an identifying URL to access your file however and whenever you want to (web browser, code, etc.).
When to use:
- When you’re trying to store media files
- That’s about it
Conclusion
Don’t be like me, choose the correct storage solution.