Data denormalization is broken
I&#x27;ve been thinking about this a lot recently, and I&#x27;m convinced we need a Storm[1]-like architecture for databases. Something which would allow views &#x2F; denormalization &#x2F; indexing to run in separate processes. Preferably in the same language the app developers speak. And at the same time be part of the database transaction logic - triggered idempotently <i>by the database</i> so you always see a consistent view of the data no matter how you update &amp; query it. (You can do this efficiently with MVCC if you proxy queries through the indexer &#x2F; denormalizer &#x2F; view logic &#x2F; whatever you want to call it).<p>I&#x27;ve scattered some more thoughts about this here, but its a big topic: <a href="https:&#x2F;&#x2F;josephg.com&#x2F;blog&#x2F;composing-databases&#x2F;" rel="nofollow">https:&#x2F;&#x2F;josephg.com&#x2F;blog&#x2F;composing-databases&#x2F;</a><p>[1] <a href="http:&#x2F;&#x2F;storm.apache.org&#x2F;" rel="nofollow">http:&#x2F;&#x2F;storm.apache.org&#x2F;</a>