Илья Космодемьянский — Внутреннее устройство PostgreSQL для практикующих инженеров


Илья Космодемьянский, эксперт компании PostgreSQL-Consulting.com — Внутреннее устройство PostgreSQL для практикующих инженеров.
Встреча CodeFreeze в Москве, 22.09.2015

Понимание архитектуры используемой СУБД очень важно для правильной эксплуатации, но местами переоценено: администратору, DevOps-специалисту или разработчику прикладных систем вовсе необязательно знать подробности внутреннего устройства B-дерева или тонкости работы легковесных блокировок. Это, конечно, все очень интересно, но существенно загромождает главы Concepts соответствующих руководств или доклады про архитектуру СУБД и оставляет практическим специалистам существенно меньше времени на более важные и насущные с точки зрения повседневной эксплуатации базы данных проблемы.

В рамках данного семинара, мы эту проблему попробовали устранить и рассмотреть несколько жизненно-важных систем PostgreSQL со следующих точек зрения:

теоретические основы;
практическая реализация и суровая практика ежедневной эксплуатации.

Главной основой любой базы данных является транзакционная машина. Как она реализованная в PostgreSQL? Какие алгоритмы и протоколы лежат в основе? Как в PostgreSQL реализованы Undo и Redo? Как устроен Write Ahead Log? Для чего нужен и как работает автовакуум? Какие могут быть проблемы в работе всех этих систем? Их мониторинг и настройка: как найти и исправить проблемы? После семинара слушатели не только узнали теоретические основы работы MVCC в PostgreSQL, но и представили:

как это может сказаться, например, на производительности;
как опознать это на мониторинге;
какими настройками и подходами к написанию приложений ситуацию можно улучшить.

Говоря о каждой системе PostgreSQL мы сравнивали их с другими СУБД, такими как Oracle, IBM DB2 LUW, MS SQL Server — чтобы специалистам, имеющим опыт с другими СУБД было быстрее и проще разобраться.

Топ ошибок со стороны разработки при работе с PostgreSQL / Алексей Лесовский (Data Egret)


HighLoad Moscow 2018

Тезисы и презентация:
www.highload.ru/moscow/2018/abstracts/4018

Фантазии девелопера, или Ночной кошмар DBA.

Я и мои коллеги из Data Egret — PostgreSQL-консалтеры, и мы регулярно наблюдаем как команды разработки осознанно или нет, но допускают ошибки при работе с Постгресом.

— Нашли ошибку в видео? Пишите нам на support@ontico.ru

How to Install PostgreSQL


Установки PostgreSQL, созданные EnterpriseDB, предназначены для быстрой и простой установки PostgreSQL на вашем компьютере. Установщик обеспечивает:
 независимая от распространения PostgreSQL-установка.
 популярный инструмент администрирования PostgreSQL с открытым исходным кодом, pgAdmin.
 диспетчер пакетов StackBuilder (используемый для загрузки и установки драйверов, инструментов
и приложения в дополнение к вашей установке PostgreSQL).
В следующих разделах приведены сведения об использовании установщика PostgreSQL 9.6 / PostgreSQL 10:
 Как удовлетворить требования к оборудованию и предварительные требования к программному обеспечению перед установкой
PostgreSQL.
 Пошаговые инструкции, объясняющие параметры установки, доступные с помощью
Мастер установки.
 Как использовать Stack Builder для установки модулей, которые обеспечивают расширенную функциональность
для PostgreSQL 9.6 / PostgreSQL 10.

----------------------Следить--------------------------- — Мой сайт — www.codebind.com
Мой блог — goo.gl/Nd2pFn
Моя страница в Facebook — goo.gl/eLp2cQ
Google — goo.gl/lvC5FX
Twitter — twitter.com/ProgrammingKnow
Pinterest — goo.gl/kCInUp
Конвертер текстовых файлов — goo.gl/pVpcwL
— Материал, который я использую для создания видеороликов — Материал, который я использую для создания видео
Windows — amzn.to/2zcXPyF
Apple MacBook Pro — amzn.to/2BTJBZ7
Ноутбук Ubuntu — amzn.to/2GE4giY
Рабочий стол — amzn.to/2zct252
Микрофон — amzn.to/2zcYbW1
ноутбук для ноутбука — amzn.to/2BVs4Q3
— Facebook Ссылки — ----------
fb.me/ProgrammingKnowledgeLearning/
fb.me/AndroidTutorialsForBeginners
fb.me/Programmingknowledge
fb.me/CppProgrammingLanguage
fb.me/JavaTutorialsAndCode
fb.me/SQLiteTutorial
fb.me/UbuntuLinuxTutorials
fb.me/EasyOnlineConverter
— Онлайн-курсы для изучения — -
Java — bit.ly/2H6wqXk
C — bit.ly/2q8VWl1
AngularJS — bit.ly/2qebsLu
Python — bit.ly/2Eq0VSt
C-https://bit.ly/2HfZ6L8
Android — bit.ly/2qaRSAS
Linux — bit.ly/2IwOuqz
AWS Certified Solutions Architect — bit.ly/2JrGoAF
Современное решение с Redux — bit.ly/2H6wDtA
MySQL — bit.ly/2qcF63Z

