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

Поделиться
HTML-код
  • Опубликовано: 2 дек 2024

Комментарии • 126

  • @ҚазыбекҚойшығара
    @ҚазыбекҚойшығара 2 года назад +49

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

  • @mikhailfedorov4034
    @mikhailfedorov4034 2 года назад +7

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

  • @oskardomnin3123
    @oskardomnin3123 3 года назад +30

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +4

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

  • @mikisor4372
    @mikisor4372 3 года назад +68

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +8

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

    • @mikisor4372
      @mikisor4372 3 года назад +15

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +30

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

    • @mikisor4372
      @mikisor4372 3 года назад +2

      @@AndreySozykin отлично!

    • @АлександраМм
      @АлександраМм 3 года назад +1

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

  • @1988alexsh
    @1988alexsh Год назад +2

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

  • @АйдамирКаразиев
    @АйдамирКаразиев 9 месяцев назад +1

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

    • @AndreySozykin
      @AndreySozykin  9 месяцев назад

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

  • @Evangalie
    @Evangalie 3 года назад +13

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +2

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

    • @Dragoncheg
      @Dragoncheg 3 года назад +1

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

    • @manOfPlanetEarth
      @manOfPlanetEarth 11 месяцев назад

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

  • @vitaliypunko1331
    @vitaliypunko1331 3 года назад +10

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +5

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

    • @manOfPlanetEarth
      @manOfPlanetEarth 11 месяцев назад

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

  • @volselongames4505
    @volselongames4505 2 года назад +4

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

    • @AndreySozykin
      @AndreySozykin  2 года назад

      Спасибо!

    • @manOfPlanetEarth
      @manOfPlanetEarth 11 месяцев назад

      Он тебе не чувак, чувак. Он Андрей Созыкин.

  • @rutexgreat3619
    @rutexgreat3619 Год назад +6

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

    • @AndreySozykin
      @AndreySozykin  Год назад +4

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

    • @baga_trade
      @baga_trade 5 месяцев назад

      @@AndreySozykin когда?))

  • @resident77777
    @resident77777 4 месяца назад +1

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

  • @alexeyarioni8149
    @alexeyarioni8149 3 года назад +4

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

  • @dobivan
    @dobivan 2 года назад +4

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

    • @AndreySozykin
      @AndreySozykin  2 года назад +2

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

    • @manOfPlanetEarth
      @manOfPlanetEarth 11 месяцев назад +1

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

  • @sense3247
    @sense3247 2 года назад +12

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

  • @MRoose
    @MRoose 2 года назад +1

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

    • @AndreySozykin
      @AndreySozykin  2 года назад

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

  • @Devivl
    @Devivl 5 месяцев назад

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

  • @штандартенфюрерШтирлиц-х1п

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

  • @ChallengeItDaily
    @ChallengeItDaily 3 года назад +4

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +1

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

  • @ИгорьМешалкин-ж7ф
    @ИгорьМешалкин-ж7ф 2 года назад

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

  • @dinbesson
    @dinbesson 4 месяца назад

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

  • @Логовотестировщика
    @Логовотестировщика 2 года назад +2

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

  • @A1_TR_812
    @A1_TR_812 Год назад

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

  • @Туча-х7ш
    @Туча-х7ш 3 года назад +4

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

  • @ffonlfoff5005
    @ffonlfoff5005 2 года назад +3

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

  • @Genusor
    @Genusor 3 года назад +7

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +3

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

  • @Phoenix-dx8oo
    @Phoenix-dx8oo 3 года назад +1

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

  • @old891
    @old891 3 года назад +4

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +3

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

  • @Damir-nl6tf
    @Damir-nl6tf 10 месяцев назад +1

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

  • @alexk6125
    @alexk6125 Год назад

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

  • @ПавелВладимировичАнохин

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

  • @Ivan-vb7ch
    @Ivan-vb7ch 3 года назад +1

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

  • @halcyon-s
    @halcyon-s Год назад

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

  • @Misster_Lis
    @Misster_Lis Год назад +1

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

  • @VideoMaker1
    @VideoMaker1 3 года назад

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

  • @lexbekker
    @lexbekker Год назад

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

  • @ЮлияИванова-с5ч
    @ЮлияИванова-с5ч Год назад +1

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

  • @АлексейЛысюк-ь4я
    @АлексейЛысюк-ь4я 2 года назад

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

  • @DenisAntropov
    @DenisAntropov 2 года назад

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

  • @КатеринаПерминова-р6ж

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

  • @cheremushk
    @cheremushk 3 года назад

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

  • @ramos6501
    @ramos6501 Год назад +1

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

  • @dimass67
    @dimass67 Год назад +1

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

  • @sengokusky1515
    @sengokusky1515 3 года назад +1

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

  • @ИлларионИванов-л1е

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

  • @Vays115
    @Vays115 Год назад

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

  • @kelevra1493
    @kelevra1493 3 года назад

    Офигенно!

  • @worlzpnz
    @worlzpnz 3 года назад

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

  • @0rionica
    @0rionica Год назад

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

  • @ukratitelkisok9726
    @ukratitelkisok9726 8 месяцев назад +1

    Лучший

  • @MrStealth232
    @MrStealth232 3 года назад +3

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

    • @AndreySozykin
      @AndreySozykin  3 года назад

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

  • @vladimirpsy8755
    @vladimirpsy8755 2 года назад

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

  • @ПавелМорозов-я4т
    @ПавелМорозов-я4т 3 года назад +2

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +1

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

    • @ПавелМорозов-я4т
      @ПавелМорозов-я4т 3 года назад +1

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

    • @manOfPlanetEarth
      @manOfPlanetEarth 11 месяцев назад

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

  • @SHKIPPER989
    @SHKIPPER989 3 года назад +2

    супер!

  • @ntvisigoth
    @ntvisigoth 3 месяца назад

    еще следует отметить, что если индекс split-нулся, то вакуум уже не сможет соптимизировать индекс обратно, как это происходит с обычными строками.
    Я вот про какой момент, если смотреть на посгрю, то индекс это ничто иное как еще одно отношение, только спец.назначение. Так вот если в файл индекса нет возможности вставить новое значение, то этот файл разбивается, то есть происходит split индекса. Обратно уже СУБД не может вернуть и поэтому индекс так и будет разбит на 2 файла! Подробнее можно прочесть в книге Егорова

  • @ВладимирПанов-з5н
    @ВладимирПанов-з5н 3 года назад +2

    Спасибо!

  • @anele4492
    @anele4492 2 года назад

    СПАСИБО!!!

  • @feanorflame2700
    @feanorflame2700 3 года назад +2

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

    • @AndreySozykin
      @AndreySozykin  3 года назад

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

    • @feanorflame2700
      @feanorflame2700 3 года назад

      @@AndreySozykin спасибо)

  • @ivanorlov1925
    @ivanorlov1925 3 года назад +2

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

    • @AndreySozykin
      @AndreySozykin  3 года назад +6

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

    • @ivanorlov1925
      @ivanorlov1925 3 года назад +5

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

    • @AndreySozykin
      @AndreySozykin  3 года назад

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

    • @ПавелИгнатьев-е3я
      @ПавелИгнатьев-е3я 3 года назад

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

  • @raff_m_d6971
    @raff_m_d6971 3 года назад

    Спасибо

  • @mlbb-maniac
    @mlbb-maniac 2 года назад +1

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

  • @thegshow2296
    @thegshow2296 2 месяца назад

    Привет, Андрей

  • @ИгорьАбрамов-у8н
    @ИгорьАбрамов-у8н 10 месяцев назад

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

  • @DalerDjalolov
    @DalerDjalolov 3 года назад +1

    Комиксы топ !

    • @AndreySozykin
      @AndreySozykin  3 года назад

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

    • @manOfPlanetEarth
      @manOfPlanetEarth 11 месяцев назад

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

    • @estepanov_coder
      @estepanov_coder 10 месяцев назад

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

  • @sergeiivanov7651
    @sergeiivanov7651 2 года назад +1

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

  • @unicoxr5tj417
    @unicoxr5tj417 2 года назад +2

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

  • @sashasasha9491
    @sashasasha9491 3 года назад

    👍👍👍

  • @АнастасияЧ-ъ8я
    @АнастасияЧ-ъ8я 2 года назад +1

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

    • @AndreySozykin
      @AndreySozykin  2 года назад +2

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

  • @ДмитрийГончаров-ф5х
    @ДмитрийГончаров-ф5х 2 года назад +1

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

  • @Deadly_Darkness
    @Deadly_Darkness 2 года назад

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

  • @ИннаЛиксакова-о4н

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

  • @ДмитрийДмитриев-м1ф

    ЭС ку эль...

  • @AlexeyBaraguzin
    @AlexeyBaraguzin Год назад

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

  • @BraentR
    @BraentR Год назад

    Спасибо

  • @WhiteBear141981
    @WhiteBear141981 3 года назад +1

    Спасибо!