Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Целесообразность создания композитных индексов / 25 сообщений из 31, страница 1 из 2
17.03.2015, 09:14
    #38906625
Interloper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Имеет ли смысл создавать композитные индексы по набору полей, если для каждого поля по отдельности уже есть индекс (например, это внешние ключи)? Если да, то в каких случаях?
...
Рейтинг: 0 / 0
17.03.2015, 09:22
    #38906635
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Interloper,

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

Существенный выигрыш можно получить на таблицах которые обеспечивают связь N:M, особенно если на оба поля наложено ограничение уникальности (при этом индекс естественно становится уникальным)
...
Рейтинг: 0 / 0
17.03.2015, 10:51
    #38906760
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Hello, Interloper!
You wrote on 17 марта 2015 г. 10:50:30:

Interloper> Имеет ли смысл создавать композитные индексы по набору полей, если для
> каждого поля по отдельности уже есть индекс (например, это внешние
> ключи)? Если да, то в каких случаях?
в общем случае смысла не имеет.
в частных случаях, при ОСОЗНАННОМ применении имеет право жить.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.03.2015, 12:02
    #38906861
fd00ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Interloper, композитный индекс, в лучшем случае, может заменить только индекс по первому столбцу. Отдельные индексы по следующим столбцам все равно придется создавать. Так что избыточность индексов невелика получается))
...
Рейтинг: 0 / 0
17.03.2015, 12:14
    #38906883
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Interloperв каких случаях?
Если тщательно изучил http://ibase.ru/devinfo/dataaccesspaths.htm
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.03.2015, 13:29
    #38907034
m7m
m7m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
fd00chInterloper, композитный индекс, в лучшем случае, может заменить только индекс по первому столбцу . Отдельные индексы по следующим столбцам все равно придется создавать. Так что избыточность индексов невелика получается))
И как получаются выводы такие???
...
Рейтинг: 0 / 0
17.03.2015, 13:30
    #38907036
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
fd00chкомпозитный индекс, в лучшем случае, может заменить только индекс по первому столбцу.Земляк, ты бредишь.
...
Рейтинг: 0 / 0
17.03.2015, 14:10
    #38907112
fd00ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Ivan_Pisarevsky, что не так?
...
Рейтинг: 0 / 0
17.03.2015, 14:22
    #38907142
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Hello, Fd00ch!
You wrote on 17 марта 2015 г. 14:18:53:

Fd00chчто не так?всё не так.

индекс по полям (f1, f2, f3, f4)

условие отбора (f1, f2, f3) - индекс используется для всех трёх полей

условие отбора (f1, f2, f4) - индекс используется
только для f1 и f2.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.03.2015, 14:30
    #38907155
fd00ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Мимопроходящий, отбор по f2+f3+f4 или по f3+f4 или по f4- индекс идет лесом
...
Рейтинг: 0 / 0
17.03.2015, 14:34
    #38907161
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Hello, Fd00ch!
You wrote on 17 марта 2015 г. 14:35:03:

Fd00chотбор по f2+f3+f4 или по f3+f4 или по f4- индекс идет
лесоместессссно
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.03.2015, 14:35
    #38907163
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
fd00chотбор по f2+f3+f4 или по f3+f4 или по f4- индекс идет лесом
Мимопроходящийпри ОСОЗНАННОМ применении имеет право жить.
создание композита и не использование в отборе первого сегмента относится скорее к термину "ССЗБ", а не "ОСОЗНАННОМ".
...
Рейтинг: 0 / 0
17.03.2015, 15:03
    #38907199
fd00ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Ivan_Pisarevsky, для развития темы: а есть какие-то среднепотолочные данные, на сколько % композит по 2-3 полям может обгнать отдельные индексы?

зы. я при осознанном осмыслении для себя решил, что бОльшая польза будет от частичных индексов и "партиционировании" таблиц. пичалька, что птичка такому не научится никогда
...
Рейтинг: 0 / 0
17.03.2015, 15:09
    #38907207
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
fd00ch,

с чего это ты взял?

Firebird release strategy and roadmap for 2015/2016 Firebird 4.0 planning

