Индексы | Основы SQL

Sdílet
Vložit
  • čas přidán 27. 07. 2024
  • Лекция по индексам в базах данных. Страница курса - 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
  • Věda a technologie

Komentáře • 123

  • @user-lk6dw4fd2b
    @user-lk6dw4fd2b Před 2 lety +46

    С первых секунд видео понял, что сделано оно очень корректно и внятно. Автору однозначно респект!

  • @mikisor4372
    @mikisor4372 Před 3 lety +66

    Пожалуйста продолжайте! Очень хочется лекций по SQL для продвинутого уровня.

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +7

      Спасибо за приятный отзыв! Какие именно темы продвинутого уровня интересуют?

    • @mikisor4372
      @mikisor4372 Před 3 lety +14

      @@AndreySozykin оконные функции, рекурсивые подзапросы, как писать джобы, процедуры. Углубление в тему индексов.

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +29

      Оконные функции, рекурсивные запросы и различные типы индексов, скорее всего, буду делать. Про процедуры пока не уверен, это уже более узкая и специфичная для каждой базы вещь.

    • @mikisor4372
      @mikisor4372 Před 3 lety +2

      @@AndreySozykin отлично!

    • @user-fv1ht8fj2z
      @user-fv1ht8fj2z Před 2 lety +1

      Поддерживаю!! 👍

  • @oskardomnin3123
    @oskardomnin3123 Před 3 lety +29

    Спасибо за очередное видео. Возможно следовало упомянуть, что индексы занимают не только дополнительное время на запись данных, но и увеличивают размер базы данных, если индексов много. Большое спасибо за лекцию.

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +4

      Да, такой недостаток тоже есть.

  • @mikhailfedorov4034
    @mikhailfedorov4034 Před rokem +6

    Огромное спасибо за вашу деятельность! У вас лучшие лекции по SQL и Сетям!

  • @alexeyarioni8149
    @alexeyarioni8149 Před 2 lety +4

    Подробно, сжато, идеально! Мен, ты проделал очень хорошую работу.

  • @Evangalie
    @Evangalie Před 3 lety +13

    Качество видео значительно повысилось. Ценность видео тоже. Спасибо вам большое

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +2

      Спасибо за отзыв, я действительно постоянно стараюсь что-то улучшить. Качество по сравнению с какими видео повысилось?

    • @Dragoncheg
      @Dragoncheg Před 3 lety +1

      А какие видео были более низкого качества по сравнению с этим?

    • @manOfPlanetEarth
      @manOfPlanetEarth Před 6 měsíci

      @@AndreySozykin
      я и сети-то Ваши посмотрел со смартфона, а уж этот sql будто и вовсе спецом для смартфонов сделан☝🏼👍🏼 Смотрел сидя, лежа, на кухне, на диване - так даже ноут с собой не потаскаешь. Полный восторг.

  • @user-gq2vi4yw3j
    @user-gq2vi4yw3j Před 5 měsíci +1

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

    • @AndreySozykin
      @AndreySozykin  Před 5 měsíci

      Спасибо за приятный отзыв!

  • @1988alexsh
    @1988alexsh Před rokem +1

    Кратко, структурированно, понятно.
    Спасибо огромное!!!

  • @Phoenix-dx8oo
    @Phoenix-dx8oo Před 2 lety +1

    Большое спасибо за Ваш труд!

  • @dinbesson
    @dinbesson Před 5 dny

    Превосходно !!!! Продолжайте пожалуйста !!!!

  • @user-wq9gc4rj3w
    @user-wq9gc4rj3w Před rokem

    Отличное видео. Быстро и в полной мере понял что такое индексы. Спасибо.

  • @volselongames4505
    @volselongames4505 Před 2 lety +4

    Чувак от души, самое лучшее видео по индексам на всём youtube, успехов тебе

  • @user-pw4dv7hf6b
    @user-pw4dv7hf6b Před 3 lety +4

    Очень качественно и доступно подана информация. Спасибо большое за такой мини-курс. 👍

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +1

      Пожалуйста! Рад, что понравилось.

  • @rutexgreat3619
    @rutexgreat3619 Před rokem +6

    Отлично. Коротко просто и информативно.
    Не хватает чуть деталей о том как оно сделано под капотом и засчет чего достигается скорость работы, в одном слайде на минуту другую или хотя бы пару слов, но в остальном - спасибо!

    • @AndreySozykin
      @AndreySozykin  Před rokem +4

      За пару минут такое не расскажешь 😉
      Планирую отдельную серию видео о внутреннем устройстве баз данных, в том числе индексов.

    • @Funny.shorts2023
      @Funny.shorts2023 Před 25 dny

      @@AndreySozykin когда?))

  • @MRoose
    @MRoose Před 2 lety +1

    Быстро и только самое важное. Спасибо большое

    • @AndreySozykin
      @AndreySozykin  Před 2 lety

      Пожалуйста. Рад, что нравиться!

  • @Devivl
    @Devivl Před měsícem

    Отличная лекция. Спасибо, Андрей.

  • @resident77777
    @resident77777 Před 5 dny

    Дякую за корисний контент :))))

  • @vitaliypunko1331
    @vitaliypunko1331 Před 3 lety +8

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

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +5

      Пожалуйста! Да, с индексами дела обстоят именно так!

    • @manOfPlanetEarth
      @manOfPlanetEarth Před 6 měsíci

      @@AndreySozykin
      А вот такой пример: пусть в таблице 6 столбцов, на последние 3 столбца созданы индексы, а мы меняем много значений в первых 3х столбцах. Вопрос: индексы же не будут перестраиваться/обновляться - или будут? Ведь "их" столбцы не меняются.

  • @user-xp7hb8jh8j
    @user-xp7hb8jh8j Před 3 lety +4

    оч круто, все по теме. Спасибо

  • @alexk6125
    @alexk6125 Před rokem

    Отличный урок. Спасибо!

  • @VideoMaker1
    @VideoMaker1 Před 2 lety

    спасибо, все понятно. Без воды

  • @halcyon-s
    @halcyon-s Před rokem

    Большое спасибо за урок!

  • @dobivan
    @dobivan Před 2 lety +4

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

    • @AndreySozykin
      @AndreySozykin  Před 2 lety +2

      Спасибо за отзыв.
      Пример с уменьшением времени поиска еще сделаю.
      Внутреннее устройство индексов специально решил не включать в курс. Бинарное дерево - это только один из вариантов устройства индексов. Есть еще несколько других, которые эффективны в определенных случаях. Получается отдельная большая тема. Но она будет интересна скорее админам баз данных, а не начинающим разработчикам.

    • @manOfPlanetEarth
      @manOfPlanetEarth Před 6 měsíci +1

      для индексов повсеместно используется b-tree - это не бинарное дерево. это дерево именно под индексы. и дело не в листьях: узлы тоже содержат интервалы значений.

  • @user-en2mg3wx8l
    @user-en2mg3wx8l Před 2 lety +1

    Большое спасибо за работу

  • @DenisAntropov
    @DenisAntropov Před rokem

    отличная лекция, спасибо вам!!!

  • @Damir-nl6tf
    @Damir-nl6tf Před 5 měsíci +1

    Спасибо за ваш труд

  • @A1_TR_812
    @A1_TR_812 Před rokem

    Продвижения каналу, большое вам спасибо

  • @user-qw9uo4wo5p
    @user-qw9uo4wo5p Před 2 lety +2

    Благодарю! Применяю в работе тестировщика! :)

  • @kelevra1493
    @kelevra1493 Před 2 lety

    Офигенно!

  • @sense3247
    @sense3247 Před 2 lety +8

    Как физически выглядят индексы? Таблицу показали, показали как будет происходить поиск без индексов, а как будет происходить поиск с использованием индексов не показали

  • @Genusor
    @Genusor Před 2 lety +7

    Спасибо за видео. Мне показалось, что чтобы лучше осознать пользу в индексах, было бы неплохо иметь один небольшой, но ощутимый пример со временем извлечения запроса, до и после создания индекса в этом уроке. Возможно в качестве минуса, показать как ухудшается это же время после добавления информации. Понятно, что время будет условным, ну как какой-то показатель разницы в результате.

    • @AndreySozykin
      @AndreySozykin  Před 2 lety +3

      Да, по индексам планирую подобное видео записать.

  • @ffonlfoff5005
    @ffonlfoff5005 Před 2 lety +3

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

  • @Ivan-vb7ch
    @Ivan-vb7ch Před 2 lety +1

    таблица супергероев

  • @user-zn6vv2oo7i
    @user-zn6vv2oo7i Před rokem +1

    Спасибо, вам!😩

  • @anele4492
    @anele4492 Před 2 lety

    СПАСИБО!!!

  • @old891
    @old891 Před 3 lety +4

    к недостаткам надо добавить и то что индексы занимают дисковое пространство это важно в случае если данных в таблице много. а также можно добавть что бывают разные типы индексов

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +3

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

  • @user-ku4qv8sz5b
    @user-ku4qv8sz5b Před rokem +5

    Понял только что индексы ускоряют сортировку и поиск по фильтру. А что это такое, в чем их логика - нихрена не ясно. "'особая структура данных" .. так можно сказать про что угодно.

  • @user-jp6gv7gm8t
    @user-jp6gv7gm8t Před 3 lety +2

    Спасибо!

  • @worlzpnz
    @worlzpnz Před 3 lety

    Супер!!! Вот мой комментарий!

  • @SHKIPPER989
    @SHKIPPER989 Před 3 lety +2

    супер!

  • @user-ur6wk7bi8d
    @user-ur6wk7bi8d Před rokem

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

  • @BraentR
    @BraentR Před rokem

    Спасибо

  • @Misster_Lis
    @Misster_Lis Před 10 měsíci +1

    а самое главное почему индексы работают быстрее full table scan не сказал. Индексы формируются в B tree, благодаря чему скорость повышается с линейной до O(log n)

  • @ukratitelkisok9726
    @ukratitelkisok9726 Před 4 měsíci +1

    Лучший

  • @cheremushk
    @cheremushk Před 2 lety

    Видео содержит концентрированную инфу по индексам. Никакой воды. То, что искал.
    Дядь, можно у Вас спросить?
    sql запрос: WHERE field1 & ' ' & field2 like "АСД*"
    Ускорит ли его выполнение индекс по (field1 , field2)

  • @user-ey1ls6kv7h
    @user-ey1ls6kv7h Před 3 lety +2

    Отличное видео, с дублированным структурированным текстом что оч удобно, единственное что голос какой-то томный чтоли получился)

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +1

      Интересный эффект. Что значит томный голос? Надо энергичнее?

    • @user-ey1ls6kv7h
      @user-ey1ls6kv7h Před 3 lety +1

      @@AndreySozykin возможно, но это такое, прям придирки, может только мне так кажется) просто продолжайте выкладывать таких хорошие видео)

    • @manOfPlanetEarth
      @manOfPlanetEarth Před 6 měsíci

      @@AndreySozykin
      офигенный голос!! ничего не меняйте!!!! и ритм норм!!!

  • @lexbekker
    @lexbekker Před rokem

    Парень в фиолетовой рубашке - лучший из всех парней в рубашке

  • @MrStealth232
    @MrStealth232 Před 3 lety +3

    Отличные уроки, отличное качество. Union и view в вашем исполнении хотелось бы увидеть конечно

    • @AndreySozykin
      @AndreySozykin  Před 3 lety

      Спасибо за приятный отзыв! Про VIEW лекция будет, про UNION не уверен. Мне кажется, UNION на практике редко используется.

  • @ramos6501
    @ramos6501 Před 11 měsíci +1

    Хотелось бы более углубленное видео - кластеризованные и некластеризованные индексы, columnstore index, оптимизация запросов

  • @user-sw1xi9rp8q
    @user-sw1xi9rp8q Před rokem +1

    Здравствуйте! Начиная с какого примерно количества строк в таблице целесообразно применять индексы?

  • @sashasasha9491
    @sashasasha9491 Před 2 lety

    👍👍👍

  • @dimass67
    @dimass67 Před rokem +1

    Изменение в исходной таблице это что? Добавление/удаление/обновление или только обновление?

  • @user-lh6xe3zi1t
    @user-lh6xe3zi1t Před 9 měsíci

    Из какого плейлиста эти видео? На вашей странице ютуб их не нашел

  • @0rionica
    @0rionica Před 9 měsíci

    Я правильно понимаю, что они создаются администратором при создании базы, или можно добавлять их позже самостоятельно перед выполнением какой-либо операции, для которой они могут пригодиться?

  • @feanorflame2700
    @feanorflame2700 Před 3 lety +2

    Скажите, пожалуйста, это последнее видео в данном курсе по основам SQL? Если нет, то сколько еще лекций планируется?

    • @AndreySozykin
      @AndreySozykin  Před 3 lety

      Ещё будут лекции про ограничения и представления.

    • @feanorflame2700
      @feanorflame2700 Před 3 lety

      @@AndreySozykin спасибо)

  • @mlbb-maniac
    @mlbb-maniac Před 2 lety +1

    Спасибо, было очень полезно, однако на собеседовании спросили "что из себя представляют индексы?"

  • @vladimirpsy8755
    @vladimirpsy8755 Před 2 lety

    можно ли сделать урок по типу данных ENUM? КАК работать с этим типом. делать запросы

  • @Vays115
    @Vays115 Před rokem

    А как посмотреть существующие индексы таблицы?

  • @ivanorlov1925
    @ivanorlov1925 Před 3 lety +2

    Это последнее видео? Очень надеюсь , что будет видео по оконным функциям и обобщенным табличным выражениям

    • @AndreySozykin
      @AndreySozykin  Před 3 lety +6

      Нет, будут ещё. Но оконные функции и CTE - это темы явно не для курса начального уровня. Если интересно, то могу сделать продвинутый курс.

    • @ivanorlov1925
      @ivanorlov1925 Před 3 lety +5

      @@AndreySozykin , сделайте , пожалуйста, я вас смотрел по компьютерным сетям раньше. Когда увидел курс по sql - обрадовался . Так четко и ясно , а самое главное педагогично, никто не рассказывает. Ни на stepik, ни в CZcams. Кстати , почему на stepik не выложите курсы?

    • @AndreySozykin
      @AndreySozykin  Před 3 lety

      Планирую выложить на openedu.ru

    • @user-we8if9zu6w
      @user-we8if9zu6w Před 3 lety

      @@AndreySozykin Спасибо! С нетерпением ждем продвинутый курс)

  • @DalerDjalolov
    @DalerDjalolov Před 3 lety +1

    Комиксы топ !

    • @AndreySozykin
      @AndreySozykin  Před 3 lety

      Рад, что тема нравится!

    • @manOfPlanetEarth
      @manOfPlanetEarth Před 6 měsíci

      @@AndreySozykin
      Только я не понял: кто создает индексы? Админ БД или любой пользователь субд перед нужным ему запросом?

    • @estepanov_coder
      @estepanov_coder Před 6 měsíci

      @@manOfPlanetEarth тот, кто создает базу, таблицы и т.д. В каких-то компаниях это админы, где-то это обычные разработчики. По хорошему все индексы нужно продумать еще на этапе проектирования БД. И создать вместе с таблицами. Но если у вас уже есть база с таблицами, и вы понимаете что можно оптимизировать какой-то запрос, то добавляете нужный индекс. Т.е. индексы не какое-то супер секретное оружие, о котором должен знать только админ. Его вполне может применять и программист

  • @sengokusky1515
    @sengokusky1515 Před 2 lety +1

    5:06 - ошибка в последнем предложении.

  • @user-ln6yc3rq1f
    @user-ln6yc3rq1f Před 2 lety +1

    Блин.. вот емае, подробно показано как построчно выполняется с запрос без индекса.. но почему не показано как работает запрос С ним 🙁

    • @AndreySozykin
      @AndreySozykin  Před 2 lety +2

      Индексы - сложная тема. Они бывают разных типов, работа которых сильно отличается. Если интересно, могу сделать серию видео про индексы.

  • @user-sw5pg2mn4z
    @user-sw5pg2mn4z Před 6 měsíci

    Я искал кластеризованные индексы но ничего не вышло

  • @unicoxr5tj417
    @unicoxr5tj417 Před rokem +2

    нече не понял, если честно. Пошел пересматривать

  • @sergeiivanov7651
    @sergeiivanov7651 Před rokem +1

    Все супер кроме произношения английских слов

  • @user-yr2gx4wj7s
    @user-yr2gx4wj7s Před 2 lety +1

    Это че Дмитрий Комаров уже sql преподает???

  • @Deadly_Darkness
    @Deadly_Darkness Před rokem

    Благодарю, то есть индексы лучше использовать в таблицах, которые либо редко читаются, либо которые хранят константы.

  • @user-bo2gp3pi4k
    @user-bo2gp3pi4k Před 2 lety

    ЭС ку эль...

  • @user-nu3ot7td1j
    @user-nu3ot7td1j Před 7 měsíci

    вы что просто с книжки читаете

  • @AlexeyBaraguzin
    @AlexeyBaraguzin Před 11 měsíci

    Отличный урок. Спасибо.

  • @SemenAlexndrovich
    @SemenAlexndrovich Před 2 lety

    Спасибо!

  • @raff_m_d6971
    @raff_m_d6971 Před 2 lety

    Спасибо

  • @WhiteBear141981
    @WhiteBear141981 Před 3 lety +1

    Спасибо!