9. Базы данных. MySQL и сравнение с PostgreSQL | Технострим


Слайды лекции: bozaro.github.io/tech-db-lectures/09/
► Другие лекции курса: www.youtube.com/playlist?list=PLrCZzMib1e9oOFQbuOgjKYbRUoA8zGKnj
Подробнее о курсе: park.mail.ru/curriculum/program/discipline/218/

Лекция читается в рамках образовательного проекта «Технопарк Mail.ru Group» при МГТУ им.Баумана.

Описание лекции:

Лекция посвящена СУБД MySQL и ее сравнению с PostgreSQL.

Рассматриваются следующие темы:

— Архитектура MySQL
— Подсистемы хранения MySQL
— Репликация в MySQL
— Настройка MySQL
— Проблемы MySQL
— Достоинства MySQL


Хронометраж:

00:00:05 О теме лекции
00:01:09 Архитектура MySQL
00:02:08 Архитектура MySQL: хранилища объектов
00:04:22 Подсистемы хранения: MyISAM
00:06:52 Подсистемы хранения: InnoDB
00:08:30 Подсистемы хранения: Memory
00:09:53 Подсистемы хранения: критерии выбора
00:11:51 Подсистемы хранения: надежность
00:12:05 Другие подсистемы хранения
00:12:57 Подсистемы хранения: когда какую использовать / практические примеры
00:14:42 Проблемы MySQL: не транзакционный DDL
00:16:27 Проблемы MySQL: дорогой ALTER TABLE
00:20:00 Проблемы MySQL: особенности выборки данных
00:23:02 Проблемы MySQL: хранилище и лог транзакций существуют за пределами «движка»
СУБД
00:24:55 Репликация в MySQL: режимы репликации / проблемы репликации в MySQL
00:31:16 Репликация в MySQL: другие особенности
00:33:30 Репликация в MySQL: хрупкая репликация (пример проблемного запроса)
00:35:56 Ответы на вопросы по хранилищам MySQL
00:39:00 Архитектура MySQL: особенности планировщика запросов
00:41:19 Планировщик запросов: гарантированно плохие запросы
00:43:57 Проблемы MySQL: отличие между равенством и конструкцией IN в запросе выборки
00:47:08 Планировщик запросов: DELETE (стандартный / специфичный синтаксисы)
00:49:58 Проблемы MySQL: AUTO_INCREMENT
00:54:09 Проблемы MySQL: TIMESTAMP vs DATETIME
01:00:20 Проблемы MySQL: операция UPDATE не соответствует стандарту SQL92
01:01:33 Проблемы MySQL: lower_case_table_names
01:05:13 Как я познакомился с MySQL
01:08:53 Достоинства MySQL: секционирование
01:11:10 Достоинства MySQL: COLLATIONS
01:17:18 Достоинства MySQL: LIBSLAVE
01:18:52 Настройка MySQL: базовые параметры / кэш MyISAM
01:20:21 Настройка MySQL: размер блока ключей key_cache_block_size
01:21:26 Настройка MySQL: кэш InnoDB
01:27:58 Настройка MySQL: ввод / вывод в MyISAM
01:29:38 Настройка MySQL: ввод / вывод в InnoDB
01:33:33 Критерии выбора СУБД и проблемы миграции
01:36:26 Проблемы MySQL: необычайно долгий дамп
01:37:01 Ответы на вопросы по пройденному материалу: проблемы миграции
01:41:59 Причины миграции с MySQL на PostgreSQL: пример из практики
01:46:33 Проблемы MySQL: MYSQLDUMP
01:51:32 Проблемы MySQL: нелогичное выполнение некоторых запросов — WARNING vs ERROR
02:03:30 Проблемы MySQL: нелогичное выполнение некоторых запросов — TIMESTAMP
02:09:41 Проблемы MySQL: нелогичное выполнение некоторых запросов — GROUP BY

— О КАНАЛЕ:

Официальный канал образовательных проектов Mail.Ru Group

► Нажмите здесь для подписки ‣ www.youtube.com/TPMGTU?sub_confirmation=1

Актуальные лекции и мастер-классы о программировании от лучших IT-специалистов. Если вы увлечены мобильной и веб-разработкой, присоединяйтесь!

Наши проекты:
Технопарк при МГТУ им. Баумана ‣ park.mail.ru
Техносфера при МГУ им. Ломоносова ‣ sphere.mail.ru
Технотрек при МФТИ ‣ track.mail.ru
Техноатом при МИФИ — atom.mail.ru
Технополис при СПбПУ — polis.mail.ru

— МЫ В СЕТИ:

Технопарк в ВК | vk.com/tpmailru
Техносфера в ВК | vk.com/tsmailru
Технотрек в ВК | vk.com/trackmailru
Техноатом в ВК | vk.com/technoatom
Технополис в ОК: www.ok.ru/technopolis
Технополис в ВК: vk.com/technopolis_ok
Блог на Хабре | habrahabr.ru/company/mailru

Илья Космодемьянский — Внутреннее устройство 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 — чтобы специалистам, имеющим опыт с другими СУБД было быстрее и проще разобраться.

