maxxtweek
@maxxtweek
Начинающий бекэнд разработчик

Где лучше учить sql?

Всем привет, являюсь php-программистом, работаю с бд на уровне(select,insert,delete).
Тут столкнулся с оптимизацией бд, и в процессе работы гуглил, хотелось бы подучить эту часть, что посоветуете?
Нашел интерактивные учебники по sql'ю, но задания там по типу "Сделайте выборку с такими то условиями" и т.д. не устраивают, так как это все и так понимаю, хотелось бы тонкости.
Например:
Как нормализировать бд, как структурировать данные, как правильно вешать индексы, где нужны, где нет, какие запросы составлять лучше и т.д.
Хотелось бы какой-нибудь курс или цикл статей по sql'ю.
Заранее благодарю.
  • Вопрос задан
  • 4628 просмотров
Пригласить эксперта
Ответы на вопрос 7
oWart
@oWart
Инженер-конструктор
Я вот потихоньку выполняю упражнения на www.sql-ex.ru, изучая необходимую для решения информацию
Ответ написан
php10
@php10
Разработчик на PHP
Напишите Highload проект, к примеру собирайте какую-нибудь информацию с сайтов.
В процессе написания кода, начнете гуглить точечно про оптимизацию запросов и со временем придет общее понимание.
Ответ написан
Bandicoot
@Bandicoot
Вась-программист
@Legushka
если вы участвуете в проекте где уже БД есть, то не забивайте голову нормализацией (сейчас для ускорения иногда от нее даже уходят в сторону денормализации данных, но это вам пока точно не надо)

1. научитесь отлавливать запросы которые выполняются долго (по общему сумарному времени работы CPU)
для этого научитесь мониторить такие вещи (zabbix, pgbadger, логи)
2. после выявления ресурсоемких запросов смотрите их explain
3. оптимизируейте эти эксплейны в сторону улучшения стоимости запроса (либо в сторону уменьшения потребления shared buffers если проект высоконагруженный и много пользователей)
Ответ написан
@ghaur
Сейчас читаю "High Performance MySQL", третье издание. Там довольно много всякой информации насчет оценки производительности, оптимизации запросов, индексов, работы разных движков MySQL и т.д. Может быть вам тоже эта книга покажется полезной.
Ответ написан
@kiru
Аналитик
Также искал курсы по подобной теме. Годных курсов не нашел.
Книга Кринке теория построения базы данных. Ясно и четко с примерами излагается!
Ответ написан
@bro-dev0
Зачем его учить когда есть гугл, не говоря о том что лучше абстрагироваться.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы