Can Event Machine or Celluloid give me reactive updates from my database made by a different process or service (like some background task with message queue)? Or are you bringing those as alternatives to EventEmitter of node.js?
My point is: neither Event Reactor nor Actor model implementation are sufficient to make your database realtime (push updates to the application server). And the amount of work that was put into MongoDB actually doing it correctly and reliably is very undervalued in this thread.
That's why there are so few "real-time" solutions built around databases (NoSQL or SQL): Meteor, Firebase, GoInstant.
Always keeping everything in memory and updating clients as soon as the server have gotten a write is a different story with different complexity and different scaling limits. (but it can be done more efficiently utilizing RAM servers like Redis; Redis has built-in notification interface).