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

Коллеги, добрый день. Postgres запущен в докере, к которому примонтирован

вольюм для хранения БД. Сам же вольюм хранится в RBD вольюме цефа (кластер из SSD дисков). Известно, что к БД делаются только INSERT запросы. Но если смотреть на данные в iotop, то видно, как раз в 20 секунд, процесс postgres EXECUTE производит rops ы ( до нескольких десятков мегабайт доходит). Далее эта read-активность сходит до нескольких килобайт в секунду.
Чем может быть обусловлена такая ситуация?
Моя гипотеза - чтение индекса, но вряд ли.

10 ответов

26 просмотров

Ну, должэн жэ он когда-то это всё записывать, а потом перепаковывать. ЗЫ Просто не храните бд в ceph. На худой конец, если очень нужно — ну, смените postgres на sqlite.

Setplus-Mac Автор вопроса
Ilya Anfimov
Ну, должэн жэ он когда-то это всё записывать, а по...

Так запись - это write опсы должны быть, а тут именно скачки read опсов.

Setplus Mac
Так запись - это write опсы должны быть, а тут име...

Да я жэ говорю — вакуум как минимум. Вообще, можно разбираться, как минимум — но в принцыпе имеет право. И он на это рассчитан.

Setplus-Mac Автор вопроса
Ilya Anfimov
Да я жэ говорю — вакуум как минимум. Вообще, можн...

А разве в таком случае этот процесс не должен называться postgres autovacuum ?

Боле всего похоже на автовакуум. А какой размер базы? В память она влезает? Надо понимать, что вставка в индексы требует не только записи, но и чтения. Ведь для того чтобы найти позицию в дереве, надо спуститься от корня вниз. И если таблица большая и индекс не помещается целиком в память, но надо будет читать страницы с диска. Не понятно только почему это происходит периодически раз в 20 секунд. Поэтому это всё таки больше похоже на какую-то бэкграундную активность, и скорее всего - это вакуум. Но тогда не понятно, почему iotop инит в этом EXECUTE. А там точно в инсёртах никакие подзапросы не используются?

Setplus-Mac Автор вопроса
Konstantin Knizhnik
Боле всего похоже на автовакуум. А какой размер ба...

Размер базы — 458GB, полностью влезает (там максимум 1.8 TB). Используются только инсёрты, это точно.

Setplus Mac
Размер базы — 458GB, полностью влезает (там максим...

А pid процесса-читателя всегда один тот же?Или разные? Есть ли возможность приконнектиться к нему отладчиком?

Setplus-Mac Автор вопроса
Setplus Mac
Размер базы — 458GB, полностью влезает (там максим...

Что значит "максимум 1.8 ТБ"? Вы free посмотреть внутри контэйнера можэте? И да, это, на самом деле, опять "прекратите!" Если вам под базу нужэн сервак мощнее среднего (а 1.8ТБ RAM — это пока ещё заметно мощнее среднего), то пытаться пихнуть его в контэйнер — это растрата ресурсов, в том числе на администрирование. Всё финита, у вас нет возможности таскать этот контэйнер между виртуалками, вы на каждую реплику должны выделять физическую жэлезку, недешёвую. После этого танцы с оркестрацыей — это откровенное усложнение работы.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта