powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Мониторинг и настройка конфига
18 сообщений из 18, страница 1 из 1
Мониторинг и настройка конфига
    #39394185
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе время соратники
Вот есть у меня Postgres 9.3 крутиться база под виндой.
проставил в конфиге я log_min_duration_statement = 500ms
и обнаружил, что есть у меня длительные операции удаления а-ля
Код: sql
1.
2017-01-30 00:00:00 NOVT LOG:  duration: 738.000 ms  statement: DELETE FROM "userdata"."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction" WHERE (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"."tid" =  ((1671)::int4)) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"."id" =  (('bf3772bd-d4b3-47f6-9cab-352439f892c9')::uuid)))


индексы стоят на оба поля.
транзакция очень большая. где то через 10 минут после старта процесса начинаются вот эти уведомления, что какое либо удаление занимает более 500 мс. Количество одноврменных блокировок около 6000 штук

на что следует обратить внимание?
и как грамотно снять метрики для анализа, чтобы понять почему через 10 минут начинаются такие моменты?
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39394243
kira ivanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamond,

индекс на оба поля, по возможности и посмотреть на скорости
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39394321
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я ж сразу написал, что авториндексы стоят на оба поля.

просиходит арифметический рост скорости выполнения удаления. грубо говоря запустил за полноч. минут через 10 (как точно замерить?) удаление идет по 500+ мс, а вот спустя 9 часов = 7023 мс
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39394407
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamond,

Сколько записей надо удалить?
Удаляете частями или одной пачкой?
Есть подчинённые таблицы? Есть ли индексы на подчинённых ключах?
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39394546
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamondДоброе время соратники
Вот есть у меня Postgres 9.3 крутиться база под виндой.
проставил в конфиге я log_min_duration_statement = 500ms
и обнаружил, что есть у меня длительные операции удаления а-ля
Код: sql
1.
2017-01-30 00:00:00 NOVT LOG:  duration: 738.000 ms  statement: DELETE FROM "userdata"."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction" WHERE (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"."tid" =  ((1671)::int4)) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"."id" =  (('bf3772bd-d4b3-47f6-9cab-352439f892c9')::uuid)))


индексы стоят на оба поля.
транзакция очень большая. где то через 10 минут после старта процесса начинаются вот эти уведомления, что какое либо удаление занимает более 500 мс. Количество одноврменных блокировок около 6000 штук

на что следует обратить внимание?
и как грамотно снять метрики для анализа, чтобы понять почему через 10 минут начинаются такие моменты?
а зачем "по одной" удалять строки в "очень большой транзакции" ? нельзя отдельными ? или пачечками штук по 1000--10000 ?



ну и вопросов много:
-- у вас там каскадов по ФК, часом, нет ? (и/или триггерочков на удаление).
-- планчик запроса посмотреть можно ?
-- вы действительно думаете, что "индекс на оба поля", и "индексЫ по обеим полям" -- это одно и то же ?
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39395017
kira ivanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь уже многое чего ответили - немного добавлю :

вопрос, возможность правки кода приложения есть ?

1 - Если ДА, то :
- qwwqа зачем "по одной" удалять строки в "очень большой транзакции" ? нельзя отдельными ? или пачечками штук по 1000--10000 ?
- переписать это все иначе

2 - Если НЕТ, то :
- о чем и я изначально спрашивал qwwqвы действительно думаете, что "индекс на оба поля", и "индексЫ по обеим полям" -- это одно и то же ? и есть подозрение что индекс будет UNIQUE с вероятностью ближе к 100%
- explain запроса в студию
- конфиг сервера (OS, HDD, RAM, CPU) в студию
- конфиг постгреса - так-же сюда :)

а направление "снятия метрик для анализа" вы выбрали правильное, расширяем логирование до необходимо уровня и дальше explain по всем подозрительным запросам, ну и iostat (если unix) в помощь
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39395986
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ответы ваши отличные. за это благодарю

вернемся к сути вещей.

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

машину взял типовую:
CPU i3 3.4 GHz
hdd 500 Gb
Win 7 x64
RAM 8G

Postgres 9.3 x64

конфиг почти типовой. приложил
(я в мире постгре новенький, так что в конфиге присутствуют серьезные огрехи)

естественно компы на которых крутиться подобная рабочая база - будут мощнее и на них SSD. картина меняется не особенно


Код: sql
1.
2.
3.
4.
CREATE INDEX bugdtran_index
  ON userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"
  USING btree
  (tid, id);



