У меня есть экземпляр RDS PostgreSQL, который выполняет простые запросы, намного медленнее, чем я ожидал, особенно последовательное сканирование, такое как копирование таблицы или подсчет таблицы.
Eg. create table copied_table as (select * from original_table)
or select count(*) from some_table
Запуск count(*)
для таблицы размером 30 ГБ занимает ~ 15 минут (с индексами сразу после вакуума).
Это RDS db.r3.large, 15 ГБ памяти, 400 ГБ SSD. Наблюдая за журналами метрик, я никогда не видел, чтобы IOPS при чтении превышал 1400, а обычно это около 500, что намного ниже моей ожидаемой базы.
Конфигурация: work_mem: 2 ГБ, shared_buffers: 3 ГБ, effective_cache_size: 8 ГБ wal_buffers: 16 МБ, checkpoint_segments: 16
Это ожидаемое время? Должен ли я увидеть более высокий IOPS?