Skip to content

Document box.slab.info(): items = tuples, arena = tuples + indexes, quota = pure quota #84

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
kostja opened this issue Oct 7, 2016 · 0 comments
Assignees

Comments

@kostja
Copy link
Contributor

kostja commented Oct 7, 2016

Konstantin [07.10.16 15:41]
при старте память не размечена. то есть, сделан mmap, зарезервировано адресное пространство. Потом память юзается, из квоты берутся куски по 4 МБ (slab size). Если память освобождается - куски могут вернуться в квоту, но не обязательно (фрагментация)

Roman [07.10.16 15:42]
[In reply to Anatoly]
ага, для этого популярные теги нужно в описание группы добавить

Konstantin [07.10.16 15:42]
quota_used таким образом говорит нам о том, сколько памяти мы израсходовали с точки зрения использования квоты.

Konstantin [07.10.16 15:42]
далее, потребителями квоты являются таплы и индексы. Всё вместе - таплы и индексы - называется ареной 😊

Konstantin [07.10.16 15:43]
соотв. arena_size = это сколько мы отожрали на таплы и индексы в виде их слабов.

Konstantin [07.10.16 15:43]
а arena_used = это сколько мы соотв. реально юзаем памяти под что-то полезное

Konstantin [07.10.16 15:44]
далее, ещё есть items - это сколько памяти мы выжрали конкретно под данные.

Konstantin [07.10.16 15:44]
не включая индексы.

Konstantin [07.10.16 15:44]
теперь, люди задают вопрос, как мне понять что память кончилась?

Konstantin [07.10.16 15:44]
в связи с тем, что система подвержена фрагментации, мониторить надо более-менее всё.

Konstantin [07.10.16 15:45]
то есть признак конца = и arena_used_ratio и quota_used_ratio в 90-95%
Если есть ещё много свободной квоты, то то, что арена хорошо используется - признак низкой фрагментация, т.е. само по себе arena_used_ratio и items_used_ratio высокие не страшно.
Как в целом не страшно и если quota_used_ratio под сотку, а arena_used_ratio 50-60% - но может бомбануть из-за фрагментации, т.е. это признак высокой фрагментации.

Konstantin [07.10.16 15:45]
т.к. может кончиться память в квоте из-за того что их выжрали данные, и из-за этого не будет слаба под кусок индекса.
а может быть так что все слабы распределены под таплы, но полупустые.

Oleg [07.10.16 15:45]
а все ratio - это отношение чего к чему?

Konstantin Osipov, [07.10.16 15:45]
used к size

Oleg [07.10.16 15:47]
quota_used: 8388608
arena_used_ratio: 0.8%
items_used_ratio: 2.0%
arena_size: 2341456
quota_size: 1073741824
arena_used: 1102592

Oleg [07.10.16 15:47]
тут че-то arena_used_ratio: 0.8% с этим как-то не согласуется

Konstantin [07.10.16 15:48]
я тоже посмотрел, походу бага. в знаменатели память под индексы не учитывается с какого-то

Konstantin [07.10.16 15:48]
ща поправлю.

Oleg [07.10.16 15:48]
а items_used_ratio? -> items_used / arena_size?

Konstantin [07.10.16 15:49]
нет.

Konstantin [07.10.16 15:49]
items_used+ratio = items_used/slab_count * slab_size
где подсчёт идёт слабов отведённых под items.

Oleg [07.10.16 15:50]
а, вы не смешиваете слабы для items и слабы для индексов и др?

Konstantin Osipov, [07.10.16 15:51]
да

Oleg [07.10.16 15:52]
понятно, т.е. чтобы посчитать items_used_ratio нужно просто посчитать ratio для тех слабов, которые юзаются по items

Konstantin [07.10.16 15:52]
ща я сделаю так чтобы было 9 переменных

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants