This afternoon I presented an introductory session on RavenDB at Visual Studio Live! Orlando. In case you haven’t seen it before, RavenDB is a NoSQL, document-oriented database, with a first-class .NET SDK including LINQ query support and super-powerful indexing capabilities. In this talk, which I’ve delivered for the first time at Visual Studio Live!, I wanted to provide a gentle introduction to SQL but mostly focus on RavenDB and show off some of its cooler features along with its support for simple CRUD operations and LINQ queries.
You can find the sample application we developed during the talk here. It is a simple “Conference History” ASP.NET MVC website that displays a list of conferences with tracks, sessions, and speakers, and has fuzzy text-based search for sessions and speakers. Along with the simpler features such as queries, loading documents by id, and Include()s, you’ll find some more complex examples of static indexes (including map-reduce and analyzed fields) and a super-cool example of using query suggestions in the website’s search feature.
I’ve immensely enjoyed preparing this session and learning in more depth how RavenDB indexes operate, how full-text search is supported by the Lucene.NET engine, and was also quite excited to discover some future plans for RavenDB 3.0, including a revamped HTML5 management studio and a new all-.NET storage engine (Voron).
Thanks for coming to the talk! If you have any questions, please contact me — and I hope I’ve piqued your interest in RavenDB and NoSQL databases in general. If you’ve always been an avid fan of relational databases, you should at least dip your feet in the water and see if you like the more relaxed NoSQL world; if you’ve always hated DBAs for telling you that your need to normalize your enum values into a separate table and for tormenting you with foreign keys and cascading deletes, NoSQL and document databases in particular are an ideal choice for you.
I am posting short links and updates on Twitter as well as on this blog. You can follow me: @goldshtn