It's not you, it's SQL
I mean... yeah MongoDB got a lot of hate, but I think the broader point is that it was one of the first technologies to popularize the domain of NoSQL. No one knew how to use it properly; so we adapted SQL-like schema design, and when it became obvious that didn&#x27;t work well the hate started spilling over to the first technology to arrive at the party.<p>The elephant in the room is, I suppose, that the modern internet literally would not be possible without NoSQL. It <i>may</i> be possible without SQL; that seems likely to me. Part of that is because NoSQL is a big umbrella, and covers <i>extremely</i> critical databases like Redis or even databases like Cloudflare&#x27;s proprietary edge cache. But, even document stores are extremely critical to enterprise scaling; during Prime Day 2022, DynamoDB peaked at 150M rps. There&#x27;s no SQL setup on the planet that could handle volume like that while still maintaining all the things that Make It SQL; you could start throwing read replicas and removing joins and cross-table lookups and sharding data and ope, you just re-invented a document store.<p>Here&#x27;s the couple conclusions I have started operating by:<p>1. Document stores are, today, a strong choice at both low and high scales on the spectrum of systems scaling. Its great at low scales because you can avoid thinking about it too much. Its great at high scales because once you have the space to think about it you can attain substantially higher efficiency (performance+cost).<p>2. Making a document store operate more like SQL, for the things SQL is good at (joins, validation, etc) is a lot easier than making a SQL database operate like a document store for the things document stores are good at (Planetscale? there&#x27;s a couple players in this game).<p>3. SQL-the-language sucks. There I said it; I&#x27;ll die on that hill. The language was invented at a time +&#x2F;- 2 years of Scheme, ML, Prolog, and Smalltalk. Our industry has rejected all of those. We haven&#x27;t rejected SQL (yet). SQL is <i>demonstrably</i>, as a syntax, just as bad as those languages, evidenced by all the ORMs, injection attacks, etc. Databases tend to have a longer shelf life than programming languages, but SQL-the-language will die.<p>4. But, duh, SQL is fine. Go ahead and use it. In some situations it makes sense. In others it doesn&#x27;t. Its a tool; one that has had 60 years to form around solving as many problems as possible.<p>[1] <a href="https:&#x2F;&#x2F;aws.amazon.com&#x2F;blogs&#x2F;aws&#x2F;amazon-prime-day-2022-aws-for-the-win&#x2F;" rel="nofollow">https:&#x2F;&#x2F;aws.amazon.com&#x2F;blogs&#x2F;aws&#x2F;amazon-prime-day-2022-aws-f...</a>