powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Разделяемая память БД в 9.7
12 сообщений из 12, страница 1 из 1
Разделяемая память БД в 9.7
    #39234731
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из документации известно, что размер разделяемой памяти БД известный также как Database Global Memory определяется параметром database_memory и может управляться автоматически (с помощью STMM). Вопрос: при наличии только одной запущенной БД в одном экземпляре DB2 примерно каким значением будет ограничиваться максимально выделенная память для разделяемой памяти базы?
Очевидно что DB2 будет учитывать имеющийся объем оперативной памяти в ОС, но до какого % от этого объема сможет расти размер разделяемой памяти БД? Можно ли конфигурацией БД или DBM жестко ограничить это значение сверху, оставив при этом работающим STMM?
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39234844
m&m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m&m
Гость
Andron,

DB2 for Linux UNIX and Windows 9.7.0>Database fundamentals>Configuring>Configuration parameters>Database manager configuration parameters>instance_memory - Instance memory

"If self-tuning of database_memory is enabled and instance_memory is set to a specific value, STMM updates the configuration to achieve optimal performance while maintaining sufficient free instance memory. This ensures that enough instance memory is available to satisfy volatile memory requirements. System memory is not monitored."
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39234864
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разделяемая память для базы находится внутри памяти инстанса и ограничивается памятью инстанса или нет?
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39234886
m&m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m&m
Гость
Andron,

насколько я понял, не то чтобы "внутри", но ограничивается.
т.е. не будет database_memory >= instance_memory
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39234927
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Andron,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
db2pd -dbptnmem

...
Database Member Memory Controller Statistics

Controller Automatic: Y
Memory Limit:         6706868 KB
Current usage:        749376 KB
HWM usage:            751296 KB
Cached memory:        215936 KB

Individual Memory Consumers:

Name             Mem Used (KB) HWM Used (KB) Cached (KB)
========================================================
APPL-SAMPLE             160192        160192      156224
DBMS-DB2                150848        150848       15168
FMP_RESOURCES            22528         22528           0
PRIVATE                  36544         38720       15488
DB-SAMPLE               378880        378880       29056
LCL-p8120                  128           128           0
LCL-p7304                  128           128           0
LCL-p7304                  128           128           0

instance_memory - всё потребление разделом db2
DB-<DBNAME> - database_memory базы <DBNAME>
APPL-<DBNAME> - appl_memory базы <DBNAME>
DBMS-<INSTNAME> - для нужд самого раздела db2 (не путать с instance_memory)

Database manager shared memory
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39234961
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут видимо вопрос несколько шире, точнее их даже несколько. (речь про AIX и Linux).
Разделяемая память БД находится в своем сегменте ОС. Если STMM потребуется увеличить эту память - он добавит новый сегмент или увеличит существующий?
Непонятно - instance_memory - это размер памяти для инстанса. Внутри него свои структуры. database_memory - располагается отдельно от инстанса или внутри instance_memory?

вот насчет

т.е. не будет database_memory >= instance_memory

позвольте усомниться: db2mtrk показывает что инстанс занимает значительно меньше памяти, чем база.
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39234974
m&m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m&m
Гость
Andron,

насколько я понял, определенное значение в instance_memory есть предел,
которым ограничены все "потребители" памяти данного инстанса.
включая как нужды собственно инстанса (например mon_heap), так и нужды каждой его БД.

P.S. можете проверить, задав на тестовой среде instance_memory = 200000 (условно)
и попробовать активировать единственную БД с database_memory>= instance_memory
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39235620
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m&m,

В документации ссылку на которую дал Mark Barinstein память инстанса и базы это разные области памяти. Т.е. память бд выделяется не в области памяти инстанса. Проверить на практике пока не могу - нет в руках тестового экземпляра, а продуктивные как раз подтверждают мной сказанное - разделяемая память БД может быть больше разделяемой памяти экземпляра.
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39235644
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Andron,

Ещё раз: instance_memory - общее потребление памяти. Туда входят все потребители: и те, которые использует сам экземпляр (про которые db2mtrk пишет, что это instance memory), и разделяемая память базы, и приватная, и куча приложений, и т.д.
Если интересно, как эта память выделяется в системе - смотреть на вывод
db2pd -alldbs -inst -memsets
И искать id сегментов в выводе a svmon/pmap.
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39235654
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein,

Проверил на продуктивной БД - действительно instance_memory который показывает get dbm cfg больше чем database memory из db cfg. Запутал вывод db2mtrk -i который вроде бы показывает instance memory, но как оказалось только часть.
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39236272
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein,

Вот смотрю в системе:

dbm cfg показывает что INSTANCE_MEMORY AUTOMATIC 27GB - это текущее потребление инстанс + базы?

В то же время db2pd -alldbs -inst -memsets в поле Used(Kb) если просуммировать все Memory Sets то будет не больше 12GB. Также и по полю HWM(Kb) не больше 17GB.

Как сопоставить тогда то что показывает dbm cfg для INSTANCE_MEMORY и вывод db2pd -alldbs -inst -memsets ?

ipcs -ma для db2 показывает по полю SEGSZ в сумме 22Gb.
...
Рейтинг: 0 / 0
Разделяемая память БД в 9.7
    #39236389
m&m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m&m
Гость
Andron,

при instance_memory=AUTOMATIC(nnn)
значение в database_memory м.б. больше, чем nnn, т.к. nnn в данном случае - не предел, а некое плавающее значение.
ограничение на database_memory сработает только при instance_memory=NNN (non-automatic)
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Разделяемая память БД в 9.7
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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