хотя казалось бы зачем ведь есть
Код: sql
1.
2.
ALTER TABLE userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"
  ADD CONSTRAINT "PK_cbdd134c1395950c67e3c2574b0264e9" PRIMARY KEY(id, tid);



далее есть тригер
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
CREATE OR REPLACE FUNCTION userdata."TFD_cf8123b8e01374517246178cfe5f35de"()
  RETURNS trigger AS
$BODY$
BEGIN
	DELETE FROM "userdata"."ParusBusinessAccountingCoreEconomicOperationTransaction"
	WHERE "id" = OLD."id" AND "tid" = OLD."tid";
RETURN OLD;
END;


присутствуют внешние ключи, но на них стоит "ON DELETE NO ACTION"

удаление идет в лоб и очень-очень тупо
Код: sql
1.
DELETE FROM "userdata"."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction" WHERE (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"."tid" =  ((1671)::int4)) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"."id" =  (('bf3772bd-d4b3-47f6-9cab-352439f892c9')::uuid)))



и так для каждой записи. всего записей 19 000.

сейчас речь идет о том, как помочь штатному механизму. например сделать больший упор на память или на запись в файлы
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39395987
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"Delete on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction" (cost=0.42..8.44 rows=1 width=6) (actual time=27.686..27.686 rows=0 loops=1)"
" Buffers: shared hit=1070 read=2 dirtied=25, local hit=2 read=1 dirtied=1"
" -> Index Scan using bugdtran_index on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction" (cost=0.42..8.44 rows=1 width=6) (actual time=0.071..0.072 rows=1 loops=1)"
" Output: ctid"
" Index Cond: (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".tid = 1671) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid))"
" Buffers: shared hit=4"
"Trigger RI_ConstraintTrigger_a_175700 for constraint FK_13964930757d57361e63a4865db53650: time=0.404 calls=1"
"Trigger TR_ec79b9035a3512065fea1fb1f3e97dc6: time=25.863 calls=1"
"Total runtime: 28.125 ms"
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39395994
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamond
Код: sql
1.
2.
3.
4.
CREATE INDEX bugdtran_index
  ON userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"
  USING btree
  (tid, id);



хотя казалось бы зачем ведь есть
Код: sql
1.
2.
ALTER TABLE userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"
  ADD CONSTRAINT "PK_cbdd134c1395950c67e3c2574b0264e9" PRIMARY KEY(id, tid);




Я не настоящий сварщик, из Firebird забежал, отвечу с точки зрения FB но тут наверняка аналогично.

Индексы (tid, id) и (id, tid) аналогичны только если по обоим полям задано условие.
Если же в условии только второе поле индекса - то этот индекс не может быть использован.
Соответственно для твоей задачи это без разницы, но в системе наверняка есть запросы которым это не все равно.
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396008
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamond"Delete on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction" (cost=0.42..8.44 rows=1 width=6) (actual time=27.686..27.686 rows=0 loops=1)"
" Buffers: shared hit=1070 read=2 dirtied=25, local hit=2 read=1 dirtied=1"
" -> Index Scan using bugdtran_index on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction" (cost=0.42..8.44 rows=1 width=6) (actual time=0.071..0.072 rows=1 loops=1)"
" Output: ctid"
" Index Cond: (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".tid = 1671) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid))"
" Buffers: shared hit=4"
"Trigger RI_ConstraintTrigger_a_175700 for constraint FK_13964930757d57361e63a4865db53650: time=0.404 calls=1"
"Trigger TR_ec79b9035a3512065fea1fb1f3e97dc6: time=25.863 calls=1"
"Total runtime: 28.125 ms"

Ну вот вам написали где 99% времени уходит - на работу :
"Trigger TR_ec79b9035a3512065fea1fb1f3e97dc6: time=25.863 calls=1"

Соответственно надо разбираться что за триггер и что в нем происходит (и почему).

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396024
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
5.
CREATE TRIGGER "TR_ec79b9035a3512065fea1fb1f3e97dc6"
  BEFORE DELETE
  ON userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"
  FOR EACH ROW
  EXECUTE PROCEDURE userdata."TFD_cf8123b8e01374517246178cfe5f35de"();



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
CREATE OR REPLACE FUNCTION userdata."TFD_cf8123b8e01374517246178cfe5f35de"()
  RETURNS trigger AS
$BODY$
BEGIN
	DELETE FROM "userdata"."ParusBusinessAccountingCoreEconomicOperationTransaction"
	WHERE "id" = OLD."id" AND "tid" = OLD."tid";
