реквизитов. Seq scan по ней делается около 15 секунд в один поток, повторный запрос. ОЗУ 170гб. Postgres Pro Ent 15.
Мне кажется это долго для повторного вызова. Кто-нибудь может привести свои референсные значения скорости выполнения на таких объемах? Просто чтобы понимать это норма или нет.
Если главная цель уменьшить время seq scan, то для первого исполнения seq scan важна будет скорость чтения с диска, когда данные холодные, для последующих исполнений, когда данные горячие, время seq scan уменьшат увеличение производительности процессора на ядро и увеличение скорости работы памяти. В shared buffers таблица просто так при select * from без условий укладываться не будет, пройдет через кольцевой буфер и пойдет в кэш линукса, если есть свободная озу, последующие seq scan просто будут уже без чтения с диска из кэша линукса брать, но select * from по крайней мере на 15м постгресе не кладет таблицу в shared_buffers
Спасибо за понятное разъяснение
Обсуждают сегодня