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

Всем привет, подскажите, пожалуйста, куда копать. с помощью pg_pathman разделил

таблицу с 50 млн на 19 штук по месяцам (правда вышло с 15 числа по 15, а, не с 1 по 1, но это тут роли не играет же, насколько я понимаю?)
SELECT create_range_partitions('table', 'date', '2015-09-15'::date, '1 month'::interval);
и в итоге все запросы выполняются намного медленее и даже простой count по конкретной дате очень долгий
zz7=# explain analyze select count(*) from transactions where trans_date='2017-03-02';
QUERY PLAN
Aggregate (cost=8891.82..8891.83 rows=1 width=8) (actual time=36996.932..36996.933 rows=1 loops=1)
-> Append (cost=0.43..8681.65 rows=84066 width=0) (actual time=0.027..36978.710 rows=80796 loops=1)
-> Index Only Scan using transactions_18_trans_date_idx on transactions_18 (cost=0.43..8681.65 rows=84066 width=0) (actual time=0.025..36951.611 rows=80796 loops=1)
Index Cond: (trans_date = '2017-03-02'::date)
Heap Fetches: 80796
Planning time: 0.198 ms
Execution time: 36996.964 ms
(7 rows)

Time: 36997.581 ms
индекс используется, в чем дело, почему так долго, может при создании нужно было параметры указать или в конфиге пострес что-то поменять? свободной оперативки на сервере гига 4, если это важно

2 ответов

10 просмотров

ну тут пафман не работает, вы только разделили таблицу с помощью него. А тот же запрос на непартицированной таблице был быстрее?

Меня смущает heap fetches 80796. У вас из индекса вытаскивается 84066 строк и потом запрос идёт в таблицу и почти все перепроверяет. Конечно, это долго. Попробуйте сделать vacuum freeze на партицию и посмотрите, как изменится heap fetches в плане запроса (ну и скорость)

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

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

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
И никого не интересует какие пакеты кто использует. ((% Заходишь на сайт симфони и видишь поддержку Украины - по законам РФ это ж экстремизм. Только никто не отказывается от с...
Am Ambrion
11
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Чтобы перехватить все нажимания буков на форме, надо хук ставить? Пробовал на форме ОнКейДаун, оно ловит клаву если фокус не на компоненте с вводом текста
Serjone
15
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
14
Всем привет! вывожу на общей стр дочерние ресурсыв каждом ресурсе галерея, и первая фотка должна выводиться на общей [!DocLister? &prepare=photo !]
Alekso
12
А можно вопрос? Мне сегодня сказали что у меня функция (которая просто заполняет массив значениями) не правильная void Full(double * arr, int n) { for (int i = 0; i < n; i...
† C E †
7
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
Добрый вечер. Хочу чтобы у меня в классе поле было функцией, которая возвращает строку. Делаю так: interface ... TGetOutPath = function : String of object; ... protec...
Kirill Filippenok
12
Всем привет. Возможно ли выполнить код ahk без интерпритатора? Имея только скомпилированный ехе файл? Например как функция eval
proxy
6
Карта сайта