what the best NoSQL solution for windows server? preferably open source
I have used MongoDB on Windows and the install went pretty smoothly. I haven't put a real heavy load on it yet.
And you can find a .NET driver here for Mongo if that's your platform
RavenDB by Ayende is the only one written in .net (that I know of), so it "just works" on Windows.
It is Open Source, but it has a dual license:
you can use it for free if your project is Open Source as well, otherwise you have to purchase a commercial license.
You should consider using Redis. It's an advanced NoSQL database with support for rich server-side data structures such as lists, sets, sorted sets and hashes. It is also one of the fastest NoSQL databases around: 110000 SETs/second, 81000 GETs/second in an entry level Linux box. Check the benchmarks.
I have a feature-rich open source C# client that let's you persist any C# POCO type natively available at: http://code.google.com/p/servicestack/wiki/ServiceStackRedis
Here are some benchmarks comparing the Redis C# client vs RavenDB.
The client provides a rich interface providing wrappers for .NET's generic IList, IDictionary and ICollection for Redis's rich server side data structures.
If you want to view a good tutorial on how you can use it to develop a real-world application check out: http://code.google.com/p/servicestack/wiki/DesigningNoSqlDatabase
Here's an example from the page above showing how easy it is to store and retrieve C# objects:
var redis = new RedisClient();
using (var redisUsers = redisClient.GetTypedClient<User>())
{
redisUsers.Store(new User { Id = redisUsers.GetNextSequence(), Name = "demis" });
redisUsers.Store(new User { Id = redisUsers.GetNextSequence(), Name = "mythz" });
var allUsers = redisUsers.GetAll();
Console.WriteLine(allUsers.Dump());
}
/*Output
[
{
Id: 1,
Name: ayende,
BlogIds: []
},
{
Id: 2,
Name: mythz,
BlogIds: []
}
]
*/
Although the server is primarily developed on Linux I have windows redis-server builds available at: http://code.google.com/p/servicestack/wiki/RedisWindowsDownload