Are there any document databases and/or key-value stores (something like Project Voldemort, MongoDB, etc.) that work well with .Net projects? Most of the options I've looked at so far seem to be more geared towards the non-Microsoft/Java/open-source technologies and I was wondering if anyone had any experience/recommendations with such solutions for the Microsoft stack.
问题:
回答1:
CouchDB is well regarded and accessible via .Net albeit not that pleasant to install on windows still.
Thrift api compatible servers like cassandra will talk .Net
Tokyo Cabinet can be simply accessed by the (apparently) full .Net port of Tokyo Tyrant
MongoDB has several .Net api options
I would suggest that indicating whether sharding (or other horizontal scaling capabilities) are more or less important that some level of consistency in your persistent store since all of the above trade off the consistency for low latency and good scalability in some way or another.
回答2:
there is a memcachedb which is persistent, and also the tokyo cabinet which is persistent (and supposedly very fast). Both are compatible with the memcache protocol sot you can use their drivers for .net
回答3:
The community based opensource.net driver for mongodb works quite nice and is really fast. It can be found on the mongodb homepage
回答4:
Microsoft "Velocity" does this (also a link to their blog), but is still in community technology preview (i.e. "beta").
Other projects, like memcached, have .NET APIs.
回答5:
Community supported C# driver for mongodb avaiable in github
And another promising key value store is hyphertable. You can access this through c# thrift client. You can get it here.
I dont have any working experience with thrift clients. So you can clarify it in hyphertable forum..
回答6:
The link to Tokyo Cabinet for .Net is for the client driver. There is a port of the Tokyo Cabinet og Tyrant it can be downloaded from this site: http://spench.net/drupal/software/tokyocabinet
I have not testet this port.