Гист утверждает, что Postgres заменяет Kafka, Redis и Neo4j

Один гист выстраивает расширения Postgres напротив Kafka, Redis, Elasticsearch, Neo4j и дюжины других систем, доказывая, что одна база покрывает всё. Тред заполнили люди, которые это пробовали — и получали ночные звонки.

Вкратце

Гист устанавливает намеренно высокую планку: берите отдельную систему только после того, как исчерпаете Postgres, задокументируете его ограничения и примете операционные издержки второго стека. PGMQ вместо Kafka, pgvector и ParadeDB вместо Elasticsearch, Apache AGE вместо Neo4j.

Затем SRE из Google переворачивает аргумент: к Kafka или Snowflake тянутся именно тогда, когда Postgres уже не справляется, а ветеран с 20-летним стажем утверждает, что одна большая база сложнее в эксплуатации, чем несколько маленьких.

Одна база, алтарь ей, и стена скептиков

PostgreSQL is enough
PostgreSQL is enough

Гист — это карта того, как далеко можно растянуть одну базу данных. Каждая специализированная система получает нативный ответ от Postgres: PGMQ — для очередей в стиле Kafka, pgvector и ParadeDB — для поиска Elasticsearch, Apache AGE — для графов Neo4j, TimescaleDB — для временных рядов, FerretDB — для MongoDB, pg_cron — для планировщиков задач. Аргумент не в том, что Postgres равен каждому инструменту, а в том, что по умолчанию следует выбирать Postgres, пока не доказано обратное: тянитесь к отдельной системе лишь исчерпав его возможности, задокументировав, почему он не подходит, и приняв операционные издержки двух стеков.

Люди, которые реально запускали второй стек

Тред в целом соглашается насчёт малых масштабов — и затем атакует саму планку. SRE Android-команды Google утверждает, что сравнение работает в обратную сторону.

«Kafka? Никто не хочет её эксплуатировать — если она серьёзный кандидат, то только потому, что нужно то, что умеет только она… Рассматривать её стоит лишь тогда, когда Postgres уже не подходит.» — SRE Android-команды Google

Сооснователь Supernotes возразил с другой стороны: иногда альтернатива изначально дешевле.

«Зачем мне доводить Postgres до предела перед тем, как использовать другое решение? Поднять hosted Redis перед горячими API-вызовами… проще в осмыслении, чем материализованные представления или UNLOGGED таблицы.» — сооснователь Supernotes

Самый острый контраргумент бьёт в предпосылку гиста, что одна база снижает нагрузку на сопровождение. Инженер с двадцатилетним продакшн-опытом говорит обратное.

«Вы загнали всю инфраструктуру в единую точку отказа… Если упадёт база, упадёт ВСЁ.» — инженер с 20+ годами в продакшн-инфраструктуре

Отдельная линия раздела прошла по первой рекомендации гиста — переносить бизнес-логику в функции базы данных. Bay Area-инженер, унаследовавший такую систему, назвал отладку мучением, и другие поддержали: триггеры и хранимые процедуры навечно привязывают продукт к Postgres. Паттерн по всему треду устойчив: никто не спорит, что Postgres достаточен при низкой нагрузке, и почти все, кто ощутил реальное инфраструктурное давление, спорят с тем, что он остаётся достаточным при росте.

Получайте такие разборы каждый день

Главные истории Hacker News — на email, в Telegram или RSS.

Следующая новость · 31 из 32 Читать дальше
🚀Tech

Первый чип OpenAI «Jalapeño» прошёл путь от дизайна до кремния за девять месяцев

OpenAI говорит, что собственный инференс-процессор, разработанный вместе с Broadcom и произведённый на TSMC, превосходит современные аналоги по производительности на ватт. Чип пока на испытаниях.

★ 562 · 💬 343 · techcrunch.com · 3 мин