RETURN OLD;
END;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
ALTER FUNCTION userdata."TFD_cf8123b8e01374517246178cfe5f35de"()
  OWNER TO postgres;
GRANT EXECUTE ON FUNCTION userdata."TFD_cf8123b8e01374517246178cfe5f35de"() TO postgres;
GRANT EXECUTE ON FUNCTION userdata."TFD_cf8123b8e01374517246178cfe5f35de"() TO public;



в ParusBusinessAccountingCoreEconomicOperationTransaction индексов по первичному ключу нет.
поэтому я еще раз спрашиваю: в постгре принято индексы на первичные ключи явно ставить?
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396043
kira ivanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamondв ParusBusinessAccountingCoreEconomicOperationTransaction индексов по первичному ключу нет.
поэтому я еще раз спрашиваю: в постгре принято индексы на первичные ключи явно ставить?

Требованием не является, в отличии от ораклов
Делай индекс там на "id" и "tid"
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396048
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
прошу прощения заранее за тривиальные вопросы - но так я познаю мир)

1)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
"Delete on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.354..0.354 rows=0 loops=1)"
"  Buffers: shared hit=10"
"  ->  Index Scan using bugdtran_index on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.044..0.046 rows=1 loops=1)"
"        Output: ctid"
"        Index Cond: (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".tid = 1671) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid))"
"        Buffers: shared hit=4"
"Trigger RI_ConstraintTrigger_a_175700 for constraint FK_13964930757d57361e63a4865db53650: time=0.143 calls=1"
"Trigger TR_ec79b9035a3512065fea1fb1f3e97dc6: time=0.197 calls=1"
"Total runtime: 0.533 ms"



иду в триггер
2)
Код: sql
1.
2.
3.
4.
5.
6.
7.
"Delete on userdata."ParusBusinessAccountingCoreEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.051..0.051 rows=0 loops=1)"
"  Buffers: shared hit=3"
"  ->  Index Scan using "PK_99ecb66e4b825aa33c41486a3a063ad4" on userdata."ParusBusinessAccountingCoreEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.043..0.043 rows=0 loops=1)"
"        Output: ctid"
"        Index Cond: (("ParusBusinessAccountingCoreEconomicOperationTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid) AND ("ParusBusinessAccountingCoreEconomicOperationTransaction".tid = 1671))"
"        Buffers: shared hit=3"
"Total runtime: 0.134 ms"



тут не написан тригер (почему?), но он есть BEFORE DELETE
3)
Код: sql
1.
2.
3.
4.
5.
6.
7.
"Delete on userdata."ParusBusinessAccountingCoreTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.050..0.050 rows=0 loops=1)"
"  Buffers: shared hit=3"
"  ->  Index Scan using "PK_ParusBusinessAccountingCoreTransaction$tid$id" on userdata."ParusBusinessAccountingCoreTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.046..0.046 rows=0 loops=1)"
"        Output: ctid"
"        Index Cond: (("ParusBusinessAccountingCoreTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid) AND ("ParusBusinessAccountingCoreTransaction".tid = 1671))"
"        Buffers: shared hit=3"
"Total runtime: 0.130 ms"



далее еще один тригер (тоже не описан)
4)
Код: sql
1.
2.
3.
4.
5.
6.
7.
"Delete on userdata."objectUse" s  (cost=0.42..12.46 rows=2 width=6) (actual time=0.049..0.049 rows=0 loops=1)"
"  Buffers: shared hit=3"
"  ->  Index Scan using "IDX_objectUseOwner" on userdata."objectUse" s  (cost=0.42..12.46 rows=2 width=6) (actual time=0.045..0.045 rows=0 loops=1)"
"        Output: ctid"
"        Index Cond: ((s."Owner_id" = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid) AND (s."Owner_tid" = 1671))"
"        Buffers: shared hit=3"
"Total runtime: 0.112 ms"


и
Код: sql
1.
2.
3.
4.
5.
6.
7.
"Delete on userdata.object  (cost=0.56..8.58 rows=1 width=6) (actual time=0.046..0.046 rows=0 loops=1)"
"  Buffers: shared hit=4"
"  ->  Index Scan using "PK_object$id$tid" on userdata.object  (cost=0.56..8.58 rows=1 width=6) (actual time=0.041..0.041 rows=0 loops=1)"
"        Output: ctid"
"        Index Cond: ((object.id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid) AND (object.tid = 1671))"
"        Buffers: shared hit=4"
"Total runtime: 0.110 ms"