Docker compose - группы контейнеров. Docker


Docker: используем docker compose для объединения наших контейнеров в группу и определения связей между ними, совместного запуска и обслуживания.

Docker compose — это вроде клея, который позволяет запускать контенеры в единой связке, в одной подсети и в строго определённом порядке

Как поддержать проект:
➡ Patreon www.patreon.com/letscodedru
➡ Яндекс.Деньги money.yandex.ru/to/41001451675086
➡ PayPal paypal.me/letscodedru
➡ Qiwi qiwi.me/letscode

docker compose 0:06
Сборка образа из Dockerfile 2:00
Сборка из registry 2:15
Определяем сервер БД 2:39
Вынос данных БД из контейнера 3:39
Переменные окружения (пользователь бд, пароль, имя бд) 4:38
Определяем сервер приложения 6:03
Проброс имени хоста в контейнер 7:09
Links — задаём порядок старта контейнеров 8:44
Определяем прокси 9:39
Конфигурируем прокси 10;46
docker-compose -f 12:35
docker-compose up 12:53
docker-compose start 14:53
docker-compose images 15:00
docker-compose ps 15:47
docker-compose top 15:59
docker-compose logs 16:21
docker-compose stop 16:51
docker-compose down 17:01
docker-compose --scale 17:27

Код из видео:
github.com/drucoder/docker-site

Docker compose:
docs.docker.com/compose/gettingstarted/

Введение в использование редактора vi:
youtu.be/6H0GDM8ExB8

Отладка вэб приложений в браузере:
youtu.be/8ZKgsdxSdTc

Образ nginx:
hub.docker.com/_/nginx

Образ postgres:
hub.docker.com/_/postgres

Образ drucoder/web-server:
cloud.docker.com/u/drucoder/repository/docker/drucoder/web-server

Документация по nginx:
nginx.org/ru/docs/http/ngx_http_proxy_module.html

➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖

Поддержать проект:
➡ Patreon www.patreon.com/letscodedru
➡ Яндекс.Деньги money.yandex.ru/to/41001451675086
➡ PayPal paypal.me/letscodedru
➡ Qiwi qiwi.me/letscode

➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖

➡ Второй канал: www.youtube.com/geekChatDru
➡ Твиттер: twitter.com/letsCodeDru
➡ Группа Вконтакте: vk.com/letscodedru
➡ Канал в Telegram: t.me/letsCode_dru
➡ Чат в Telegram: t.me/joinchat/FeiP9xEhqHajfqhLr4z-Nw
➡ Сервер в Discord: discord.gg/xs6XxSx
➡ Ссылка на Яндекс.Дзен: zen.yandex.ru/media/id/5ac20956168a91ffeae449c5

Релиз Ubuntu 20.04 LTS. Сравнение Ubuntu, Xubuntu, Ubuntu Mate, Kubuntu, Lubuntu


Вышла на свет новая стабильная версия Ubuntu 20.04 с кодовым названием Focal Fossa. Установочные и загрузочные образы созданы для Ubuntu, Ubuntu Server, Lubuntu, Kubuntu, Ubuntu Mate, Ubuntu Budgie, Ubuntu Studio, Xubuntu и UbuntuKylin (редакция для Китая). В видео поглядим, что изменилось в выпущенных сборках. Да посмотрим насколько они прожорливые.

Мой второй канал: www.youtube.com/channel/UCr_MsvOC6TCY0KrIdrkz93Q

#ityoutubersru #АнтонПавленко #ubuntu

ХОТИТЕ ПОМОЧЬ РАЗВИТИЮ КАНАЛА?

★ Яндекс.Деньги: money.yandex.ru/to/410012408319752
www.donationalerts.com/r/pavlenko_at

КОНТАКТЫ:
✦ Канал в TELEGRAM: t.me/worlditech (worlditech)
✦ Чат в TELEGRAM: t.me/linux_wit
✦ Группа в VK: vk.com/worlditech
✦ INSTAGRAM: www.instagram.com/pavlenko.at/

Еще контакты:
t.me/pavlenko_at
vk.com/atpavlenko
www.facebook.com/anton.pavlenko.94