views:

114

answers:

3

I am looking for a key/value type datastore with very specific requirements. Anyone know anything that will work?

  1. Needs to be a component of some sort. No additional installation needed.
  2. The datastore needs to be on the local hard drive.
  3. I am using VB.Net for a desktop app running Windows XP through 7 so it needs to callable by that environment.
  4. It needs to replicatable. If I have four copies of my app running on the network, each local copy of the datastore needs to replicate with the others. As close to real time as possible.

The first three are easy, I can do that with ADO.Net out of the box. The last one, replication, is the one I do not have answer to.

Does such an animal exist?

Thanks, Brad

+1  A: 

perhaps have a look at http://ravendb.net/

in terms of replication http://ravendb.net/documentation/replication

running locally as a service: http://ravendb.net/documentation/docs-deployment-service

Keith Nicholas
+1 for RavenDB.
Jeff Schumacher
Good to know about Raven for other projects, but I would prefer a component type of solution. Raven does look pretty easy to install, but it is yet another piece to control. I am currently using SQLite, but there is no decent replication solution available.
Brad Mathews
I'll add the that the pricing model might be a bit cost prohibitive for some though.
Keith Nicholas
@Keith - yes I agree, raven is too pricey. Especially for an unestablished product.
UpTheCreek
A: 

CouchDB might be one solution, using a.NET wrapper. It might be a bit of a pain to integrate though, as it needs Apache.

Amazon SimpleDB is another option, combined with a simple XmlSerialization implementation of an IDictionary. It's free for less than 1gb of traffic per month, which is a lot of plain text.

Chris S
+1  A: 

Key-value only then try RavenDbs' sibling , Rhino DHT. Or probably more accurate as it's grandparent. RhinoDHT is a key-value store, distributable (there is a non distributable version as well).

Component based as you require (I believe just a single DLL?)

Barry King