Индексы | Основы SQL
Ғылым және технология
Лекция по индексам в базах данных. Страница курса - www.asozykin.ru/courses/sql
Поддержать курс можно через сервис Cloudtips - pay.cloudtips.ru/p/45a4055b
Заранее спасибо за помощь!
VK - avsozykin
telegram - t.me/a_sozykin
Мой сайт - www.asozykin.ru
00:00 - Индексы в базах данных
01:55 - Создание индекса
02:32 - Использование индексов
03:55 - Индекс по нескольким столбцам
04:55 - Удаление индекса
05:05 - Недостатки индексов
05:49 - Итоги
Инструкция по созданию демонстрационной базы данных, которая используется в курсе - www.asozykin.ru/posts/demo_da...
Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках - / andreysozykincs
Пікірлер: 119
С первых секунд видео понял, что сделано оно очень корректно и внятно. Автору однозначно респект!
Пожалуйста продолжайте! Очень хочется лекций по SQL для продвинутого уровня.
@AndreySozykin
3 жыл бұрын
Спасибо за приятный отзыв! Какие именно темы продвинутого уровня интересуют?
@mikisor4372
3 жыл бұрын
@@AndreySozykin оконные функции, рекурсивые подзапросы, как писать джобы, процедуры. Углубление в тему индексов.
@AndreySozykin
3 жыл бұрын
Оконные функции, рекурсивные запросы и различные типы индексов, скорее всего, буду делать. Про процедуры пока не уверен, это уже более узкая и специфичная для каждой базы вещь.
@mikisor4372
3 жыл бұрын
@@AndreySozykin отлично!
@user-fv1ht8fj2z
2 жыл бұрын
Поддерживаю!! 👍
Огромное спасибо за вашу деятельность! У вас лучшие лекции по SQL и Сетям!
Подробно, сжато, идеально! Мен, ты проделал очень хорошую работу.
Спасибо за очередное видео. Возможно следовало упомянуть, что индексы занимают не только дополнительное время на запись данных, но и увеличивают размер базы данных, если индексов много. Большое спасибо за лекцию.
@AndreySozykin
3 жыл бұрын
Да, такой недостаток тоже есть.
Большое спасибо за Ваш труд!
Кратко, структурированно, понятно. Спасибо огромное!!!
Качество видео значительно повысилось. Ценность видео тоже. Спасибо вам большое
@AndreySozykin
3 жыл бұрын
Спасибо за отзыв, я действительно постоянно стараюсь что-то улучшить. Качество по сравнению с какими видео повысилось?
@Dragoncheg
2 жыл бұрын
А какие видео были более низкого качества по сравнению с этим?
@manOfPlanetEarth
4 ай бұрын
@@AndreySozykin я и сети-то Ваши посмотрел со смартфона, а уж этот sql будто и вовсе спецом для смартфонов сделан☝🏼👍🏼 Смотрел сидя, лежа, на кухне, на диване - так даже ноут с собой не потаскаешь. Полный восторг.
Отлично. Коротко просто и информативно. Не хватает чуть деталей о том как оно сделано под капотом и засчет чего достигается скорость работы, в одном слайде на минуту другую или хотя бы пару слов, но в остальном - спасибо!
@AndreySozykin
Жыл бұрын
За пару минут такое не расскажешь 😉 Планирую отдельную серию видео о внутреннем устройстве баз данных, в том числе индексов.
Очень качественно и доступно подана информация. Спасибо большое за такой мини-курс. 👍
@AndreySozykin
2 жыл бұрын
Пожалуйста! Рад, что понравилось.
Как физически выглядят индексы? Таблицу показали, показали как будет происходить поиск без индексов, а как будет происходить поиск с использованием индексов не показали
спасибо, все понятно. Без воды
Отличное видео. Быстро и в полной мере понял что такое индексы. Спасибо.
Быстро и только самое важное. Спасибо большое
@AndreySozykin
2 жыл бұрын
Пожалуйста. Рад, что нравиться!
Чувак от души, самое лучшее видео по индексам на всём youtube, успехов тебе
@AndreySozykin
Жыл бұрын
Спасибо!
@manOfPlanetEarth
4 ай бұрын
Он тебе не чувак, чувак. Он Андрей Созыкин.
оч круто, все по теме. Спасибо
@AndreySozykin
2 жыл бұрын
Пожалуйста!
отличная лекция, спасибо вам!!!
Очень полезное видео. Не хватает только примера со уменьшением времени поиска на огромных выборках. А также примера, за счёт чего индекс работает быстрее (строки таблицы выстраиваются в бинарное дерево поиска по индексируемому полю. Делая по нему обход по условию и идя от корня, вы идёте в одну из ветвей, а во вторую даже не заходите, и так да самых листьев дерева. Огромное количество не подходящих под условие строк вы просто не обходите, за счёт этого и повышается производительность),
@AndreySozykin
Жыл бұрын
Спасибо за отзыв. Пример с уменьшением времени поиска еще сделаю. Внутреннее устройство индексов специально решил не включать в курс. Бинарное дерево - это только один из вариантов устройства индексов. Есть еще несколько других, которые эффективны в определенных случаях. Получается отдельная большая тема. Но она будет интересна скорее админам баз данных, а не начинающим разработчикам.
@manOfPlanetEarth
4 ай бұрын
для индексов повсеместно используется b-tree - это не бинарное дерево. это дерево именно под индексы. и дело не в листьях: узлы тоже содержат интервалы значений.
Спасибо за видео. Спрашивали у меня однажды: раз индексы так эффективны, почему мы не создаём их на каждый столбец. А оказалось вот как: изменения в исходной таблицы приводит к необходимости изменять все связанные с ней индексы. И если индексов много - страдает производительность
@AndreySozykin
3 жыл бұрын
Пожалуйста! Да, с индексами дела обстоят именно так!
@manOfPlanetEarth
4 ай бұрын
@@AndreySozykin А вот такой пример: пусть в таблице 6 столбцов, на последние 3 столбца созданы индексы, а мы меняем много значений в первых 3х столбцах. Вопрос: индексы же не будут перестраиваться/обновляться - или будут? Ведь "их" столбцы не меняются.
Андрей, спасибо вам огромное, что сделали такой замечательный курс, смотрится на одном дыхании. Всё очень качественно и понятно!
@AndreySozykin
2 ай бұрын
Спасибо за приятный отзыв!
Большое спасибо за работу
@AndreySozykin
2 жыл бұрын
Пожалуйста!
Большое спасибо за урок!
Отличный урок. Спасибо.
Спасибо за ваш труд
@AndreySozykin
3 ай бұрын
Пожалуйста!
Продвижения каналу, большое вам спасибо
Благодарю! Применяю в работе тестировщика! :)
@AndreySozykin
2 жыл бұрын
Отлично, спасибо!
Офигенно!
тыкание мышкой по тексту конечно прикольно смотреть, но было бы гораздо нагляднее показать на примере каким образом происходит поиск по индексу и сравнение извлечения в индексированной таблице и не проиндексированной. Так же наглядно показать построение индексов. Я смутно представляю себе индексацию и весь текст в видео очень мало мне дал для понимания самого механизма.
Спасибо, вам!😩
@AndreySozykin
Жыл бұрын
Пожалуйста!
к недостаткам надо добавить и то что индексы занимают дисковое пространство это важно в случае если данных в таблице много. а также можно добавть что бывают разные типы индексов
@AndreySozykin
3 жыл бұрын
Спасибо, это важные дополнения. Но они актуальны в первую очередь для администраторов баз данных и тех разработчиков, кто проектирует схемы баз данных. Не для начального уровня, на мой взгляд.
а самое главное почему индексы работают быстрее full table scan не сказал. Индексы формируются в B tree, благодаря чему скорость повышается с линейной до O(log n)
Спасибо!
@AndreySozykin
3 жыл бұрын
Пожалуйста!
Спасибо за видео. Мне показалось, что чтобы лучше осознать пользу в индексах, было бы неплохо иметь один небольшой, но ощутимый пример со временем извлечения запроса, до и после создания индекса в этом уроке. Возможно в качестве минуса, показать как ухудшается это же время после добавления информации. Понятно, что время будет условным, ну как какой-то показатель разницы в результате.
@AndreySozykin
2 жыл бұрын
Да, по индексам планирую подобное видео записать.
Хотелось бы более углубленное видео - кластеризованные и некластеризованные индексы, columnstore index, оптимизация запросов
как раз про баланс было бы очень интересно послушать. про вообще подводные камни использования индексов. про их крушение и т.п. приятные мелочи, которые делают жизнь простого программиста просто невыносимой.
Видео содержит концентрированную инфу по индексам. Никакой воды. То, что искал. Дядь, можно у Вас спросить? sql запрос: WHERE field1 & ' ' & field2 like "АСД*" Ускорит ли его выполнение индекс по (field1 , field2)
СПАСИБО!!!
Здравствуйте! Начиная с какого примерно количества строк в таблице целесообразно применять индексы?
таблица супергероев
Спасибо
супер!
@AndreySozykin
3 жыл бұрын
Спасибо!
Супер!!! Вот мой комментарий!
Отличное видео, с дублированным структурированным текстом что оч удобно, единственное что голос какой-то томный чтоли получился)
@AndreySozykin
3 жыл бұрын
Интересный эффект. Что значит томный голос? Надо энергичнее?
@user-ey1ls6kv7h
3 жыл бұрын
@@AndreySozykin возможно, но это такое, прям придирки, может только мне так кажется) просто продолжайте выкладывать таких хорошие видео)
@manOfPlanetEarth
4 ай бұрын
@@AndreySozykin офигенный голос!! ничего не меняйте!!!! и ритм норм!!!
Изменение в исходной таблице это что? Добавление/удаление/обновление или только обновление?
можно ли сделать урок по типу данных ENUM? КАК работать с этим типом. делать запросы
Отличные уроки, отличное качество. Union и view в вашем исполнении хотелось бы увидеть конечно
@AndreySozykin
2 жыл бұрын
Спасибо за приятный отзыв! Про VIEW лекция будет, про UNION не уверен. Мне кажется, UNION на практике редко используется.
Лучший
@AndreySozykin
Ай бұрын
Спасибо!
Скажите, пожалуйста, это последнее видео в данном курсе по основам SQL? Если нет, то сколько еще лекций планируется?
@AndreySozykin
3 жыл бұрын
Ещё будут лекции про ограничения и представления.
@feanorflame2700
3 жыл бұрын
@@AndreySozykin спасибо)
Я правильно понимаю, что они создаются администратором при создании базы, или можно добавлять их позже самостоятельно перед выполнением какой-либо операции, для которой они могут пригодиться?
А как посмотреть существующие индексы таблицы?
Понял только что индексы ускоряют сортировку и поиск по фильтру. А что это такое, в чем их логика - нихрена не ясно. "'особая структура данных" .. так можно сказать про что угодно.
Из какого плейлиста эти видео? На вашей странице ютуб их не нашел
Парень в фиолетовой рубашке - лучший из всех парней в рубашке
Это последнее видео? Очень надеюсь , что будет видео по оконным функциям и обобщенным табличным выражениям
@AndreySozykin
3 жыл бұрын
Нет, будут ещё. Но оконные функции и CTE - это темы явно не для курса начального уровня. Если интересно, то могу сделать продвинутый курс.
@ivanorlov1925
3 жыл бұрын
@@AndreySozykin , сделайте , пожалуйста, я вас смотрел по компьютерным сетям раньше. Когда увидел курс по sql - обрадовался . Так четко и ясно , а самое главное педагогично, никто не рассказывает. Ни на stepik, ни в KZread. Кстати , почему на stepik не выложите курсы?
@AndreySozykin
3 жыл бұрын
Планирую выложить на openedu.ru
@user-we8if9zu6w
2 жыл бұрын
@@AndreySozykin Спасибо! С нетерпением ждем продвинутый курс)
5:06 - ошибка в последнем предложении.
👍👍👍
Спасибо, было очень полезно, однако на собеседовании спросили "что из себя представляют индексы?"
Комиксы топ !
@AndreySozykin
2 жыл бұрын
Рад, что тема нравится!
@manOfPlanetEarth
4 ай бұрын
@@AndreySozykin Только я не понял: кто создает индексы? Админ БД или любой пользователь субд перед нужным ему запросом?
@estepanov_coder
3 ай бұрын
@@manOfPlanetEarth тот, кто создает базу, таблицы и т.д. В каких-то компаниях это админы, где-то это обычные разработчики. По хорошему все индексы нужно продумать еще на этапе проектирования БД. И создать вместе с таблицами. Но если у вас уже есть база с таблицами, и вы понимаете что можно оптимизировать какой-то запрос, то добавляете нужный индекс. Т.е. индексы не какое-то супер секретное оружие, о котором должен знать только админ. Его вполне может применять и программист
Я искал кластеризованные индексы но ничего не вышло
Благодарю, то есть индексы лучше использовать в таблицах, которые либо редко читаются, либо которые хранят константы.
Блин.. вот емае, подробно показано как построчно выполняется с запрос без индекса.. но почему не показано как работает запрос С ним 🙁
@AndreySozykin
Жыл бұрын
Индексы - сложная тема. Они бывают разных типов, работа которых сильно отличается. Если интересно, могу сделать серию видео про индексы.
нече не понял, если честно. Пошел пересматривать
Это че Дмитрий Комаров уже sql преподает???
@rostova911
7 ай бұрын
Ахахахахаха
ЭС ку эль...
Все супер кроме произношения английских слов
вы что просто с книжки читаете
Отличный урок. Спасибо!
Спасибо!
Спасибо
Спасибо!
@AndreySozykin
2 жыл бұрын
Пожалуйста!