|
IQ performance
|
|||
---|---|---|---|
#18+
Добрый день. Делаю небольшой бенчмарк на сравнение производительности DB2 10.1 и Sybase IQ 15.4 Тестовая система SLES11 SP1 VM на VMWare vSphere 4.1 (8 vCPU + 24GB RAM), vmdk-файлы на одном датасторе Тестовая таблица из 21-поля и 80 миллионов записей (4ГБ с компрессией) загружена в обе тестовые базы. Простой теcтовый запрос на симуляцию фулскана : Код: sql 1. 2. 3.
в IQ выполняется 40-42 секунды при большой нагрузке на CPU (я так понимаю, что много паралельных потоков). стартап параметры IQ-сервера : Код: html 1. 2.
При увеличении '-iqnumbercpus' сильно возрастает wait i/o вплоть до 90% при 8сpu (время выполнения при этом 71-73 сек.) Тот же запрос в DB2 выполняется 31-32 сек. в один поток и 17-18 сек. в 2 потока при буферпуле в 320Мб. Подскажите, плз, что и где еще можно подкрутить, чтобы улучшить результат IQ ? C IQ знакомится только начал. Сейчас читаю Performance and Tuning Guide. Может есть какие-нибудь дополнительные особо полезные линки на эту тему ? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 14:16 |
|
IQ performance
|
|||
---|---|---|---|
#18+
Индексы. Индексы и еще раз индексы. Надо правильно их расставить. Для начала используйте Index_Advisor для конкретного запроса set temporary option Query_Name='query_plan'; set temporary option Query_Plan='ON'; set temporary option Query_Detail='ON'; set temporary option Query_Plan_After_Run='ON'; set temporary option Query_Plan_As_HTML='ON'; set temporary option Query_Plan_As_HTML_Directory=<ПУТЬ ДЛЯ полученных html планов, на машине где IQ работает>; set temporary option Query_Timing='ON'; set temporary option Index_Advisor='ON'; после выполнения запроса, используйте рекомендации, а лучше документацию прочитать. Если будут проблемы, выложите сюда полученный план (в html) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 21:02 |
|
IQ performance
|
|||
---|---|---|---|
#18+
morisИндексы. Индексы и еще раз индексы. Надо правильно их расставить. Для начала используйте Index_Advisor для конкретного запроса (в html) Спасибо. Index_Advisor сказал сделать LF или HG-индексы по всем полям в группировке и поребилдить колонки с опцией MINIMISE_STORAGE='ON'. После оных мероприятий запрос стал выполняться 13-14 сек. при -iqnumbercpu=2 и 5 сек. при -iqnumbercpu=8. При этом по мониторингу такое впечатление, что к дискам вообще не обращается :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 13:50 |
|
IQ performance
|
|||
---|---|---|---|
#18+
Попробуйте создать индекс HNG на поле SALES. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 10:32 |
|
IQ performance
|
|||
---|---|---|---|
#18+
iq_test, опция Minimize storage / свойство поля Unique - это оптимизация хранения - например когда поле City длиной char 20 - будет храниться в 1 байте или 2х байтах(в зависимости от кардинальности). Тем самым значительно уменьшая объем хранимых данных. LF / HG индексы (в зависимости от кардинальности) рекомендуется для оптимизации Group by (и не только) HNG- оптимизирует агрегации типа SUM (AVG ). Действительно попробуйте его для SALES. Может и подхватиться.. Если индекс HG/LF для Group by - не окажется дешевле в целом для запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2012, 01:29 |
|
|
start [/forum/topic.php?fid=55&msg=37839981&tid=2010113]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
128ms |
get topic data: |
8ms |
get forum data: |
1ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 217ms |
0 / 0 |