I've not used a NoSQL system (meaning I'm *perfectly qualified to speak*! :-) ), but I would assume that there are abstraction libraries that can apply ORM type mapping on these things.
My co-workers think I'm nuts, but I have for years said that I would only use stored procedures, triggers, functions, what-have-you when I absolutely have no other choice. The reason is that it smears application logic into your database, which most of the time means that all of the fancy, gee-whiz tools you use to write, maintain, version and otherwise manage your code are nearly useless. It's also more difficult to scale that code (you can make copies for sure, but if you've ever had to do change management on a sizable Oracle cluster, for example, it can be painful).
Scaling application logic across cheap hardware is also easier than scaling your database.
So, for me, assuming that I have access to an abstraction layer, I can't see a downside (apart from strict ACID compliance) to a NoSQL system.
My $0.02. And I've been called a crochety old man before, so if you disagree with me you wouldn't be the first. :-)