Going NoSQL with SQL
Some time ago I discovered, by the help of a colleague, a NoSQL database for SQL-server. More specifically a document oriented db-provider for SQL-server, written in C#.
Wait, what? It is called "No"-SQL for a reason! What do you mean?
Actually, now days, it doesn't really mean "No SQL". Let me use a (slightly shortened) quote from nosql-database.org:
NoSQL DEFINITION: Next Generation Databases mostly addressing some of the points: being non-relational, distributed, open-source and horizontally scalable.
The original intention has been modern web-scale databases with characteristics such as: schema-free, easy replication support, simple API, eventually consistent / BASE (not ACID), a huge amount of data and more. So the misleading term "NoSQL" (the community now translates it mostly with "Not only SQL") should be seen as an alias to something like the definition above.
Okey, cool, so what is this database you're talking about?
Let me present you, SisoDb (Simple Structure Oriented Db), a free Document Store database for SQL-server and SQLCE4. It's created by Daniel Wertheim and uses JSON to store the POCO* objects in tables.
One of the things that really got me interested is that, since it's using SQL-server, you also get all the great infrastructure that SQL-server provides, like security, replication, scheduler, etc. and it is easy to get started and use. Another thing is that it even works with Azure.
In my next blog post I will show you how we can implement a simple blog in ASP.NET MVC using SisoDb. But if you want to quick start, watch the short video below, from Daniel Wertheim. Also visit the SisoDb homepage and read the core concepts.