SQL Join


Начиная разбираться в SQL многие сталкиваются с проблемой сложности понимания различия между разными JOIN-ами в этом языке.

В этом видео уроке я объясняю: 1) Что такое JOIN. 2) Различие между CROSS JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN, и FULL JOIN. Также показываю как реализовать FULL JOIN в базах данных, которые не предоставляют такую конструкцию.

Что должен знать Python веб-разработчик для приёма на работу?


Запускаем мощную платную обучающую программу, интересно принять участие? Пройдите опрос — simpoll.ru/run/survey/c44b6a04

Поддержать канал и получить доступ к закрытым видео — boosty.to/digitalize.team

Поговорим в этом видео о наборе скилзов, необходимых для успешного трудоустройства Python веб-разработчика.

Текстовая версия для тех, кто хочет оставить себе как roadmap для своего развития в текстовом виде: www.evernote.com/l/AA0ipjdOO8ZALKRUiv-lZP7732OYOQEa75o

Упоминаемая статья Торшиной (внимание, нецензурная лексика) — torshina.me/dodelyivat-delo-do-kontsa/

0:00 О чём пойдёт речь, roadmap для Python веб разработчика
2:55 Об Интернет, вебе, протоколах, веб-стандартах
6:42 О фронтенде и JavaScript
9:12 Бэкенд, Python — синтаксис, стандартные и сторонние библиотеки
16:37 Python веб-фреймворки
19:00 Качество кода, ООП, паттерны
20:47 Тестирование, инструменты, Git, Linux инструменты
22:31 SQL и реляционные базы данных
23:31 Linux, Docker, CI/CD
26:14 Что значит знать? Об опытных и начинающих
27:48 Гугление, английский язык
28:51 О возможном обучающем курсе, выводы

/****************** about ******************/

Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:

— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.

Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.

С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.

Мои соц сети:
www.facebook.com/a.goloburdin
www.instagram.com/alexeygoloburdin/
vk.com/a.goloburdin

---

sql для тестировщиков


sql для тестировщиков

#sqlдлятестировщиков #sql #длятестировщиков

В продолжении видео про базы данных, рассказываю про sql.
SQL для начинающих может показаться давольно сложным занятием. Но всё гораздо проще, когда понимаешь что нужно знать 10 sql запросов. А остальное обрастает с опытом.

Для тестировщика любой sql запрос в начале выглядит как что-то очень большое и страшное. А вообще лучше не подходить. Именно по этому я хочу донести, что всё гораздо проще. И каждый может с этим разобраться.

Знания программирования совсем не нужны. Нужна математика не старше 5-го класса.

Смотрите весь плэйлист.
www.youtube.com/watch?v=GIzeF6CJAm4

Бизнес-логика в Django и архитектура Django проектов — на настоящем примере


Запускаем мощную платную обучающую программу, интересно принять участие? Пройдите опрос — simpoll.ru/run/survey/c44b6a04

Сказать спасибо можно здесь — boosty.to/digitalize.team

Django остаётся самым популярным Python веб-фреймворком в мире, однако архитектура большинства проектов на нём, мягко говоря, оставляет желать лучшего. В этом мастер-классе мы на живом примере поговорим о структуре Django проекта, бизнес-логике в Django, а также о хороших практиках проектирования кода.

0:00 О чём пойдёт речь, постановка задачи
2:17 Создание проекта
3:50 Создание моделей
7:39 Создание первоначальных Django Views
25:21 Анализ полученного начального кода
26:07 Рефакторинг
40:40 Вынос бизнес-логики в отдельный слой
54:09 Анализ полученного кода, финальный рефакторинг

Создание бизнес-сервисов

/****************** about ******************/

Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:

— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.

Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.

С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.

Мои соц сети:
www.facebook.com/a.goloburdin
www.instagram.com/alexeygoloburdin/
vk.com/a.goloburdin

---

Postgres vs Mongo / Олег Бартунов (Postgres Professional)


РИТ 2017, Backend Conf

Тезисы:
backendconf.ru/2017/abstracts/2781.html

Я хочу немного порушить стереотипы, что Postgres — это чисто реляционная СУБД из прошлого века, плохо приспособленная под реалии современных проектов. Недавно мы прогнали YCSB для последних версий Postgres и Mongodb и увидели их плюсы и минусы на разных типах нагрузки, о которых я буду рассказывать.

Типичные вопросы на СОБЕСЕДОВАНИИ по SQL / Примеры задач и их решения


Типичные вопросы на собеседовании по языку SQL. Решаем задачи вместе. У Вас скоро собеседование по SQL или Вы считаете себя Гуру? Проверьте свои знания! Попытайтесь решить каверзные задачи ;)
#SQL, #Базыданных #Собеседование #ИльяХохлов #КурсыПрайм

Стрим с Code Review вашего Python кода


Делаем живой код ревью вашего Python кода, который вы нам присылали ранее. Все присланные проекты за это время посмотреть вероятно не успеем, так что похоже это будет первый тестовый стрим из серии. Кому было полезно — закиньте донат на компуктер для монтажа здесь boosty.to/digitalize.team СПАСИБО!