какие от сюда можно сделать выводы?
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396057
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
скажу больше

вот случай без индексов по ParusBusinessAccountingCoreBudgetEconomicOperationTransaction

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
"Delete on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=11.605..11.605 rows=0 loops=1)"
"  Buffers: shared hit=8 read=2"
"  ->  Index Scan using "PK_cbdd134c1395950c67e3c2574b0264e9" on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=10.987..10.991 rows=1 loops=1)"
"        Output: ctid"
"        Index Cond: (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".tid = 1671))"
"        Buffers: shared hit=2 read=2"
"Trigger RI_ConstraintTrigger_a_175700 for constraint FK_13964930757d57361e63a4865db53650: time=0.235 calls=1"
"Trigger TR_ec79b9035a3512065fea1fb1f3e97dc6: time=0.418 calls=1"
"Total runtime: 11.915 ms"



а вот с индексами по id и tid

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
"Delete on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.354..0.354 rows=0 loops=1)"
"  Buffers: shared hit=10"
"  ->  Index Scan using bugdtran_index on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.044..0.046 rows=1 loops=1)"
"        Output: ctid"
"        Index Cond: (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".tid = 1671) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid))"
"        Buffers: shared hit=4"
"Trigger RI_ConstraintTrigger_a_175700 for constraint FK_13964930757d57361e63a4865db53650: time=0.143 calls=1"
"Trigger TR_ec79b9035a3512065fea1fb1f3e97dc6: time=0.197 calls=1"
"Total runtime: 0.533 ms"



а почему такие различные показати при инднекс скане по ПК и по моему индексу?
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396068
kira ivanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamond,

поправь в конфиге :
work_mem = 16MB
maintenance_work_mem = 512MB
wal_buffers = 16MB
effective_cache_size = 6GB

про винду точно не могу сказать, но можно попробовать увеличить до
shared_buffers = 2GB

PsyDiamond какие от сюда можно сделать выводы?
Никакие выводы отсюда не сделать - написано так
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396134
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyDiamond,

1 по ПК и уникъю Пж всегда создает индекс (если при создании оных не скахано воспользоваться готовым индексом). Правда не все приблуды его показывают

2. ваш индекс скорее всего только что создан, а индекс ПК -- сильно опух из-за предыдущих удалений/обновлений. (особенность пж)

ну и у вас там куча каскадного удаления висит на триггерах. ==> кроме как нарезать большой пакетик на маленькие (напр. автономные) транзакции (и отдать это всё джобу) и запастись терпением решений видимо нет. (переписать приложение, избавившись от самой необходимости массовых апдейтов и каскадов).
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396154
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
брешу.
сделал reindex по этой таблице - на выходе
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
"Delete on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.609..0.609 rows=0 loops=1)"
"  Buffers: shared hit=7 read=3"
"  ->  Index Scan using "PK_cbdd134c1395950c67e3c2574b0264e9" on userdata."ParusBusinessAccountingCoreBudgetEconomicOperationTransaction"  (cost=0.42..8.44 rows=1 width=6) (actual time=0.128..0.130 rows=1 loops=1)"
"        Output: ctid"
"        Index Cond: (("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".id = 'bf3772bd-d4b3-47f6-9cab-352439f892c9'::uuid) AND ("ParusBusinessAccountingCoreBudgetEconomicOperationTransaction".tid = 1671))"
"        Buffers: shared hit=1 read=3"
"Trigger RI_ConstraintTrigger_a_175700 for constraint FK_13964930757d57361e63a4865db53650: time=0.241 calls=1"
"Trigger TR_ec79b9035a3512065fea1fb1f3e97dc6: time=0.320 calls=1"
"Total runtime: 0.924 ms"
...
Рейтинг: 0 / 0
Мониторинг и настройка конфига
    #39396904
PsyDiamond
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kira ivanovPsyDiamond,

поправь в конфиге :
work_mem = 16MB
maintenance_work_mem = 512MB
wal_buffers = 16MB
effective_cache_size = 6GB

про винду точно не могу сказать, но можно попробовать увеличить до
shared_buffers = 2GB


в мануале написано же, что shared_buffers для винды 512 метров вполне достаточно
про effective_cache_size я так и не понял - зачем так много?

и кто нибудь рассказать может или ссылочку дать, какие параметры оптимизируют какие операции?
например какой влияет на index scan и прочее
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Мониторинг и настройка конфига
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]