На цьому курсі починають з основ - розглядають архітектуру PostgreSQL та порівнюють її з іншими системами керування базами даних. Учасники встановлюють PostgreSQL та налаштовують параметри для оптимальної роботи. Вчать виконувати адміністративні задачі: керувати ролями, налаштовувати права доступу та забезпечувати безпеку підключень.
Далі курс охоплює способи взаємодії з базами даних через консоль. Учасники освоюють створення резервних копій за допомогою pg_dump та відновлення даних через pg_restore. Розглядають основні операції з даними - CRUD (Create, Read, Update, Delete) та вивчають особливі типи SQL-запитів.
Цей модуль присвячений принципам проєктування баз даних. Учасники вивчають нормалізацію, реляційність даних та різні типи зв'язків між таблицями - один до одного, один до багатьох та багато до багатьох. Розглядають специфічні типи даних PostgreSQL, включаючи JSON/JSONB, масиви та hstore.
Тут учасники навчаються покращувати швидкодію баз даних. Вивчають різні типи індексів - B-Tree, Hash, GiST, GIN - та аналізують запити за допомогою EXPLAIN. Опанують техніку партиціювання таблиць для роботи з великими обсягами даних та отримують практичні поради з оптимізації.
У цій частині курсу учасники вивчають мову програмування PL/pgSQL. Вчать створювати функції, використовувати цикли та умовні оператори. Освоюють створення тригерів для автоматизації задач та правил для зміни поведінки запитів. Розглядають методи обробки винятків та оптимізації коду.
Завершальні модулі охоплюють захист даних, кластеризацію та роботу з транзакціями. Учасники знайомляться з популярними розширеннями PostgreSQL, такими як PostGIS та Foreign Data Wrapper. Навчаються інтегрувати PostgreSQL з мовами програмування Python та Java, використовувати в веб-додатках та працювати з ORM системами.
Курс завершується розбором реальних задач учасників та відповідями на питання. Учасники отримують рекомендації щодо подальшого розвитку навичок роботи з PostgreSQL та самостійного вивчення додаткових можливостей системи.