Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, комрады! Начальник департамента, как бывший админ увидел постоянную нагрузку на винт (чтение из базы) файла на 19 МБ на серваке DB2 (9.7 Winwows 2008). Файл называется SQL00017.LB. По описанию понятно, что в нем содержится системная инфа в виде LOB, BLOB, CLOB я так понял о функциях (посмотрел через view- ер). И то что обращается - я понимаю, наверное нужно. Но почему этот файл закешироваться в оперативку не может? У нас оперативки предостаточно (вся база может в нее поместиться). Как сделать так, чтобы этот файл кэшировался (соответсвенно снизится нагрузка на винт), спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2014, 17:05 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoed, лобы не кэшируются в буферпуле (за исключением LOB inline, но там лимит в 32K вроде) перенесите в отдельный таблспейс с FILE SYSTEM CACHING ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2014, 21:39 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoed, Добрый день. Надо бы найти по пути, по которому вы файл нашли, табличное пространство, которому этот файл принадлежит. Код: sql 1. 2. 3. 4. Среди результата найдите строку, где container_name - каталог, содержащий ваш файл. Покажите fs_caching, tbsp_name для этой строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2014, 21:43 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Mark Barinsteinmedoed, Добрый день. Надо бы найти по пути, по которому вы файл нашли, табличное пространство, которому этот файл принадлежит. Код: sql 1. 2. 3. 4. Среди результата найдите строку, где container_name - каталог, содержащий ваш файл. Покажите fs_caching, tbsp_name для этой строки. Марк спасибо, что откликнулись! Если я правильно понял вопрос, то файл находится в каталоге: FS_CACHING CONTAINER_TYPE CONTAINER_NAME TBSP_NAME 0 PATH D:\DB2\NODE0000\SQL00008\SQLT0000.0 SYSCATSPACE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2014, 10:30 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
mitekmedoed, перенесите в отдельный таблспейс с FILE SYSTEM CACHING Спасибо! Я не админ, можно тут поподробнее, как это сделать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2014, 10:37 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoed, Добавлю: Код: sql 1. 2. 3. 4. 5. 6. Файл лежит в этом tablespace, может у него тип с SMS на DMS поменять, полегчает винту? TBSP_NAME MEMBER TBSP_TYPE POOL_DATA_P_READS SYSCATSPACE 0 SMS 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2014, 12:34 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoedЕсли я правильно понял вопрос, то файл находится в каталоге: FS_CACHING CONTAINER_TYPE CONTAINER_NAME TBSP_NAME 0 PATH D:\DB2\NODE0000\SQL00008\SQLT0000.0 SYSCATSPACEЭто системный каталог с типом SMS. У него включено кэширование файловой системы, поэтому при работе со всеми файлами в этом каталоге оно должно использоваться. Наверное, это можно как-то проверить средствами ОС - с какими именно флагами процесс работает с файлом, но я не знаю, как это сделать. Какие там чтения - "логические" или "физические" показывает perfmon - я не знаю. Всё, что вы можете сделать сдесь, это увеличить catalog cache для базы, если с ним проблемы. Что выдает запрос: Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2014, 15:16 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
[quot Mark Barinstein]medoedВсё, что вы можете сделать сдесь, это увеличить catalog cache для базы, если с ним проблемы. Что выдает запрос: Код: sql 1. 2. 3. 4. 5. 6. Марк, присылаю результат запроса картинкой: Марк и хотел уточнить у Вас насчет параметра инстанса для DB2, как должно быть?: Код: sql 1. или Код: sql 1. для нашей СУБД (Db2 9.7 и Wondows 2008). Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2014, 16:13 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoedМарк, присылаю результат запроса картинкой: Марк и хотел уточнить у Вас насчет параметра инстанса для DB2, как должно быть?: Код: sql 1. или Код: sql 1. для нашей СУБД (Db2 9.7 и Wondows 2008).Эту устаревшую переменную вообще использовать не надо. Того же самого вы можете добиться по каждому пространству отдельно. Проблем с кешем каталога у вас нет. Файл должен кешироваться в ОС. Если этого не происходит, то это выглядит странно - так не должно быть... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2014, 17:19 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Перенесли самую тяжелую базу на другой сервер (он помощнее) и появился новый поток на этом сервере, рядом стоит такой же инстанс таких потоков нет. У нас подозрения, что какие то настройки на инстансах влияют на сканирование этого файла с двоичными данными, прикрепляю картинку с доказательствами сканов: Вся надежда на гуру... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 18:51 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Посмотрели этот файл (который постоянно читается с винта), в нем функции описаны. Гуру, особенно Марк и CawaSpb - может посоветуете чего? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2014, 16:10 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoed, Что выдает: Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2014, 18:08 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoed, И это: Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2014, 18:15 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Mark Barinsteinmedoed, Что выдает: Код: sql 1. 2. 3. Получаем: Код: sql 1. Код: sql 1. 2. [/quot] Получаем: Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2014, 11:33 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoed, А это: Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2014, 12:00 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein, CAT_CACHE_LOOKUPS CAT_CACHE_INSERTS 3 31483930 4576 99 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2014, 12:47 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoedMark Barinstein, CAT_CACHE_LOOKUPS CAT_CACHE_INSERTS 3 31483930 4576 99 31483930 4576 99 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2014, 12:48 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoed, Ну, все, что я могу вам сказать, это то, что у вас идет чтение LOB полей из SYSIBM.SYSROUTINES, судя по показаниям Resource Monitor. Файловое кэширование табличного пространства SYSCATSPACE включено. Hit Ratio кэша каталога > 99%. Поэтому всё это странно выглядит. Много физических чтений быть не должно - таблица эта небольшая должна быть. Вы можете время от времени смотреть на скорость увеличения счетчика, чтоб смотреть со стороны db2: Код: sql 1. 2. По поводу новых потоков. Как вы определили, что они новые, и в старой системе их не было? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2014, 14:16 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Mark Barinsteinmedoed, Ну, все, что я могу вам сказать, это то, что у вас идет чтение LOB полей из SYSIBM.SYSROUTINES, судя по показаниям Resource Monitor. Файловое кэширование табличного пространства SYSCATSPACE включено. Hit Ratio кэша каталога > 99%. Поэтому всё это странно выглядит. Много физических чтений быть не должно - таблица эта небольшая должна быть. Вы можете время от времени смотреть на скорость увеличения счетчика, чтоб смотреть со стороны db2: Код: sql 1. 2. По поводу новых потоков. Как вы определили, что они новые, и в старой системе их не было? Спасибо, Марк! Да я понимаю, что странно. Дело в том что у нас два сервера (инстанса), на каждом из которых примерно по 5-ть баз. На 1-ом сервере такого чтения с винта нет, а вот на втором есть постоянный скан. Хотя они примерно такие же по параметрам. Вот и не понятно, почему на 1-ом сервере скана нет, а на втором есть. Базы однородные и по строению и по объемам... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2014, 14:23 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
Mark Barinsteinmedoed, Ну, все, что я могу вам сказать, это то, что у вас идет чтение LOB полей из SYSIBM.SYSROUTINES, судя по показаниям Resource Monitor. Файловое кэширование табличного пространства SYSCATSPACE включено. Hit Ratio кэша каталога > 99%. Поэтому всё это странно выглядит. Ларчик открывался просто Марк, помогла скрупулезность нач. депа (он в прошлом админ). Сравнили два сервера по настройкам DB2, оказалось что второй, который мигрировал с 7 на 9 версию имеет часть устаревших характеристик. А посему снесли устаревшие на втором сервере эти настройки и постоянное чтение файла - SQL00017.LB. ушло (он стал кэшироваться) : DB2_DIRECT_IO=YES DB2_USE_ALTERNATE_PAGE_CLEANING=ON Может кому поможет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2015, 12:26 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoedА посему снесли устаревшие на втором сервере эти настройки и постоянное чтение файла - SQL00017.LB. ушло (он стал кэшироваться) : DB2_DIRECT_IO=YES DB2_USE_ALTERNATE_PAGE_CLEANING=ON второй параметр никак не мог повлиять. Описание по поводу использования или нет кэширования ОС приведено в доке: Database administration>Administration concepts>Databases>Table spaces>Table spaces for system, user and temporary data>Table spaces without file system caching Где есть нота The now-deprecated registry variable DB2_DIRECT_IO, introduced in Version 8.1 FixPak 4, enables no file system caching for all SMS containers except for long field data, large object data, and temporary table spaces on AIX JFS2. Setting this registry variable in Version 9.1 or later is equivalent to altering all table spaces, SMS and DMS, with the NO FILE SYSTEM CACHING clause. However, using DB2_DIRECT_IO is not recommended, and this variable will be removed in a later release. Instead, you should enable NO FILE SYSTEM CACHING at the table space level. Andy ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2015, 14:35 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
еще добавлю из копилки опыта - установкой на виндузячие сервера антивирусов может дать подобный эффект, если не исключить каталоги баз из области сканирования. Это будет видно на ресурс-мониторе, что процесс от антивируса лезет к файлам db2. FYI: какие tbs кэшируются виндой видно по процессу system. AP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2015, 14:46 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
A.PanskikhmedoedА посему снесли устаревшие на втором сервере эти настройки и постоянное чтение файла - SQL00017.LB. ушло (он стал кэшироваться) : DB2_DIRECT_IO=YES DB2_USE_ALTERNATE_PAGE_CLEANING=ON второй параметр никак не мог повлиять. Описание по поводу использования или нет кэширования ОС приведено в доке: Database administration>Administration concepts>Databases>Table spaces>Table spaces for system, user and temporary data>Table spaces without file system caching Где есть нота The now-deprecated registry variable DB2_DIRECT_IO, introduced in Version 8.1 FixPak 4, enables no file system caching for all SMS containers except for long field data, large object data, and temporary table spaces on AIX JFS2. Setting this registry variable in Version 9.1 or later is equivalent to altering all table spaces, SMS and DMS, with the NO FILE SYSTEM CACHING clause. However, using DB2_DIRECT_IO is not recommended, and this variable will be removed in a later release. Instead, you should enable NO FILE SYSTEM CACHING at the table space level. Andy Дык поэтому в описании проблемы и выделил его жирным, в нем и была загвоздка! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2015, 14:54 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
A.Panskikhеще добавлю из копилки опыта - установкой на виндузячие сервера антивирусов может дать подобный эффект, если не исключить каталоги баз из области сканирования. Это будет видно на ресурс-мониторе, что процесс от антивируса лезет к файлам db2. FYI: какие tbs кэшируются виндой видно по процессу system. AP Спасибо за совет, это мы исключили сразу! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2015, 14:55 |
|
||
|
LOB (загрузка базы)
|
|||
|---|---|---|---|
|
#18+
medoedА посему снесли устаревшие на втором сервере эти настройки и постоянное чтение файла - SQL00017.LB. ушло (он стал кэшироваться) : DB2_DIRECT_IO=YES DB2_USE_ALTERNATE_PAGE_CLEANING=ONDB2_USE_ALTERNATE_PAGE_CLEANING - настройка не устаревшая. Эффект странный. Все эти настройки с использованием кэша файловой системы не должны были снять проблему. Они всего лишь указывают DB2, использовать ли флаг FILE_FLAG_NO_BUFFERING при открытии файла или нет. Но они не должны были уменьшить число физических чтений LOB'ов, т.е. заставить DB2 кэшировать эти объекты - DB2 не кэширует не-inline LOB'ы в буферном пуле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2015, 15:44 |
|
||
|
|

start [/forum/search_topic.php?author=Stepa22&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
68ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 705ms |
| total: | 905ms |

| 0 / 0 |
