Ask HN: Building a new web app, lots of content, what to use for database?

2 points by smattiso ↗ HN
I expect the site-traffic will be fairly high, decent amount of db writes, medium amount of reads (most pages will end up cached). I have experience in SQL but not in setting up the infrastructure to build scalable SQL database architectures.

I am considering Redis and MySQL. Not too keen on Mongo or Couch and Cassandra seems overblown for my needs. Currently planning on using MySQL and figuring out the optimization stuff as necessary. What are the cost/benefits as you see them? If you were approaching a new project such as this what would you consider?

3 comments

[ 6.9 ms ] story [ 142 ms ] thread
PG is far superior to MySQL. Incremental backups are a default on PG, while on MySQL is far more sketchy. This thread: http://www.quora.com/What-are-the-advantages-and-disadvantag... has some thoughts as well. Redis is great.
Yes, however, I'd strongly suggest optimizing for development time in the early stages of a project. This may influence how you evaluate the pro/con sheets for a given technology.

There is a significant body of existing code and tools which assume MySQL, so I often use it for that reason. It's also not always an either/or proposition; there's usually nothing stopping you from using X for user accounts and Y for inventory tracking.

I'd use MySQL if its what you know best - it is definately scalable. I like using MySQL to populate Redis (for all reads) since Redis is blazing fast. My last tip is to think horizontal while building your app detailed speed and query based optimizations can always be added.