MySQL и PostgreSQL: что «под капотом» и почему это важно знать прикладному разработчику
«MySQL и PostgreSQL: что «под капотом» и почему это важно знать прикладному разработчику. Реализация требований ACID, подходов к хранению данных и B-Tree индексов» — Никита Стрелков, разработчик e-commerce-подразделения, VK.
Доклад с митапа {Perm} Dev Meetup #1 (11 декабря 2021)
MySQL и PostgreSQL сегодня — одни из самых популярных реляционных СУБД. Их активно используют разработчики в проектах самого разного уровня: от простейших веб-сайтов с нагрузкой в несколько запросов в сутки и объемом менее гигабайта, до геораспределенных высоконагруженных приложений с тысячами и более RPS и терабайтами данных.
Многим разработчикам в течение карьеры приходится переходить с одной на другую или использовать одновременно несколько. Несмотря на кажущееся сходство, «под капотом» у этих СУБД важные различия, что сказывается на работе многих функций.
В докладе раскрыты некоторые подробности устройства MySQL и PostgreSQL:
— как обеспечивается транзакционность операций
— что такое журналирование и какие виды журналов используются
— различия в реализациях MVCC и применяемых блокировках
— различия в реализации B-Tree индексов.
Рассмотрены их сходства и различия, которые позволяют подходить к выбору СУБД для проектов более осознанно.
Материалы доклада.
https://ns-roxer.github.io/mysql-and-postgresql/ — презентация
https://dev.mysql.com/doc/internals/en/innodb.html - MySQL Internals Documentation
https://www.postgresql.org/docs/current/internals.html - Postgres Internals Documentation
https://www.interdb.jp/pg/ - The Internals of PostgreSQL by Hironobu Suziki
https://severalnines.com/database-blog/comparing-data-stores-postgresql-mvcc-vs-innodb - Comparing data stores postgresql mvcc vs innodb
https://severalnines.com/database-blog/postgresql-index-vs-innodb-index-understanding-differences - Postgresql index vs innodb index understanding differences
https://github.com/ChrisAntognini
0:00 - Представление спикера
1:38 - О чем доклад
3:28 - Почему важно знать разницу
4:35 - Сравнение функиональности
5:49 - Процессы PostgreSQL
9:19 - Процесс и потоки MySQL
14:08 - Этапы выполнения запроса в PostgreSQL
17:45 - Этапы выполнения запроса в MySQL
21:10 - Какую статистику используют СУБД для построения плана запроса
23:51 - Пара слов про ACID
25:00 - MVCC в PostgreSQL
31:30 - MVCC в MySQL InnoDB
33:49 - Сравнение реализаций MVCC
39:07 - Индексы и их классификация
40:28 - Индексы в PostgreSQL
42:52 - Индексы в MySQL
47:00 - Секция Q&A
Видео MySQL и PostgreSQL: что «под капотом» и почему это важно знать прикладному разработчику канала Spectr — команда разработки цифровых сервисов
Доклад с митапа {Perm} Dev Meetup #1 (11 декабря 2021)
MySQL и PostgreSQL сегодня — одни из самых популярных реляционных СУБД. Их активно используют разработчики в проектах самого разного уровня: от простейших веб-сайтов с нагрузкой в несколько запросов в сутки и объемом менее гигабайта, до геораспределенных высоконагруженных приложений с тысячами и более RPS и терабайтами данных.
Многим разработчикам в течение карьеры приходится переходить с одной на другую или использовать одновременно несколько. Несмотря на кажущееся сходство, «под капотом» у этих СУБД важные различия, что сказывается на работе многих функций.
В докладе раскрыты некоторые подробности устройства MySQL и PostgreSQL:
— как обеспечивается транзакционность операций
— что такое журналирование и какие виды журналов используются
— различия в реализациях MVCC и применяемых блокировках
— различия в реализации B-Tree индексов.
Рассмотрены их сходства и различия, которые позволяют подходить к выбору СУБД для проектов более осознанно.
Материалы доклада.
https://ns-roxer.github.io/mysql-and-postgresql/ — презентация
https://dev.mysql.com/doc/internals/en/innodb.html - MySQL Internals Documentation
https://www.postgresql.org/docs/current/internals.html - Postgres Internals Documentation
https://www.interdb.jp/pg/ - The Internals of PostgreSQL by Hironobu Suziki
https://severalnines.com/database-blog/comparing-data-stores-postgresql-mvcc-vs-innodb - Comparing data stores postgresql mvcc vs innodb
https://severalnines.com/database-blog/postgresql-index-vs-innodb-index-understanding-differences - Postgresql index vs innodb index understanding differences
https://github.com/ChrisAntognini
0:00 - Представление спикера
1:38 - О чем доклад
3:28 - Почему важно знать разницу
4:35 - Сравнение функиональности
5:49 - Процессы PostgreSQL
9:19 - Процесс и потоки MySQL
14:08 - Этапы выполнения запроса в PostgreSQL
17:45 - Этапы выполнения запроса в MySQL
21:10 - Какую статистику используют СУБД для построения плана запроса
23:51 - Пара слов про ACID
25:00 - MVCC в PostgreSQL
31:30 - MVCC в MySQL InnoDB
33:49 - Сравнение реализаций MVCC
39:07 - Индексы и их классификация
40:28 - Индексы в PostgreSQL
42:52 - Индексы в MySQL
47:00 - Секция Q&A
Видео MySQL и PostgreSQL: что «под капотом» и почему это важно знать прикладному разработчику канала Spectr — команда разработки цифровых сервисов
Показать
Комментарии отсутствуют
Информация о видео
16 февраля 2022 г. 16:42:34
01:01:24
Другие видео канала
MySQL vs Postgresql vs Microsoft SQL Server Management Tools | Which Option is Best?SQL vs NoSQL or MySQL vs MongoDBВся правда об индексах в PostgreSQL / Олег Бартунов, Александр Коротков (PostgreSQL)Как устроены базы данных / Илья Космодемьянский (Data Egret)Преимущества и недостатки микросервисной архитектуры в HeadHunter / Антон Иванов (HeadHunter)Почему тебе нужен PgBouncer, как его установить? Оптимизируем веб-приложения с PostgreSQL[Backend #9] Understand isolation levels & read phenomena in MySQL & PostgreSQL via examplesМасштабирование базы данных через шардирование и партиционирование / Денис Иванов (2ГИС)9. Базы данных. MySQL и сравнение с PostgreSQL | ТехностримАутентификация и авторизация в проекте с микросервисной архитектурой: стратегии, практический примерMYSQL vs POSTGRESQL vs SQL SERVER | LET'S CHOOSE THE BEST DATABASEПро Kafka (основы)Transaction Isolation Levels With PostgreSQL as an exampleМало кто знает что можно сделать из силикона!Brilliant Idea DIY INVENTIONSPostgreSQL CRASH COURSE - Learn PostgreSQL in 2022Испытание поединком: PostgreSQL vs MySQL / А.Чистяков (ВИШ), Д.Подольский (GitInSky.com)Топ ошибок со стороны разработки при работе с PostgreSQL / Алексей Лесовский (Data Egret)Postgres Admin in 6 hours #postgresql #postgres🔥Разбираем SQL на примере PostgreSQL — SELECT, JOIN, GROUP, HAVING, Coalesce и др.Обзор баз данных для программиста