I am looking up keyvalue stores that support C#, but i found that most of them are implemented by Java. Could anybody recommend some to me? It would be super if it is very light-weight, i.e., appearing as a library. thanks!!
A key-value database is a type of nonrelational database that uses a simple key-value method to store data. A key-value database stores data as a collection of key-value pairs in which a key serves as a unique identifier. Both keys and values can be anything, ranging from simple objects to complex compound objects.
The key-value store is one of the least complex types of NoSQL databases. This is precisely what makes this model so attractive. It uses very simple functions to store, get and remove data. Apart from those main functions, key-value store databases do not have querying language.
Sometimes likened to a key-value store because of its ability to return a value given a specific key, a cache transparently stores a pool of read data so that future requests for the data can be quickly accessed at a later time to improve performance.
If you mean a NoSQL store, What NoSQL solutions are out there for .NET? has a list of these.
If you want an in-process, persistent key-value store (like Berkeley Db) then take a look at the PersistentDictionary which is part of the ManagedEsent project. A persistent dictionary looks like a normal dictionary but is backed by a database. If you build from the current sources then you will get Linq support, which lets you do queries.
Dictionary<key,Value>
http://msdn.microsoft.com/en-us/library/xfhwa508.aspx
KeyValuePair<string, string>
http://msdn.microsoft.com/en-us/library/5tbh8a42.aspx
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With