Введение в PostgreSQL
Тема дорожной карты · PostgreSQL
PostgreSQL — мощная объектно-реляционная СУБД с открытым исходным кодом, активно разрабатываемая более 35 лет и широко известная своим соответствием стандартам, расширяемостью и надёжностью. Как полнофункциональная реляционная база данных SQL, PostgreSQL поддерживает расширенные типы данных, сложную оптимизацию запросов, полные ACID-транзакции и богатую экосистему расширений — таких как PostGIS для геопространственных данных и pg_trgm для нечёткого текстового поиска. PostgreSQL работает на всех основных операционных системах и одинаково хорошо подходит как для небольшой встроенной базы данных, так и для высоконагруженной платформы данных, обрабатывающей миллионы SQL-запросов в день. Разрешительная лицензия с открытым исходным кодом и активное мировое сообщество обеспечивают регулярные выпуски новых версий и долгосрочную поддержку, делая PostgreSQL надёжной основой как для новых, так и для унаследованных систем. Изучение PostgreSQL даёт разработчикам и инженерам по данным универсальный, проверенный в продуктивной среде инструмент реляционных баз данных, пригодный практически для любой рабочей нагрузки.
Как это работает
Введение в PostgreSQL начинается с понимания PostgreSQL как закалённой в бою open-source RDBMS со строгим следованием SQL-стандартам, MVCC-конкурентностью, ACID-транзакциями и богатой типизацией (массивы, JSONB, ranges, геометрические типы, пользовательские через расширения). Кластер Postgres — один работающий postmaster + per-connection backend-процессы; БД живут внутри одного кластера; схемы внутри БД; таблицы, view, sequences внутри схем. Wire-протокол стабилен и задокументирован.
Когда применять
PostgreSQL — дефолтная реляционная БД для любого нового проекта: JSON + реляционка + full-text + расширения в одном движке, MIT-подобная лицензия, без vendor lock-in. MySQL — только если унаследовали деплой. SQLite — когда реально single-host + низкая конкурентность. Managed Postgres (Yandex Managed PostgreSQL, RDS, Cloud SQL) — когда бекапы + HA + мониторинг начинают есть инженерное время.
Типичные ошибки
Ловушки Введение в PostgreSQL: расчёт, что Postgres "сам масштабируется" без тюнинга (shared_buffers, work_mem, max_connections дефолты крошечные); MySQL-измы (LIMIT m, n нестандартен — используйте LIMIT n OFFSET m); пустой template1-extensions (CREATE EXTENSION per-DB); не выучили EXPLAIN (ответ на большинство "почему медленно" — в плане). Прочтите официальный туториал от и до.
Связанные понятия
Полезные ресурсы
Проверить знания (1)
Загрузка вопросов…