I’m working on a new project using Obvious and I got to the point in the project where I had to finally decide what I wanted to use to store the data. In many projects you would start by picking a database, but Obvious flips that on its head a bit, and you don’t have to worry about the database until you’re ready to get the app live in production really.
So, I am putting the project on Heroku, so I was looking through the addons and was between MySQL and Mongo as the prime data store candidates. However, what I’m storing is only going to max out at maybe 500 records in a few years, so it didn’t make a ton of sense to worry too much about the database. Either MySQL or Mongo would be fine. What to decide?
Well, after thinking about it, I realized that there was a great third option. Amazon S3!
What? S3? S3 is not a database!
Actually, for what I’m doing S3 is perfect. There won’t be a lot of data. I’m not updating it constantly. I already have a Filesystem plug for Obvious, so I just needed to rewrite that for S3. How hard could that be?
It was super easy.
So, now I have my project about ready to go live in production against Amazon S3. It runs fast and will likely scale to infinity (or at least the hundreds of users the site might have) as S3 is arguably the strongest part of Amazon’s cloud. Also, it’s ridiculously cheap. It will cost pennies to run the site each month.
So, why not SQL? Because in this case Amazon S3 was a much better choice.
P.S. I unpack more ideas in Creative Genius