Индексация в Базах Данных

Поділитися
Вставка
  • Опубліковано 29 лис 2024

КОМЕНТАРІ • 45

  • @gpankov
    @gpankov Рік тому

    Я не встречал объяснений лучше этого! Этот автор - талантище объяснять!

  • @Molot502
    @Molot502 6 років тому +45

    Володя, не оставляйте дело, вы даете очень правильную информацию в неокрепшие умы.

  • @andyanderson222
    @andyanderson222 3 роки тому +1

    Супер! Отличная подача материала.

  • @Boiko777
    @Boiko777 3 роки тому +10

    Спасибо за видео! Мне кажется Вам стоит создать отдельный плейлист по SQL.

  • @lanalarsen1935
    @lanalarsen1935 4 роки тому +7

    Оставили бы ссылки на видео про hashmap и bitmap

  • @crashoverride9681
    @crashoverride9681 4 роки тому

    Спасибо Володя!

  • @Molot502
    @Molot502 6 років тому +23

    Что такое кластерный/некластерный индекс ?

    • @gpankov
      @gpankov Рік тому

      думаю что кластерный это всегда тот индекс который лежит внутри самой таблицы и привязывается к primary key

    • @JohnWick-jp5vw
      @JohnWick-jp5vw 5 місяців тому

      Кластеризованный и нет. Кластеризованный меняет физическое расположение записей в таблице на диске

  • @АндрейОт
    @АндрейОт 2 роки тому +1

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

  • @paulkarkarin466
    @paulkarkarin466 Рік тому

    Аминь.

  • @zhennik263
    @zhennik263 4 роки тому +5

    Только вы не рассказали зачем нужен индекс и как его использовать

    • @oilondabeats9011
      @oilondabeats9011 Рік тому

      ну дорогой, думаю за 2 года ты уже узанл что к чему :)

    • @zhennik263
      @zhennik263 Рік тому +1

      @@oilondabeats9011 да, за 2 года я узнал:)

  • @AnySoftUser
    @AnySoftUser 9 років тому +8

    Разница между innodb и myisam... Интересная тема для начинающих изучать бд.. имхо

  • @alexalex4601
    @alexalex4601 4 роки тому +17

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

  • @AlexandrRiurik
    @AlexandrRiurik 4 роки тому +1

    Владимир, скажите пожалуйста, стоит ли перекладывать функции вычисления на движок БД или вычисления лучше производить скриптовыми языками (например php)? К примеру нужно выбрать разницу между ценами которые записаны в двух полях. Так что лучше, построить запрос таким образом: t1.f1 - t1.f2 или выбрать поля и средствами php уже произвести вычисления? В общем, есть ли существенная разница где производить вычисления, средствами движка БД или средствами php?

    • @gohardgomykhailovarenytsia9006
      @gohardgomykhailovarenytsia9006 3 роки тому +6

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

  • @skipper3355
    @skipper3355 5 років тому

    Без воды, конкретно и понятно

  • @paxvostrum4824
    @paxvostrum4824 2 роки тому

    В начале сказано что создается отдельная таблица, а где она, как её посмотреть?

  • @TIENTI0000
    @TIENTI0000 2 роки тому

    видео супер

  • @aleksandrcesko6112
    @aleksandrcesko6112 8 років тому

    Спасибо за проделанную работу!

  • @canniballissimo
    @canniballissimo 3 роки тому

    даже не думал, что оно так

  • @bepserk
    @bepserk 8 років тому +8

    ссылки на структуры данных выкладывай в описании, будет удобно

  • @dmitry6687
    @dmitry6687 3 роки тому

    Oчень очень годное видео

  • @oleksiimarchenko3470
    @oleksiimarchenko3470 8 років тому +2

    Володя, я не понял, должен признать. Я использую в запросе внешний ключ нужной таблицы и нахожу нужную мне строку без создания специально каких-то индексов, которые могут формировать соизмеримую по размерам с основной таблицу. ЗАЧЕМ ИНДЕКСИРОВАТЬ? Это структурирование данных по определенному (одному из приведенных 4-х) алгоритму для того, чтобы по столбцу поиск производился быстрее?

    • @curculio
      @curculio 7 років тому +1

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

    • @vladyslavkhymenko6598
      @vladyslavkhymenko6598 7 років тому +1

      не знаю, актуально ли еще, но, если совсем грубо, то если Вы "используете в запросе внешний ключ нужной таблицы", то поиск производится построчно (видим в консоли "affected rows"), если же выборка производится с помощью индекса, то БД сразу понимает, в какой строке нужно искать нужное значение и не тратит ресурсы на перебор этих строк. (что, если строк у Вас в БД 100500+?)

    • @victorklimov5254
      @victorklimov5254 7 років тому +2

      Согласен с Владом и Knave Spammer. Только хотел бы уточнить. Оба использовали выражение "сразу же находит" в противоположность к последовательному поиску. Последовательный поиск производится за линейное время. "Сразу же" - это константное время. Алгоритмы, которые показал Володя не факт, что работают за константное время. Поэтому точнее было бы сказать "Индексирование позволяет находить быстрее, чем последовательным перебором"

    • @meosaganami5472
      @meosaganami5472 4 роки тому

      @@victorklimov5254 время index seek можете считать константным и незначительным

    • @gohardgomykhailovarenytsia9006
      @gohardgomykhailovarenytsia9006 3 роки тому

      если вы используете внешний ключ для ссылки на главную таблицу - это значит, что у главной таблицы есть ПЕРВИЧНЫЙ КЛЮЧ. А когда вы для какой-либо таблицы создаете ПЕРВИЧНЫЙ КЛЮЧ - он автоматически создает под капотом индекс. Так что считайте, что в вашем примере поиск идет по индексу.

  • @user_tkhlkcf56j9kpjgf
    @user_tkhlkcf56j9kpjgf 2 роки тому

    Одно слово - почти!

  • @mirlaniusUMK
    @mirlaniusUMK 5 років тому +1

    четко! небесный лайк!

  • @AndriiNikolaiev
    @AndriiNikolaiev 3 роки тому

    Правильно ли используется термин коллизия? В сетях коллизия это когда 2 процесса пытаются захватить 1 ресурс. А здесь кто кому мешает?

    • @mamarazzo2218
      @mamarazzo2218 3 роки тому +1

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

  • @СтаниславСоловьев-т2щ

    Классно, спасибо)

  • @ДаниилМонахов-р8ч
    @ДаниилМонахов-р8ч 4 роки тому +17

    Плохое негодное объяснение.

  • @relaxnature6649
    @relaxnature6649 5 років тому

    Молодец

  • @sh678-h3f
    @sh678-h3f 5 років тому

    спасибо)

  • @vahagnpoghosyan1499
    @vahagnpoghosyan1499 6 років тому

    Здесь MAP == отображение

  • @IvanIsVladimira
    @IvanIsVladimira 2 роки тому +1

    Зрелище не для слабых умов

  • @torrentinocom
    @torrentinocom 4 роки тому +1

    абсолютно непонятно

  • @ruslan7503
    @ruslan7503 5 років тому +2

    Батюшка?

  • @alexvega2881
    @alexvega2881 3 роки тому +4

    Максимально непонятно объяснил. Дизлайк.

  • @stariyvoyaka6308
    @stariyvoyaka6308 3 роки тому

    Не понятно