|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
ursido, смелое предположение. зависит от того, умеет ли пж делать not in как антиджойн. и если умеет -- то когда. когда-то в сильно раньшие времена точно не умел. но вода течет. колхозники пашут. трава жухнет. а sun тускнеет. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 11:52 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq... зависит от того, умеет ли пж делать not in как антиджойн. и если умеет -- то когда. ... Автор уже сообщал, что сдался после трех часов ожидания. По внешним признакам - в конкретной ситуации PG не смог по антидждойну (или не захотел). (Исходный запрос: 20528831 ; ответ автора: 20530078 ) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 12:01 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
ursido, и теперь скажите, зачем вы мешаете мне увидеть план урезанного запроса ? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 12:05 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwqursido, и теперь скажите, зачем вы мешаете мне увидеть план урезанного запроса ? Подозреваю, что автор честно пытается его получить прямо сейчас. Просто план еще не готов (EXPLANE ANALYZE, да-да. Не какой-нибудь EXPLANE). Проявите терпение. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 12:08 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
ursidoEXPLANE ANALYZE, да-да. Не какой-нибудь EXPLANEуели но я ожидаю увидеть вклад триггеров. возможно -- напрасно. т.ч. попросит EXPLAINE без ANALYZE -- в вашей власти. но вы, вместо этого, занялись привычным для себя делом ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 12:16 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq2. или за один проход for loop по сортированному набору. (факультативно, тут скорее всего это не интересно) Код: plaintext
примерно так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 12:55 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq, QUERY PLAN --------------------------------------------------------------------------------------------------------------------------------- Delete on log_write (cost=9.15..17.18 rows=1 width=6) (actual time=0.167..0.167 rows=0 loops=1) -> Index Scan using lw_table_name on log_write (cost=9.15..17.18 rows=1 width=6) (actual time=0.158..0.158 rows=0 loops=1) Index Cond: ((lw_table_name)::text = 'any_lw_table_name'::text) Filter: (NOT (hashed SubPlan 1)) SubPlan 1 -> HashAggregate (cost=8.58..8.59 rows=1 width=21) (never executed) Group Key: log_write_1.lw_table_name, log_write_1.lw_rec_id -> Index Scan using lw_table_name on log_write log_write_1 (cost=0.56..8.57 rows=1 width=21) (never executed) Index Cond: ((lw_table_name)::text = 'any_lw_table_name'::text) Planning time: 1.120 ms Execution time: 0.526 ms ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 13:45 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
an2k... Index Cond: ((lw_table_name)::text = 'any_lw_table_name'::text) ... Товарищ! Вы явно перегрелись. Сделайте паузу. Вас просили сделать немного (а точнее, очень сильно) другое. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 13:50 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 13:54 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
an2k, автордля какого-нить существующего 'any_lw_table_name', но не самого частого. думаю литерал 'any_lw_table_name' у вас в значениях lw_table_name отсутствует. найдите какое -нить сущ-ее значение lw_table_name , не самое частое и повторите вывод подставив его значение ВМЕСТО 'any_lw_table_name' в исходный скрипт. (можете для начала опустить словцо ANALYZE ) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 14:43 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 15:23 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq, а это без ANALYZE Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 15:26 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
an2k, Таким образом, имеем: 20 млн строк на 30 таблиц (точнее, 32). На одну таблицу должно выходить где-то 600 тыс строк. В приведенном примере задействовано 30 тыс строк. Не самый удачный пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 15:36 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
ursido, это как раз относительно средняя таблица они вообще там крайне неравномерно представлены: есть 10-20 шт. а есть 2.5 млн. и больше ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 17:48 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
ursido, а можно вопрос: как вы узнали, что таблиц там 32? это правильное число, но я его не озвучивал и в результатах запросов ее не вижу ...или слеп? ткните плиз ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 17:52 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
an2k Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 17:56 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
an2k, покажите план (explain без аналайз) для какой--либо "большой" таблицы. и "для всего" (тоже без аналайз) //есть подозрение и да, я рекомендую подумать на предмет однопроходной 20530998 очистки в автономиях (можно по 10--1000 записей за раз, это несложная вариация). это много проще, чем на пустом месте разворачивать ротацию партиций. хотя и накладнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 18:00 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 19:51 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwq, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 19:53 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
Павел Лузанов, спасибо, за тонкий намек )) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 20:00 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
qwwqan2k, и да, я рекомендую подумать на предмет однопроходной 20530998 очистки в автономиях (можно по 10--1000 записей за раз, это несложная вариация). это много проще, чем на пустом месте разворачивать ротацию партиций. хотя и накладнее. вижу что кирилицей, но если честно, не понимаю половины слов (( - что такое автономия? - вариация? - ротация? - партиция? блин, 27 лет занимаюсь базами... как я отстал... где я был (( ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 20:07 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
an2k- что такое автономия? - вариация? - ротация? - партиция? блин, 27 лет занимаюсь базами... как я отстал... где я был (( автономия -- автономная транзакция. существует в оракле. не существует в постгресе. эмулируется в постгресе встроенным "клиентом" -- расширением dblink примеры можно найти тут, поиском. или в интернетах. вплоть до забавных "вариация" -- тут именно вариация. вариация на тему предложенного по ссылке кода добавлением пары переменных, констант и пары--тройки IF--ов. что для вас, с вашим опытом, несложно. ротация и партиция -- это про ручную реализацию некоторых идей, основанных на 1. транзакционности ддл в пж. 2. наследовании в пж, и его использовании для партицирования (разбиения таблички на отдельные части по какому--либо признаку). т.е. "багровый закат" -- сиречь закат солнца баграми, в поте лица своего. вам оно, даже с вашим опытом, видимо не надо. это для гиков. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 20:42 |
|
Postgres не хочет юзать память
|
|||
---|---|---|---|
#18+
an2kqwwq, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
C2H5OH на пару... тщательнее ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2017, 20:46 |
|
|
start [/forum/topic.php?fid=53&msg=39463814&tid=1996476]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
others: | 334ms |
total: | 495ms |
0 / 0 |