Thoughts from the Wet Coast
The musings of an ASP.NET Developer from Canada's We(s)t Coast
Over the last couple of years I have been trying to get a handle on the “new” database technologies lumped together under the NoSQL banner. In that respect I have posted several articles to this blog.
More recently my focus has shifted from looking at NoSQL databases as a group to diving in deeper to a few select “NoSQL” databases. The one that intrigues me most is Neo4j – a graph database.
Last year, when I blogged on NoSQL databases I briefly described the types of databases that are usually encompassed by the term NoSQL Databases. In that series of blogs I reviewed three types of databases, Key-Value Databases, Column-Oriented Databases and Document Databases, before focusing my attention on RavenDB – a document database.
In this blog, I will introduce a fourth class of NoSQL Database – Graph Databases. While Graph Databases are NoSQL Databases they are significantly different from the other three classes of NoSQL Databases. Graph Databases are based on the mathematical concepts of graph theory.
About 18 months ago I started a series on NoSQL Databases. I haven’t blogged much on them for about a year, but recently I have been reading quite a lot recently about Big Data and NoSQL and my intentions is to continue blogging as I learn.
Well - its official - I am doing a fall speaking tour this October. A few months ago, when the schedule was announced, I found out that I would be speaking at DNN World in Orlando (Oct 10-12, 2012).
I will be presenting a session on Knockout.js.
- It’s a Knockout: MVVM Style Module Development
About the same time as I submitted sessions to DNN World I also submitted sessions to a couple of other conferences that are being held in the fall, and just over a week ago I heard that I was invited to speak at DevReach in Sofia, Bulgaria - the home of Telerik. DevReach is exactly a week before DNN World (Oct 4-5, 2012).
I will be presenting two sessions at DevReach and readers of this blog will not be surprised with the topics chosen.
- It’s a Knockout: MVVM Style Web Application Development (similar to my session at DNN World)
- Look Mom NoSQL: An Intro to NoSQL databases for Web Developers
In combination with these conferences I will be spending a few days in England visiting my Mum and sister, and I am speaking with a few UK User Groups to see if I can line up one or two User Group meetings while I am there.
In a number of articles last fall I discussed NoSQL Databases in general and showed how RavenDB – a .NET NoSQL Database - could be used as the Data Store for an ASP.NET MVC Application.
In this article, I will demonstrate how RavenDB can be used as the Data Store for a DotNetNuke Module. First lets assume I have created a Web Application Project for my DotNetNuke Module. My Module, surprise, surprise, is going to be a Tasks or To-do List module.
In the fall of 2011 I started a series of blog posts on NoSQL databases. Since then I have developed a conference session on the topic which I presented at DevTeach 2012 in Vancouver in May. In developing the talk I spent a good deal of time trying to understand the concept of Map/Reduce, as it can be a challenging topic.
As described earlier in this series, NoSQL databases can be partitioned across many systems (or servers). This gives rise to an interesting problem - how to query across these multiple servers. This problem was solved by the concept of Map/Reduce algorithms. Map/Reduce is a multi step querying process, which takes a big task and breaks it down into multiple smaller tasks, and as with many of the NoSQL innovations it was first developed at Google.
Last week I gave two presentations at DevTeach in Vancouver. I am now making the slide decks and demo files available.
In my previous post in this series on NoSQL Databases, I showed how RavenDB embedded could be added to an existing ASP.NET MVC 3 application using NuGet and how it can be configured to use a folder in the App_Data folder.
In this blog I will add the code needed for my TaskController class to use RavenDB to store its data.
In my continuing series on NoSQL Databases I have been mainly describing some of the concepts behind NoSQL (and in particular Document) Databases. In this post I will start to dive into some code.
As mentioned earlier I will be using RavenDB as this is a .NET friendly database.
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.