๐—ช๐—ฒ๐—น๐—ฐ๐—ผ๐—บ๐—ฒ ๐˜๐—ผ ๐˜๐—ต๐—ฒ ๐——๐—ฎ๐˜๐—ฎ๐—ฏ๐—ฎ๐˜€๐—ฒ ๐—ญ๐—ผ๐—ผ! ๐—”๐—ฟ๐—ฒ ๐˜†๐—ผ๐˜‚ ๐—บ๐—ฎ๐—ป๐—ฎ๐—ด๐—ถ๐—ป๐—ด ๐—ถ๐˜โ€ฆ ๐—ผ๐—ฟ ๐—ท๐˜‚๐˜€๐˜ ๐—ต๐—ผ๐—ฝ๐—ถ๐—ป๐—ด ๐—ป๐—ผ๐˜๐—ต๐—ถ๐—ป๐—ด ๐—ฐ๐—ฎ๐˜๐—ฐ๐—ต๐—ฒ๐˜€ ๐—ณ๐—ถ๐—ฟ๐—ฒ?

It starts harmlessly enough:
โ—ฝ Postgres for core data ๐Ÿ’ช
โ—ฝ Redis for caching โšก
โ—ฝ Elasticsearch because โ€œsearch is hardโ€ ๐Ÿค“
โ—ฝ DynamoDBโ€ฆ no one remembers why, but itโ€™s in prod now ๐Ÿ˜ฌ
โ—ฝ ClickHouse for analytics because someone read a blog post about it once ๐Ÿ“Š
โ—ฝ SQLite for that one internal CLI tool, obviously ๐Ÿ’ก
โ—ฝ Oh, and MongoDB is still running that one service from 2019 โณ

Fast-forward 12 months and your stack looks like a ๐—ฑ๐—ฎ๐˜๐—ฎ๐—ฏ๐—ฎ๐˜€๐—ฒ ๐—ฏ๐˜‚๐—ณ๐—ณ๐—ฒ๐˜โ€ฆ
Except now you need ๐—ฟ๐—ฒ๐—ฎ๐—น ๐—ด๐˜‚๐—ฟ๐˜‚ to monitor it, a second team to maintain it,
and a ๐˜๐—ต๐—ฒ๐—ฟ๐—ฎ๐—ฝ๐˜† ๐˜„๐—ต๐—ถ๐˜€๐˜๐—น๐—ฒ๐—ฟ ๐—บ๐—ฎ๐—ฟ๐—บ๐—ผ๐˜ for on-call rotation.

๐—”๐—ฟ๐—ฒ ๐˜๐—ต๐—ฒ๐˜€๐—ฒ ๐—ฐ๐—ต๐—ผ๐—ถ๐—ฐ๐—ฒ๐˜€ ๐˜€๐˜๐—ฟ๐—ฎ๐˜๐—ฒ๐—ด๐—ถ๐—ฐโ€ฆ ๐—ผ๐—ฟ ๐—ท๐˜‚๐˜€๐˜ ๐˜€๐˜†๐—บ๐—ฝ๐˜๐—ผ๐—บ๐˜€ ๐—ผ๐—ณ ๐—ฑ๐—ฒ๐˜ƒ๐—ฒ๐—น๐—ผ๐—ฝ๐—ฒ๐—ฟ ๐—ผ๐—ฝ๐˜๐—ถ๐—บ๐—ถ๐˜€๐—บ?
(aka โ€œsure, Iโ€™ll just spin up one more DB – what could go wrong?โ€)

โŒ ๐—ฆ๐—ผ๐—บ๐—ฒ ๐˜€๐—ถ๐—ด๐—ป๐˜€ ๐˜†๐—ผ๐˜‚โ€™๐—ฟ๐—ฒ ๐˜€๐˜‚๐—ฟ๐˜ƒ๐—ถ๐˜ƒ๐—ถ๐—ป๐—ด, ๐—ป๐—ผ๐˜ ๐—บ๐—ฎ๐—ป๐—ฎ๐—ด๐—ถ๐—ป๐—ด:
โ—ฝ Backups? “I think they’re happeningโ€ฆ”
โ—ฝ Nobody touches the legacy MongoDB because it might be possessed ๐Ÿ‘ป
โ—ฝ Every new feature adds a new datastore – and a new panic attack
โ—ฝ Your monitoring dashboard looks like a spaghetti monster

โ” ๐—ฆ๐—ผ ๐˜„๐—ต๐—ฎ๐˜โ€™๐˜€ ๐˜†๐—ผ๐˜‚๐—ฟ ๐—ฟ๐—ฒ๐—ฎ๐—น๐—ถ๐˜๐˜†?
Are you keeping things tight with 1-2 core databases?
Or just leaning into the chaos with no limits?