Hi all,
*** Denormalizing your Rails application
At Songkick we have spent the past few weeks developing a pattern for
denormalizing our relational data to improve our application
performance. (We haven't deployed much of this work yet, but will have
by the time the Manor comes around.)
In this talk we'll cover the architecture of two as-yet-unreleased
Ruby gems we are using internally:
1. asynchronous_observers: This extracts the Rails Observers into a
separate daemon, with CRUD operations on your models being sent over
AMQP.
2. silos: This is a MongoDB wrapper that permits simple memoization of
methods on specific Ruby objects into the database. It also has test
helpers that will auto-check your update scheme for you, which is
nifty.
Taken together these make adding new denormalizations as close to
trivial as we think possible. Since this is a pretty experimental
system, I'd also be interested in feedback after the session.
thanks,
Dan
___________________________________
Daniel Lucraft
danlucraft.com/blog
twitter.com/danlucraft