Oskar Dudycz 🇺🇦✊<p>How to build <a href="https://hachyderm.io/tags/MongoDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MongoDB</span></a> Event Store? The neat part is you don't! </p><p>Oh well, past me thought like that, but Alexander Lay-Calvert persuaded me to change my mind and did most of the work. We delivered <a href="https://hachyderm.io/tags/MongoDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MongoDB</span></a> storage, and it went surprisingly well. I wrote a detailed write-up on how to do it!</p><p>There were many interesting challenges in how to make it consistent and performant, so I think that's an interesting read. </p><p>I think it's a good guide if you're considering using <a href="https://hachyderm.io/tags/MongoDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MongoDB</span></a> as anevent store. Surprisingly, I have had numerous discussions recently with people trying to do it.</p><p>If you're considering using key-value databases like <a href="https://hachyderm.io/tags/DynamoDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DynamoDB</span></a> and <a href="https://hachyderm.io/tags/CosmosDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CosmosDB</span></a>, then this article can also outline the challenges and solutions.</p><p>My first choice is still on <a href="https://hachyderm.io/tags/PostgreSQL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>PostgreSQL</span></a>, but I'm happy with the <a href="https://hachyderm.io/tags/MongoDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MongoDB</span></a> implementation in <a href="https://hachyderm.io/tags/Emmett" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Emmett</span></a>. </p><p>If <a href="https://hachyderm.io/tags/MongoDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MongoDB</span></a> is already part of your tech stack and the outlined article constraints are not deal-breakers, this approach can deliver a pragmatic, production-friendly solution that balances performance, simplicity, and developer familiarity.</p><p>I'm not sure what took longer, delivering the implementation or writing this article. So I'll appreciate the feedback and sharing with your friends. ❤️</p><p><a href="https://event-driven.io/en/mongodb_event_store/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">event-driven.io/en/mongodb_eve</span><span class="invisible">nt_store/</span></a></p>