I've built big systems using MySQL, and I generally find MySQL to be very good (I am looking forward to drizzle). However, RDBMS tend to get cumbersome and start to become annoying after time. There are five things I need out of a data store from a development stance.
- Point-wise access: key-value pair
- Index-And access: select * from table where f0=v AND .... AND fN=v
- Transactions: Lock Row, munge data, Unlock Row
- Index-And aggregation
- Asynchronous replication and synchronization to another system
I've taken various stabs over the years at trying to solve the problem, and basically they all kind of suck for various reasons. Now, I'm taking a different approach and starting a new open source project called: Nemo
Basically, Nemo is yet another key value pair system. More details are coming.