Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Новый топик    Ответить
 Проблема с производительностью DB2 Text Search  [new]
inhuman97
Member

Откуда:
Сообщений: 2
Добрый день.

Столкнулся с проблемой, нужна помощь. Имеется веб-приложение, которое использует Db2 Text Search функциональность.
База содержит около 5000 записей, каждая из которых содержит 2 Excel файла по 1 МБ. В сумме получается около 10ти гигов.

На локальном компе стоит Db2 Express 9.7, и всё летает. Притом локально всё работает быстро (2-3 сек) даже на объеме данных который больше в 30 раз (330 гигов база).

На сервере стоит Db2 Enterprise 9.7 и запрос использующий text search выполняется около 20-30 секунд. Другие запросы к базе обрабатываются быстро. Конфиг сервера мощнее локального компа в разы (Suse linux, 4 core CPU, 16 GB memory).

Пробовал рестартить базу, подключать\отключать Text Search.

Подскажите пожалуйста куда смотреть. Мне кажется дело в конфиге Db2.

P.S. базу ставил не я, поэтому всех нюансов о базе не знаю.
Не знаю, какая инфа может пригодится... Вот например результат выполнения команды
db2 get snapshot for database on dbname|grep -i buff :

Buffer pool data logical reads = 3170426
Buffer pool data physical reads = 2573
Buffer pool temporary data logical reads = 124367
Buffer pool temporary data physical reads = 0
Buffer pool data writes = 2472
Buffer pool index logical reads = 2727158
Buffer pool index physical reads = 4886
Buffer pool temporary index logical reads = 0
Buffer pool temporary index physical reads = 0
Buffer pool index writes = 1287
Buffer pool xda logical reads = 2
Buffer pool xda physical reads = 2
Buffer pool temporary xda logical reads = 0
Buffer pool temporary xda physical reads = 0
Buffer pool xda writes = 0
Total buffer pool read time (milliseconds) = 111562
Total buffer pool write time (milliseconds)= 5795
No victim buffers available = 0
Number log buffer full = 1
Log data found in buffer = 0
Memory Pool Type = Buffer Pool Heap
Memory Pool Type = Buffer Pool Heap
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 32k buffer pool
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 16k buffer pool
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 8k buffer pool
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 4k buffer pool
lspal120:db2bns 52> db2 get snapshot for database on BNSDB | grep -i buff
Buffer pool data logical reads = 3179760
Buffer pool data physical reads = 2573
Buffer pool temporary data logical reads = 124429
Buffer pool temporary data physical reads = 0
Buffer pool data writes = 2472
Buffer pool index logical reads = 2769077
Buffer pool index physical reads = 4886
Buffer pool temporary index logical reads = 0
Buffer pool temporary index physical reads = 0
Buffer pool index writes = 1287
Buffer pool xda logical reads = 2
Buffer pool xda physical reads = 2
Buffer pool temporary xda logical reads = 0
Buffer pool temporary xda physical reads = 0
Buffer pool xda writes = 0
Total buffer pool read time (milliseconds) = 111562
Total buffer pool write time (milliseconds)= 5795
No victim buffers available = 0
Number log buffer full = 1
Log data found in buffer = 0
Memory Pool Type = Buffer Pool Heap
Memory Pool Type = Buffer Pool Heap
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 32k buffer pool
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 16k buffer pool
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 8k buffer pool
Memory Pool Type = Buffer Pool Heap
Secondary ID = System 4k buffer pool


Заранее спасибо за помощь. Если нужно еще что-то, готов оперативно предоставить.
25 май 11, 14:30    [10706843]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с производительностью DB2 Text Search  [new]
mustaccio
Member

Откуда: Москва -> Торонто
Сообщений: 494
Как часто у вас текстовый индекс (индексы) обновляется? Может, попробовать обновить его вручную (db2ts update index...) или удалить и построить заново?

При помощи утилиты db2top можно попытаться найти "узкое место" в системе.
25 май 11, 15:59    [10707711]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с производительностью DB2 Text Search  [new]
inhuman97
Member

Откуда:
Сообщений: 2
тестовый индекс обновлен и новые данные в базу не добавляются. Индексация запускалась несколько раз.

Что касается использования команд типа db2ts update index..., то проблема в том, что они как я понимаю выполняются для конкретной таблицы итп.
В данном приложении почти 1000 таблиц. Соответсвенно выполнять такие единичные вещи очень сложно.
Или их можно как-то запустить сразу для всей базы?
25 май 11, 19:44    [10709267]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с производительностью DB2 Text Search  [new]
mustaccio
Member

Откуда: Москва -> Торонто
Сообщений: 494
Проблемный запрос использует все таблицы из этой почти тысячи? Или все запросы, использующие функции полнотекстового поиска, страдают?

Думаю, полезно было бы взглянуть на сам запрос и его план...
26 май 11, 06:50    [10710606]     Ответить | Цитировать Сообщить модератору
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Ответить