DevOps
8.79K subscribers
1.41K photos
910 videos
28 files
1.79K links
Docker, Kubernetes, облачные сервисы (AWS, GCP, Azure), Infrastructure as a Code (Terraform, CloudFormation), администрирование Windows и Linux, сети TCP, IP, скрипты (Bash, PowerShell), Ansible, Jenkins, DevSecOps, логирование. По вопросам @evgenycarter
Download Telegram
🔥 Elasticsearch или PostgreSQL: зачем платить за сложность?

В DevOps-сообществе тренд «просто используй Postgres» с каждым годом становится всё более актуальным. Команда TigerData выкатили отличную статью, в которой разобрали 10 главных болей при эксплуатации Elasticsearch в продакшене и объяснили, как архитектура PostgreSQL помогает их избежать.

Спойлер: с великой силой (ES) приходит великая операционная боль.

Вот лишь несколько классических проблем, о которых идет речь в материале:

JVM Garbage Collection (GC). Elasticsearch работает на Java, а значит, внезапные паузы "stop-the-world" при сборке мусора - часть вашей жизни. Если нода «подвисает» надолго, кластер считает ее мертвой и начинает панически перераспределять данные. Итог: каскадный отказ на пустом месте. Postgres написан на C, управляет памятью напрямую и не страдает от подобных фризов.

🧩 Математика шардирования. Неправильный сайзинг шардов в ES - это бомба замедленного действия. Слишком маленькие шарды создают оверхед, слишком большие приводят к проблемам с ребалансировкой и восстановлением.

🔄 ETL-пайплайны и синхронизация. Держать основные данные в реляционной БД и постоянно переливать их в ES для поиска - это всегда костыли, риск рассинхрона, задержки (lag) и лишняя точка отказа.

📈 Оверхед на мониторинг. ES требует отдельного зоопарка инструментов и глубокой узконаправленной экспертизы для поддержания кластера в зеленом статусе.

Какой выход предлагают авторы?
Для большинства проектов полномасштабный ES просто не нужен. Современный PostgreSQL (благодаря мощным расширениям вроде pg_textsearch с поддержкой BM25 и pgvector для векторного поиска) отлично справляется с задачами поиска. Вы получаете полноценные ACID-транзакции, единую точку правды и предсказуемое потребление ресурсов без возни с настройкой JVM.

Рекомендуется к прочтению всем, кто устал дебажить кластеры ES по ночам и задумывается о консолидации инфраструктуры.

https://www.tigerdata.com/blog/10-elasticsearch-production-issues-how-postgres-avoids-them

#devops #elasticsearch #postgresql #database #architecture #backend


📲 Мы в MAX

Подпишись 👉@i_DevOps
5👍4