172 похожих чатов

Всем привет! Подскажите плз где посмотреть. Я использую команду explain для

того, чтобы посмотреть план и оценку затрат запроса update.
В изменяемой таблице есть множество индексов (22 штуки), как увидеть сколько было потрачено на изменения индексов?
План вот такой:
Update on student_tasks (cost=0.56..1839.49 rows=990 width=182) (actual time=110.597..110.597 rows=0 loops=1)
-> Index Scan using pk_student_task on student_tasks (cost=0.56..1839.49 rows=990 width=182) (actual time=0.010..0.622 rows=1000 loops=1)
Index Cond: (student_task_id <= 1045)
Planning Time: 0.135 ms
Execution Time: 110.651 ms

Если в общем, я хочу увидеть насколько эффективен будет update, если я удалю неиспользуемые индексы.

7 ответов

18 просмотров

Не сам вопрос не отвечу, но задам свой: а зачем вообще этот тест если у вас уже есть неиспользуемые индексы и вы об этом знаете ? Просто удалите и всё) хуже то точно не будет

Ринат-Сафаров Автор вопроса
Александр Костюченко
Не сам вопрос не отвечу, но задам свой: а зачем во...

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

Ринат Сафаров
Просто удалить их не получается по организационным...

Сам факт их перестраивания при апдейте - вполне себе аргумент...но у вас видимо прям числа хотят))

Ринат-Сафаров Автор вопроса
Александр Костюченко
Сам факт их перестраивания при апдейте - вполне се...

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

Скопировать базу (лучшэ файлово), и сравнить на дев-среде -- перед удалением индэксов и после.

в отчёте pg_profile есть прям секция с неиспользуемыми индексами :) Наверно и в мониторингах бывает.

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта