Ayende @ Rahien

Hi!
My name is Oren Eini
Founder of Hibernating Rhinos LTD and RavenDB.
You can reach me by phone or email:

ayende@ayende.com

+972 52-548-6969

, @ Q c

Posts: 5,953 | Comments: 44,409

filter by tags archive

RavenOverflow - building a StackOverflow clone with RavenDB


Another in our series of videos of customer interactions. This time, we take a look at the challenges involved in building a RavenDB powered Stack Overflow site. I think you’ll find it very interesting.

Building StackOverflow clone with RavenDB

In this webcast Ayende works with Justin on modeling a StackOverflow website clone with RavenDB. The topics discussed in this 1hr video are:

  • Map/Reduce indexes
  • Modeling tags
  • Root aggregates
    • Metadata
    • Active tags
    • Facets
    • The suggest feature
  • Performance:
    • Built-in caching
    • Lazy loading
    • Aggressive caching
  • RavenDB profiler

The new RavenDB beta docs: http://docs.ravendb.net

The project we are talking about: https://github.com/PureKrome/RavenOverflow


Comments

Demis Bellot

Interesting to see how this compares with my Redis StackOverflow mini clone I created over a year ago at: http://www.servicestack.net/RedisStackOverflow/

I found Redis was a good fit for this as the entire Redis repository fits into 1 class: https://github.com/ServiceStack/ServiceStack.Examples/blob/master/src/RedisStackOverflow/RedisStackOverflow.ServiceInterface/IRepository.cs

Best thing about using Redis is you rarely need to ever cache since its so fast!

Phillip Haydon

Watched this at work today, it's great, it cleared up quite a for things i didn't fully understand about RavenDB.

Gengzu

public static IList ToRandomList(this IList source, int numberOfItems) { if (numberOfItems <= 0) { throw new ArgumentOutOfRangeException("numberOfItems"); }

btw, maybe uint better instead int?

stacey

Random question - what is that little stop sign next to your page refresh button in google chrome?

Alexei K

Great video, but is there any ETA for the update on the git repo?

Rafal

Very interesting and encouraging demonstration of Raven's capabilities, but I think the tool will always be effective and easy to use in the hands of its creator. I'd love to read about all these cases when someone hit a wall trying to use Raven for some task - performance limits, unexpected difficulties and side-effects, unforeseen use cases and quirks - you know, everything that you didn't expect and that has blown into your face and then how you dealt with that.

Ayende Rahien

Rafal, That is why we are doing those customers videos.

Paul

Hi Ayende, I know this is off topic. But with the re-resurgence of NoSQL databases, it is getting harder to think of scenarios under which I would want to use a relational database.

If you had full control over the design, can you now think of cases when you would want to use a relational database?

Ayende Rahien

Paul, I am not a real good person to ask that question, you do realize that? Maybe for heavy dynamic reporting, OLAP stuff, etc.

Alexander

What keystroke do you use to show Resharper templates (like add new class) in Solution Explorer?

Justin Adler

@Alexei K - heya mate :) The git repo is mine (right now) and literally a few hours after Ayende hit the stop button, I jumped on a plane with my family and hit the beach for a well deserved break.

I'm back at work today (read => no kids == I have energy and can actually turn on a computer) so i'll be updating the repo on git hub tonight :)

@ScottH - whoa! this got on your radar! Totally awesome-sauce :)

And big ups to Ayende for doing this, of course :) :)

Micha Schopman

I would love to see how you keep document values synchronized between multiple documents where each document contains the denormalized same values and you are doing updates (or deletes) on those values.

I have a specific modelling case where I just can't seem to figure out how to achieve this because the document's presented are personalized and targetted for each visitor, and the information presented in the document changes alot so the result would be that all documents are changed constantly.

This also seems the case in StackOverflow where vote changes would mean that all documents with summarized vote information should also changed.

Ayende Rahien

Micha, You can either link (and then Include) that data, or you can just update it. I am not sure that I understand the problem

Comment preview

Comments have been closed on this topic.

FUTURE POSTS

No future posts left, oh my!

RECENT SERIES

  1. The RavenDB Comic Strip (3):
    28 May 2015 - Part III – High availability & sleeping soundly
  2. Special Offer (2):
    27 May 2015 - 29% discount for all our products
  3. RavenDB Sharding (3):
    22 May 2015 - Adding a new shard to an existing cluster, splitting the shard
  4. Challenge (45):
    28 Apr 2015 - What is the meaning of this change?
  5. Interview question (2):
    30 Mar 2015 - fix the index
View all series

Syndication

Main feed Feed Stats
Comments feed   Comments Feed Stats