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

Ладно шутки в сторону ))) > Можно ли запретить HOT-update на

определённой таблице?

а вам зачем?

14 ответов

10 просмотров

Есть мелкая горячая табличка с каунтерами и если сбоку пустить длинную транзакцию - таблица пухнет. Приложение достало counter, увеличило на 1. При этом время select'а по ней растёт линейно. Хочу проверить гипотезу что честный index modification будет суммарно для приложения дешевле чем скачки по HOT-цепочке.

Alexey-Lesovsky Автор вопроса
Sergey Gr
Есть мелкая горячая табличка с каунтерами и если с...

скачки по hot-цепочке делаются внутри странички в памяти - это по сути cputime, а вот index modification это честный iotime - который медленее чем работа cpu, быстрее быть не должно. но гипотезы на то и есть чтобы их подтверждать или опровергать))) случай с апдейтом значения в пк должен делать облом hot, так что можно попробовать

Alexey Lesovsky
скачки по hot-цепочке делаются внутри странички в ...

Но эффективно-то update pk не произойдёт. Постгрес это пронюхает и пойдёт по HOT-варианту или будет тупо менять индекс?

Дорожэ будет, поскольку оба тапла придётся через индэкс доставать.

Alexey-Lesovsky Автор вопроса
Ilya Anfimov
Дорожэ будет, поскольку оба тапла придётся через и...

Ну так 2 тапла, ну 4 блока максимум, а не 8M heap'а по HOT chain просматривать

Alexey Lesovsky
да вы правы, hot anyway

Спасибо огромное! Пойду проиндексирую всё вдоль и поперёк.

Alexey-Lesovsky Автор вопроса
Alexey Lesovsky
скиньте хоть цифры потом сюда)))

Спецмифический случай, но попробую.

Sergey Gr
Ну так 2 тапла, ну 4 блока максимум, а не 8M heap'...

И да, основная причина того, что в постгресе нет способа запретить HOT UPDATE -- это то, что HOT UPDATE, когда возможэн, просто во всём быстрее классического UPDATE.

Alexey Lesovsky
скиньте хоть цифры потом сюда)))

Это average time с точки зрения приложения. В 15 часов с HOT, в 16:20 с индексом на (id, counter). С точки зрения Postgres в обоих случаях oldest xid переваливает за 2-3 миллиона и размер таблички раздувает с 80к до 10Mb

Alexey-Lesovsky Автор вопроса
Alexey Lesovsky
время на оси y в ms?

Нет, в секундах. Нормальное время выполнения 50-60ms

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

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

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Блин, интересно, кто-нибудь когда-нибудь переписывал какую-нибудь игру с x86 на arm? Вообще, такое возможно?
Alan 🔝 Бэброу
12
I just installed it but how do I use it?
Talula
12
здравствуйте, у меня есть число шестнадцаттиричное, FFFB например, это -5, как мне в консоль вывести -5? мой самописный atoi преобразовывает -5 в 65531
Maxim Of course
7
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Карта сайта