Hi All

For a long I've been intrigued by the flexibility using a Key Value Pair aproach for data storage would give me. I've written various db apps over the years and had the constant frustration of restructuring the tables as the real world domain changes. How great would it be to put some of that power straight into the hands of the customer, so as they need new attributes added to e.g. their customers, they could just do it themselves? Sounds wonderful but anyone who's spent any time looking into implementing this aproach using a relational database will know that it's fraught with problems. I actually started implementing this pattern to see how I got on and, while I was able to overcome alot of the issues, I can personally vouch for the fact that it's a real pig and I'm pretty convinced that some of the problems aren't solluble at all.

Recently, though, I've been reading that NoSQL datastores are far better suited to this aproach so I think I'd like to try some out and see where they take me. I have absolutely no experience with NoSQL aproaches so don't really know where to start. There's quite a few out there and, realistically, I'm not going to have a chance to try them all out so I thought I'd solicit some recomendations first. Has anyone used any NoSQL database and what were their experiences.

A few considerations:-
This isn't for a commercial project, just little old me playing around, so I can't afford to be paying enterprise level costs. Ideally if there's a proper "free" aproach (similar to microsofts express products) that would be great, a free trial period followed by a managable cost would also work for me.
At heart I'm a .net guy. I can work in Java and C++ if needs be but, in an ideal world, I'd like something that integrates well with the .Net family of products.
Finally, it's the flexibility of KVP I'm after. "Big Data" considerations (which NoSQL is also touted for) aren't really on my radar for now.

That's where I'm at. Any suggestions?