Feature list (cont'd)

External database links, heterogenous queries
Bi-directional index navigation
Batch API operations
Implicit transactions
New data access paths, subquery transformations
Query timeouts
Partial indices
Shared metadata cache

планы конечно предварительные, но когда нибудь будет
...
Рейтинг: 0 / 0
17.03.2015, 15:13
    #38907214
fd00ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Симонов Денис, "через 3 года" и "никогда" - для меня синонимы))
...
Рейтинг: 0 / 0
17.03.2015, 15:21
    #38907220
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
fd00ch> есть какие-то среднепотолочные данные, на сколько
fd00ch> % композит по 2-3 полям может обгнать отдельные индексы?

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

P.S. Сегодня, возможно, не мой день, но лично я никакой связи
между "частичными индексами" и "партиционированием таблиц"
не вижу, совсем никакой.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.03.2015, 15:30
    #38907233
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Мимопроходящийиндекс по полям (f1, f2, f3, f4)
условие отбора (f1, f2, f3) - индекс используется для всех трёх полей
поскольку в композитном индексе ключи второго и далее столбцов сгруппированы относительно предыдущего, полноценно композитный индекс будет использоваться только в случае

where f1 = x and f2 = y and f3 ...

для f3 может быт >, <, =.

Иначе, например, если
where f1 > x and f2 = y and f3 ...

то затраты на такой поиск будут эквивалентны поиску по одиночному индексу по f1.

InterloperИмеет ли смысл создавать композитные индексы по набору полей, если для каждого поля по отдельности уже есть индекс
не имеет. исключение - если ты для ORDER BY F1, F2, F3 хочешь получить в плане использование индекса, а не сортировку, то тогда придется создать индекс по F1+F2+F3. Но выгода выборки в порядке индекса есть только на малых объемах выборок. Большой объем выборки при таком плане приведет к адскому объему ввода-вывода (страниц с диска).
...
Рейтинг: 0 / 0
17.03.2015, 15:45
    #38907260
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
kdvИначе, например, если
where f1 > x and f2 = y and f3 ...

то затраты на такой поиск будут эквивалентны поиску по одиночному индексу по f1.
затраты для композита будут больше
...
Рейтинг: 0 / 0
17.03.2015, 15:55
    #38907278
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
kdv> то затраты на такой поиск будут эквивалентны поиску по одиночному индексу по f1.

Нет, дороже выйдет, в зависимости от веса композита.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.03.2015, 17:24
    #38907398
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
dimitrзатраты для композита будут больше
да, я не то написал. имел в виду, что "процедурно" сервер будет использовать только первый сегмент индекса. А затраты конечно будут выше, т.к. композитный индекс "жирнее".
...
Рейтинг: 0 / 0
18.03.2015, 07:52
    #38907789
Interloper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Если есть выборки вида "where f1 = x and f2 = y", насколько создание композитного индекса по этим полям ускорит выполнение запросов в сравнении с двумя отдельными индексами по столбцам f1 и f2?
...
Рейтинг: 0 / 0
18.03.2015, 08:05
    #38907799
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Interloperнасколько создание композитного индекса по этим полям ускорит выполнение запросов в сравнении с двумя отдельными индексами по столбцам f1 и f2?создать табличку на пару колонок и десяток миллионов записей дело нескольких минут, загнал запрос и проверил.
...
Рейтинг: 0 / 0
18.03.2015, 12:11
    #38908132
Interloper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Ivan_Pisarevsky,

Меня интересует мнение сообщества. Я предполагаю, что заметного выигрыша не будет.
...
Рейтинг: 0 / 0
18.03.2015, 12:15
    #38908140
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
InterloperМеня интересует мнение сообщества.
Мнение сообщества не имеет значения в свете информации, приведённой по данной мною выше
ссылке. Движку на это мнение глубоко наплевать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.03.2015, 12:36
    #38908189
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Целесообразность создания композитных индексов
Interloper,

Выигрыш будет только если будут задействованы все сегменты индекса, иначе индекс по отдельному полю выиграет.
Какой будет выигрыш хз. Мерить надо, может быть 10-20%, а может и не быть. Мало это или много решать разработчику.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Целесообразность создания композитных индексов / 25 сообщений из 31, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]