Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Добрый всем день! Вопрос на тему производительности: Сервер - 8х Xeon 3.00 Ram - 16G система - Linux RedHat 4 (64) 2 массива : 3-диска 5рейд - под систему, информикс, ПО 14дисков 10рейд - под базы (240Gb) Информикс - IDS Version 10.00.FC3R1 В системе около 400 пользователей, активных до 70 Изначально массив под базы был разбит на 2 части 140и 103Гб, после переразбивки 240г залили бызы. Стали поступать жалобы от пользователей на медленную обработу запросов. К тому же, стала меньше отьедаться оперативная память Как один из вариантов: до переразбивки страницы DBS могли быть по 16к, а теперь по 2к. onconfig неменялся. После увеличения буфферов до 500000 с 100000 и установки resident в 1 вроде скорость поднялась но чуть -чуть. Сервер работает круглосуточно, так что сливать базы и переразбивать массив кроме Нового года возможности нет. Кто что посоветует? onstat -p Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. free Код: plaintext 1. 2. 3. sar 1 10 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. onconfig Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 16:33 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Информации для советов маловато. FAQ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 16:48 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE BUFFERPOOL size=16K,buffers=100000,lrus=7,lru_min_dirty=50.000000,lru_max_dirty=60.000000Вы банально добавили эту строчку или еще что-то делали? хочу увидеть onstat -d (типа вы уверены что у вас raw device?) и sar -d 5 20 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 16:50 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Не ожидал таких быстрых отзывов :) спасибо! onconfig был составлен поставщиком ПО и 2 строчки последних уже были onstat -d Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 17:01 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE Код: plaintext 1. 2. 3. 4. BUFFERPOOL size=16K,buffers=100000,lrus=7,lru_min_dirty=50.000000,lru_max_dirty=60.000000 Ниче про размер страницы не понял. У вендора использовались 16к? Перешли на 2к? Буфер size=2K,buffers=500000 увеличивайте еще раза в 2. Один большой дибиспейс это круто, но обслуживается одним клинерс Покажите ls -l /dev/dbs ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 17:18 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Вендор судя по всему сделал 16к страницы, а я при создании ставил всё по умолчанию :( В инструкции на эту тему ничего небыло. ls -l /dev/dbs lrwxrwxrwx 1 root root 9 ÏÝÒ 2 13:00 /dev/dbs -> /dev/sdb3 Пересоздать пространство мне датут теперь только на следующий год :( ресурсов я смотрю хватает, можно ли поднять производительность каким либо образом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 17:26 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
onstat -g seg покажите и ls -l /dev/sdb3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 17:35 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
onstat -g seg IBM Informix Dynamic Server Version 10.00.FC3R1 -- On-Line -- Up 3 days 23:54:20 -- 2976568 Kbytes Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ls -l /dev/sdb3 brw-rw---- 1 informix informix 8, 19 ÏÝÒ 2 14:56 /dev/sdb3 onstat -g ioq Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 17:39 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
SHMVIRTSIZE 589824 # initial virtual shared memory segment size чтобы виртуальные сегменты не выделялись на ходу onstat -g seg (6 доп сегментов) BUFFERPOOL size=2K,buffers=2000000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.000000 BUFFERPOOL size=16K,buffers=1000,lrus=7,lru_min_dirty=50.000000,lru_max_dirty=60.000000 увеличим буфер 2k до 4G ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 17:56 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Спасибо Денис, попробую чуть позже, а то пользователи съедят :) Интересно то что загрузка по процам менее 50% и обращения к дисковому массиву около 30МБ/c что для него копейки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 17:58 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEоколо 30МБ/c что для него копейки.ага щаз. Любая субд это индексы -- индексы это рандомное чтение, рандомное чтение это в лучшем случае 10 мсек один диск, грубо говоря 10 дисков * 2кб / 0.01 сек = 1.9 мега/сек. покажите еще раз sar -dp 5 10 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 18:14 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Сорри не так выразился, до момента переразбивки скорость обмена с массивом попадалась на глаза до 90МБ/c, а сейчас около 30. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 18:21 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEСорри не так выразился, до момента переразбивки скорость обмена с массивом попадалась на глаза до 90МБ/c, а сейчас около 30.Что такое пераразбивка? я попросил повторить с ключиком p sar -d p 5 10 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 18:31 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
насчет слова переразбивка: я имел ввиду было rootdbs+tmpdbs+dbs+usr стало rootdbs+tmpdbs+dbs :) а sar -dp 5 10 - нет такого ключика sysstat ÒÕàáØï 5.0.5 (C) Sebastien Godard ¸áßÞÛì×ÞÒÐÝØÕ: sar [ ÞßæØØ... ] [ <ØÝâÕàÒÐÛ> [ <áçÕâçØÚ> ] ] ´ÞßãáâØÜëÕ ÞßæØØ: [ -A ] [ -b ] [ -B ] [ -c ] [ -d ] [ -H ] [ -h ] [ -i <ØÝâÕàÒÐÛ> ] [ -q ] [ -r ] [ -R ] [ -t ] [ -u ] [ -v ] [ -V ] [ -w ] [ -W ] [ -y ] [ -I { <irq> | SUM | ALL | XALL } ] [ -P { <cpu> | ALL } ] [ -n { DEV | EDEV | SOCK | FULL } ] [ -x { <pid> | SELF | ALL } ] [ -X { <pid> | SELF | ALL } ] [ -o [ <ØÜï_äÐÙÛÐ> ] | -f [ <ØÜï_äÐÙÛÐ> ] ] [ -s [ <hh:mm:ss> ] ] [ -e [ <hh:mm:ss> ] ] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 18:36 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEСорри не так выразился, до момента переразбивки скорость обмена с массивом попадалась на глаза до 90МБ/c, а сейчас около 30.Если на самом деле были 16к страницы, то ничего удивительного в том что рейд показывал большую производительность. Например надо считать с диска строку размер 15 байт, считываем страницу 2к, получаем произ-ть рейда 10мег/сек, а если страница 16к то произ-ть рейда будет 80мег/сек, но толку-то? нам-то надо 15 байт, лишние считанные (16к-15байт) может и не понадобятся. Поэтому некоторые меряют производительность в iops (Input/Output operations Per Second), но в общем случае это тоже фигня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 18:46 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Согласен. Завтра с утра Информикс перезапущу, посмотрим на результат. Спасибо Денис. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 18:52 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
как мне кажется есть еще одна маленькая проблема -- двойная буферизация ls -l /dev/sdb3 b rw-rw---- блочное устройство Код: plaintext 1. 2. 3. Код: plaintext 1. 2. Т.е. мне кажется что все читает и пишет информикс дублируется в кэш линуса. И как это лечить я догадываюсь но не уверен, может гуру подскажут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 18:57 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
ну и еще одно замечание: танцы вокруг параметров информикса и параметров системы, обычно дают выигрыш 10-15%, исправление неоптимальных планов и устранение проблем с блокировками дают 10-100 раз. Поэтому когда пользователи жалуются на что-то надо смотреть что делает его конкретная сессия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 19:35 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
PS: Справочник администратора IBM Informix Dynamic Server DIRECT_IO (UNIX) - http://publib.boulder.ibm.com/infocenter/idshelp/v111/index.jsp?topic=/com.ibm.adref.doc/adref69.htm С уважением, Вадим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 21:57 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
GVF112GVFPS: Справочник администратора IBM Informix Dynamic Server DIRECT_IO (UNIX) - http://publib.boulder.ibm.com/infocenter/idshelp/v111/index.jsp?topic=/com.ibm.adref.doc/adref69.htm С уважением, Вадим. http://publib.boulder.ibm.com/infocenter/idshelp/v111/index.jsp?topic=/com.ibm.adref.doc/adref69.htm Новые возможности в IBM Informix Dynamic Server версии 11.10 Прямой ввод-вывод можно задать при помощи нового параметра конфигурации DIRECT_IO. Ура. Дождались. Еще бы авторасширение датафайлов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2008, 23:58 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Журавлев ДенисОдин большой дибиспейс это круто, но обслуживается одним клинерс Точнее скажем один большой чанк. Топикстартер не внял моему совету, и не привел рекомендованные FAQ-ом параметры onstat-a. Тогда можно было бы судить справляется ли этот один cleaners (официант) или нет с одним большим чанком (столом), а не гадать на кофейной гуще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 09:26 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE... PHYSBUFF 32 # Physical log buffer size (Kbytes) LOGBUFF 32 # Logical log buffer size (Kbytes)Я бы увеличил эти параметры - навряди эти значения подходят для вашей систьемы. Покажите onstat -l, тогда станет ясно, насколько. Присоединяюсь к Daugava - покажите onstat -a. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 10:27 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Журавлев Денискак мне кажется есть еще одна маленькая проблема -- двойная буферизация ls -l /dev/sdb3 b rw-rw---- блочное устройство Код: plaintext 1. 2. 3. Код: plaintext 1. 2. Т.е. мне кажется что все читает и пишет информикс дублируется в кэш линуса. И как это лечить я догадываюсь но не уверен, может гуру подскажут. Я не считаю себя гуру, но знаю как. 1. Внимательно читаем man raw если он есть в системе. Останавливаем Informix. 2. Для автоматического мапинга блочных девайсов в raw при старте системы в файле /etc/sysconfig/rawdevices добавляем строчку /dev/raw/raw1 /dev/sdb3 /etc/sysconfig/rawdevices # This file and interface are deprecated. # Applications needing raw device access should open regular # block devices with O_DIRECT. # raw device bindings # format: <rawdev> <major> <minor> # <rawdev> <blockdev> # example: /dev/raw/raw1 /dev/sda1 # /dev/raw/raw2 8 5 /dev/raw/raw1 /dev/sdb3 Команду raw 1 раз можно выполнить руками. raw /dev/raw/raw1 /dev/sdb3 3. выполняем rm -f /dev/dbs ln -s /dev/raw/raw1 /dev/dbs chown informix:informix /dev/raw/raw1 chmod 660 /dev/raw/raw1 chown -h informix:informix /dev/dbs 4. Перезагружаем сервер, для контроля мапинга raw при старте системы через /etc/sysconfig/rawdevices. 5. Если Informix не стоит в автостарте , поднимаем базу. з.ы. В версии 9.4 это срабатывало на ура. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 11:04 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Доброе всем утро и спасибо за внимание! onstat -a получился аж на 12 метров, может из него что конкретное надо ? Сегодня поднял еше кол-во буферов до 2000000 и перезапустил Информикс. Вчерашние запросы выполнявшиеся по 2 мин, отрабатывают сегодня за 40 сек. После отработки запроса, повторные его запуски отрабатывают за 1-2 сек. onstat -l IBM Informix Dynamic Server Version 10.00.FC3R1 -- On-Line (CKPT REQ) -- Up 01:46:22 -- 6552712 Kbytes Blocked:CKPT Physical Logging Buffer bufused bufsize numpages numwrits pages/io P-2 0 16 2672530 179354 14.90 phybegin physize phypos phyused %used 1:263 5000 4996 3753 75.06 Logical Logging Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io L-1 0 16 777 765 765 1.0 1.0 Subsystem numrecs Log Space used OLDRSAM 777 28148 address number flags uniqid begin size used %used 1b0b02920 1 U-B---- 1 1:15263 5000 5000 100.00 1b0b02988 2 U-B---- 2 1:20263 5000 5000 100.00 1b0b029f0 3 U-B---- 3 1:25263 5000 5000 100.00 1b0b02a58 4 U-B---- 4 1:30263 5000 5000 100.00 1b0b02ac0 5 U-B---- 5 1:35263 5000 5000 100.00 1b0b02b28 6 U-B---- 6 1:40263 5000 5000 100.00 1b0b02b90 7 U-B---- 7 1:45263 5000 5000 100.00 1b0b02bf8 8 U-B---- 8 1:50263 5000 5000 100.00 1b0b02c60 9 U-B---- 9 1:55263 5000 5000 100.00 1b0b02cc8 10 U-B---- 10 1:60263 5000 5000 100.00 1b0b02d30 11 U-B---- 11 1:65263 5000 5000 100.00 1b0b02d98 12 U-B---- 12 1:70263 5000 5000 100.00 1b0b02e00 13 U-B---- 13 1:75263 5000 5000 100.00 1b0b02e68 14 U-B---- 14 1:80263 5000 5000 100.00 1b0b02ed0 15 U-B---- 15 1:85263 5000 5000 100.00 1b0b02f38 16 U-B---- 16 1:90263 5000 5000 100.00 1b0b02fa0 17 U-B---- 17 1:95263 5000 5000 100.00 1b0aecc50 18 U-B---- 18 1:100263 5000 5000 100.00 1b0aeccb8 19 U-B---- 19 1:105263 5000 5000 100.00 1b0aecd20 20 U-B---- 20 1:110263 5000 5000 100.00 1b0aecd88 21 U-B---- 21 1:115263 5000 5000 100.00 1b0aecdf0 22 U-B---- 22 1:120263 5000 5000 100.00 1b0aece58 23 U---C-L 23 1:125263 5000 1163 23.26 1b0aecec0 24 A------ 0 1:130263 5000 0 0.00 1b0aecf28 25 A------ 0 1:135263 5000 0 0.00 1b0aecf90 26 A------ 0 1:140263 5000 0 0.00 1b02fe230 27 A------ 0 1:145263 5000 0 0.00 1b02fe298 28 A------ 0 1:150263 5000 0 0.00 1b02fe300 29 A------ 0 1:155263 5000 0 0.00 1b02fe368 30 A------ 0 1:160263 5000 0 0.00 1b02fe3d0 31 A------ 0 1:165263 5000 0 0.00 1b02fe438 32 A------ 0 1:170263 5000 0 0.00 1b02fe4a0 33 A------ 0 1:175263 5000 0 0.00 33 active, 33 total ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 11:25 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE IBM Informix Dynamic Server Version 10.00.FC3R1 -- On-Line (CKPT REQ) -- Up 01:46:22 -- 6552712 Kbytes Blocked:CKPT А сколько времени у вас занимает выполнение контрольной точки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 11:35 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEДоброе всем утро и спасибо за внимание! onstat -a получился аж на 12 метров, может из него что конкретное надо ? пожать и выложить на slil.ru KrukovSE Сегодня поднял еше кол-во буферов до 2000000 и перезапустил Информикс. что теперь free показывает? KrukovSE Вчерашние запросы выполнявшиеся по 2 мин, отрабатывают сегодня за 40 сек. После отработки запроса, повторные его запуски отрабатывают за 1-2 сек. А до перехода сколько они выполнялись? Может статистика не собрана? План запроса съехал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 11:42 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE Если посмотреть на конфигурацию которую вы сделали в ней ИМХО есть несколько неприятных моментов: 1. Объединив все диски в один большой том вы потенциально сделали бутылочное горлышко в драйвере ОС. когда iostat -x >iostat.log в поле avgqu-sz будет иметь значение больше 10 считайте что вы в него попали. 2. Уменьшив размер страницы до 2 К вы будете иметь потенциальную проблему с исчерпыванием количества страниц табличном пространстве. Это значение ограничено приблизительно 16 000 000 страниц. Когда они исчерпаются записи в таблицу вы добавить не сможете. Точно ошибку я не помню, звучит она что то типа "no more extents" Посмотреть количество страниц в табличном пространстве можно через oncheck -pt ...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 11:43 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
onstat- 1. Объединив все диски в один большой том вы потенциально сделали бутылочное горлышко в драйвере ОС. С 10-ю дисками? Не думаю. В дисковый массив раньше упрется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 11:46 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
По поводу чекпоинтов - 10:44:25 Maximum server connections 182 10:44:27 Checkpoint Completed: duration was 0 seconds. 10:44:27 Checkpoint loguniq 23, logpos 0x586018, timestamp: 0xd799cd7 10:44:27 Maximum server connections 182 10:44:29 Checkpoint Completed: duration was 1 seconds. 10:44:29 Checkpoint loguniq 23, logpos 0x587018, timestamp: 0xd79f6d7 10:44:29 Maximum server connections 182 10:44:31 Checkpoint Completed: duration was 1 seconds. 10:44:31 Checkpoint loguniq 23, logpos 0x588018, timestamp: 0xd7a5c63 10:44:31 Maximum server connections 182 10:44:33 Checkpoint Completed: duration was 1 seconds. 10:44:33 Checkpoint loguniq 23, logpos 0x589018, timestamp: 0xd7ab8cc 10:44:33 Maximum server connections 182 10:44:35 Checkpoint Completed: duration was 1 seconds. 10:44:35 Checkpoint loguniq 23, logpos 0x58a018, timestamp: 0xd7b1035 Дисковый массив 10 рейд на DS4300 - 14 Fiber SCSI 15.000 по 36G - довольно быстрая железяка :) В предыдущем варианте МАХ у нас работал на IDS7 и Unixware масив был разбит на чанки по 2г. Приобрели RedHat 4(64) b Informix 10 вендор разбил дисковый массив на 2 раздела DBS и USR Со временем размеры баз выросли и места стало на DBS нехватать, поэтому и объединили в 1 раздел. Массив разбил fdisk на rootdbs, tmpdbs, dbs. Неформатировал разделы. Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 12:01 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
onstat -a http://slil.ru/25332757 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 12:07 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис onstat- 1. Объединив все диски в один большой том вы потенциально сделали бутылочное горлышко в драйвере ОС. С 10-ю дисками? Не думаю. В дисковый массив раньше упрется. В этой конфигурации тяжело сказать где раньше упрется. Если даже упрется в контроллер то большая очередь операций ВВ как раз об этом и говорит. Большая очередь это следствие, а не причина. Причины глубже. Утилиты контролера могут показывать что там еще полно свободных ресурсов, но из за сериализации доступа( например на операции записи) к единственному тому контроллер их просто задействовать их не сможет. Было бы несколько томов( второй том контролеер мог бы паралельно читать), и очередь в дарйвере была бы короче и контроллер нагружен лучше, а следственно и производительность выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 12:17 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEonstat -l IBM Informix Dynamic Server Version 10.00.FC3R1 -- On-Line (CKPT REQ) -- Up 01:46:22 -- 6552712 Kbytes Blocked:CKPT Physical Logging Buffer bufused bufsize numpages numwrits pages/io P-2 0 16 2672530 179354 14.90 phybegin physize phypos phyused %used 1:263 5000 4996 3753 75.06 Logical Logging Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io L-1 0 16 777 765 765 1.0 1.0 Subsystem numrecs Log Space used OLDRSAM 777 28148 ...Я бы увеличил PHYZBUF до 128 (возможно и больше, смотря по результатам...). На большинстве запросов это не скажется, но некоторые могут заметно ускориться. Из Ваших предыдущих сообщений я понял, что раньше база данных лежала в dbspace'е с размером страницы 16Кб, а ныне - с размером 2 Кб - это правильно? И данные и индексы лежат в одном dbspace'е? Переход к меньшему размеру страницы для индексов мог привести к значительному увеличению их высоты и, как следствие, к замедлению выполнения запроса. Часто ли вы обновляете статистику? Можете выполнить такой запрос к Вашей базе данных: SELECT idxname, owner, tabid, idxtype, clustered, levels, leaves, nunique, clust FROM sysindexes ORDER BY levels DESC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 13:10 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Статистику обновляем редко - работа круглосуточная :( Результат запроса (часть): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. physbuf - 128 попробую попозже, окошко будет. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 13:42 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEСтатистику обновляем редко - работа круглосуточная :(Это Вы зря. Если статистика неадекватная, никакие настройки сервера не помогут. KrukovSEРезультат запроса (часть): idxname owner tabid idxtype clustered levels leaves nunique clust nvtrn_keyciss informix 285 U 6 704234 6101839 4614795 nvtrn_serkey maxmast 285 D 5 184417 2724337 15199270 nvtrn_serkey1 maxmast 285 D 5 199677 2724337 15167747 ... Ничего особо выдающегося, как хорошего, так и плохого. В большой базе ничего другого ожидать не приходится... А то, что после заполнения кэша запросы выполняются за 1-2 секунды, решило ваши проблемы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 15:30 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
На данный момент жалоб нет, посмотрим когда запустят расчеты MRP (пока их непроизводили) А вообсче, благодаря этой проблемке, у меня сложилось впечатление что из нашего сервера можно было выжать гораздо больше чем было со с настройками продавца ПО. :) Спасибо всем, за помощь :) Есче мыслишка... Есть у нас еше SATA стойка и места на ней хватает, как промежуточный вариант можно сделать есче один дбспейс слить туда базы и переделать основной массив :) Только есть проблема: заливка баз и создание индексов идут двое суток. Можно попробовать onunload вместо dbimport, но это тоже время. Можно ли каким-либо другим образом переместить базу с одного dbspace в другой вместе с индексами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 16:02 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEНа данный момент жалоб нет, посмотрим когда запустят расчеты MRP (пока их непроизводили) А вообсче, благодаря этой проблемке, у меня сложилось впечатление что из нашего сервера можно было выжать гораздо больше чем было со с настройками продавца ПО. :) Спасибо всем, за помощь :) Есче мыслишка... Есть у нас еше SATA стойка и места на ней хватает, как промежуточный вариант можно сделать есче один дбспейс слить туда базы и переделать основной массив :) Только есть проблема: заливка баз и создание индексов идут двое суток. Можно попробовать onunload вместо dbimport, но это тоже время. Можно ли каким-либо другим образом переместить базу с одного dbspace в другой вместе с индексами? Если стоит задача минимизировать простой то можно, только очень акуратно, с помощью alter fragment превести заполнение таблиц в новый dbspace( на новом массиве), и через несколько месяцев когда старыми данными никто ( или практически никто) активно пользоваться уже не будет, сделать detach старого фрагмента в отдельную таблицу, затем через insert ... select перенести записи в новую. Едиственное нужно будет перестроить уникальные индексы, потому как они фрагментируются только тогда, когда условие фрагментации таблицы присутствует в индексе. То есть уникальные индексы полность останутся в старом dbspace. Если делать все внимательно и все зараннее просчитав и протестировав , проблем быть не должно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 16:33 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEЕсче мыслишка... Есть у нас еше SATA стойка и места на ней хватает, как промежуточный вариант можно сделать есче один дбспейс слить туда базы и переделать основной массив :) Только есть проблема: заливка баз и создание индексов идут двое суток. Можно попробовать onunload вместо dbimport, но это тоже время. Можно ли каким-либо другим образом переместить базу с одного dbspace в другой вместе с индексами? Можно. Использовать зеркалирование средствами Информикс. Создать зеркало всех пространств того же размера на новом массиве , подождать пока синхронизируется (на это время производительность просядет, но можно сделать ночью), а затем разорвать зеркало, отключив основной массив (не физически, конечно :) К сожалению, потом, для возврата на основной, уже переразбитый массив, уже нельзя будет применить ту же технологию. Кстати, если есть допол.массив, то выполнить переразбивку можно сразу - создать там несколько dbspaces с нужными размерами страниц (и с чанками размером по 10-20Г) и переносить таблицы по одной стандартным alter fragment (вместе с индексами). Для больших таблиц могут быть длинные транзакции (добавить лог.жуурналов) и блокировки, но на ночь можно оставлять. А затем использовать зеркалирование для возврата на основной массив. На всякий случай напомню, что при любых операциях желательно страховаться бэкапами :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 21:39 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Из беглого анализа информации могу заметить: - очень маленький размер физжурнала (10М для такой нагрузки могут вылезти боком) - недопустимо маленькое число LRUS (обязательно увеличить для такого размера кеша) - обязательно увеличить CLEANERS - можно вообще убрать кеш для 16К страниц, раз их пока нет в ДБ-пространствах (только зря память расходуется) - обязательно хорошо увеличить SHMVIRTSIZE (кажется, кто то уже говорил) - советовал бы установит RA_PAGES и RA_THRESHOLD в значения хотя бы 64 32 - странно маленькое число транзакций (то ли у вас не OLTP, то ли специфика приложения...) - довольно странное (как для меня) соотношение usercpu и syscpu (78002.31 41276.13) обычно на тех тяжелых системах, что я вижу, соотношение не ниже 80 к 20, а здесь в основном идет работа с дисками (в том числе и tempdbs). Я бы лучше сделал 2 или 3 tempdbs суммарно того же размера. И несколько вопросов: "после переразбивки 240г залили бызы" - как залили ? dbimport-ом ? А статистика там точно собиралась или сократили за недостатком времени на миграцию ? Почему то мне кажется, что оптимальный сбор статистики вам бы очень помог :) А процов 8 честных или это 4-е 2-х ядерных или два по 4 ? А системный /tmp на 5-м рейде ? А не стоит ли в окружении PSORT_DBTEMP на него ? И почему бы не поставить PSORT_NPROCS=4 (например) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2008, 22:58 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Упс, столько вопросов... Продолжаем изучать информикс :) После переразбивки 240г залили бызы dbimport-ом. Cтатистика точно собиралась. Процессоров - 8 честных ( 2 ящика IBMx460 по 4CPU) (нравится мне эта железяка :) ) Системный tmp точно на 5 рейде из 3х дисков, там же и swap для системы. В окружении PSORT_DBTEMP и PSORT_NPROCS=4 вообще не выставлены ....... как я прочитал "Необходимо отметить, что, если установлен параметр DBSPACETEMP или переменная окружения DBSPACETEMP, то для записи временных файлов при сортировках используются указанные dbspace’ы. Если они не установлены и не установлена переменная PSORT_DBTEMP, то используется директория /tmp". На тему дбспейсов: у нас на массиве из 14 дисков - 1рейд 10го уровня, затем ентот большой диск разбит на rootdbs, tmpdbs, dbs. В плане производительности это нормальный вариант или лучше создать например 2массива 10 рейда например rootdbs+tmpdbs и dbs? На счет изменения остальных переменных - обязательно попробую, только ввот время на остановку сервера выбить очень тяжело. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 10:49 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
PHYSFILE маловат, из-за этого имеем достаточно частые чекпоинты. Я так понимаю, смысла увеличивать CLEANERS нету, поскольку все "официанты" (CLEANERS-ы) будут толкаться все равно за одним "столом" (чанком). Т.е. до добавления новых чанков смысла нет. LRUS все равно не используется и если не трогать LRU_MAX_DIRTY, LRU_MIN_DIRTY использоватся скорее всего не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 10:57 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Стоит учесть, что с параметрами надо играться комплексно. Увеличив PHYSFILE без разбиения чанков, увеличения cleanears и игры с LRUS-ами, у вас получится скорее всего следующая ситуация. Общая производительность системы вырастет. Но появится проблема "длинный чекпоинт", во время которой запросы пользователей будут терпеливо ждать, пока он закончится. Для длительных запросов скорее всего время ожидания будет несущественно, но для коротеньких оно вылезет боком. Поэтому впервую очередь, я задумался бы о создании нового dbspace и постепенного переноса туда хотя бы маленьких табличех. Учитывая, что любый табличные операции вызовут простой системы, получаем, что без особого ущерба и длительной остановки все что можно сделать - выполнить советы Василия по temp-у. Ну и PHYSFILE, только не меняйте его слишком резко, помониторьте как изменятся чекпоинты (их частота и длительность). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 11:21 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Алексан... Переход к меньшему размеру страницы для индексов мог привести к значительному увеличению их высоты и, как следствие, к замедлению выполнения запроса. LOG(100000000;16348) =~ 2 LOG(100000000;2048) =~ 2 А еще возможно уменьшилась конкуренция за хотблоки поэтому возможно многие олтп запросы ускорились. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 11:30 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE... Есче мыслишка... Есть у нас еше SATA стойка и места на ней хватает, как промежуточный вариант можно сделать есче один дбспейс слить туда базы и переделать основной массив :) Только есть проблема: заливка баз и создание индексов идут двое суток. Можно попробовать onunload вместо dbimport, но это тоже время. Можно ли каким-либо другим образом переместить базу с одного dbspace в другой вместе с индексами?Зачем вам этот гемор? Если вы не знаете в чем ваши проблемы, зачем пробовать все лекарства подряд? Это может вас убить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 11:32 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
onstat- Большая очередь это следствие, а не причина. Вот именно. Длинная очередь говорит о кривой базе и запросах, а не проблемах в ВВ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 11:34 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
а /dev/sdb -- это tempdbs временный спейс? Если в нем толкаются сорт и хеш таблицы то надо DS_NONPDQ_QUERY_MEM 256 , потом можно еще увеличить если озу свободное останется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 11:40 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис LOG(100 000 000;16348) =~ 2 LOG(100 000 000;2048) =~ 2 Ступил. В таблице 100 млн. записей, size ключа индекса 20 байт LOG(100 000 000;16348/20) = 3 LOG(100 000 000;2048/20) = 4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 11:48 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
onstat- 1. Объединив все диски в один большой том вы потенциально сделали бутылочное горлышко в драйвере ОС. когда iostat -x >iostat.log в поле avgqu-sz будет иметь значение больше 10 считайте что вы в него попали. Поддерживаю. Поэтому я бы сделал несколько 10-х рейдов (как минимум два) и один уровня 0 (страйпинг) или просто пару отдельных дисков, на которые положил бы несколько tempdbs onstat- 2. Уменьшив размер страницы до 2 К вы будете иметь потенциальную проблему с исчерпыванием количества страниц табличном пространстве. Это значение ограничено приблизительно 16 000 000 страниц. Когда они исчерпаются записи в таблицу вы добавить не сможете. Я бы уточнил, что это ограничение на кол-во страниц в ОДНОМ ФРАГМЕНТЕ таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 12:42 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
DaugavaLRUS все равно не используется и если не трогать LRU_MAX_DIRTY, LRU_MIN_DIRTY использоватся скорее всего не будет. Не понял выражения "LRUS все равно не используется". Возможно, ты имел ввиду "LRU Writes" ? Но я имел ввиду именно количество очередей LRUS, которое очень сильно даже влияет, особенно при таких больших объемах буферного пула. Ведь даже для поиска свободного буфера в цепочке из 100 тыс требуется значительно время и на это время вся эта цепочка буферов (очередь) будет залочена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 13:03 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
DaugavaСтоит учесть, что с параметрами надо играться комплексно. Увеличив PHYSFILE без разбиения чанков, увеличения cleanears и игры с LRUS-ами, у вас получится скорее всего следующая ситуация. Общая производительность системы вырастет. Но появится проблема "длинный чекпоинт", во время которой запросы пользователей будут терпеливо ждать, пока он закончится. Пусть эта проблема сначала появится :) А бороться с ней можно другими способами, но уж никак не маленьким размером PHYSFILE. На более старых версиях я наблюдал крах системы из=за переполнения физжурнала. Подозреваю, что в новых версиях что то на эту тему сделали безопасней, но я бы не рисковал. DaugavaУчитывая, что любый табличные операции вызовут простой системы, получаем, что без особого ущерба и длительной остановки все что можно сделать - выполнить советы Василия по temp-у. Ну и PHYSFILE, только не меняйте его слишком резко, помониторьте как изменятся чекпоинты (их частота и длительность). Представленная статистика показывает, что КТ возникает каждые 2 (!) секунды, а физжурнал заполнен на 75%. Это очень не нормально и, возможно, именно КТ и являются одним из тормозов системы (посмотрите только на ckpwaits=2459 при numckpts=648). Поэтому предлагаю увеличить PHYSFILE сразу и существенно, хотя бы до 200М. Мониторить длительность КТ, конечно же, нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 13:10 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
vasilisИз беглого анализа информации могу заметить: - довольно странное (как для меня) соотношение usercpu и syscpu (78002.31 41276.13) обычно на тех тяжелых системах, что я вижу, соотношение не ниже 80 к 20 Понял, откуда такое соотношение. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. К сожалению, нет под рукой текущей статистики для Линукс-платформы, поэтому подскажите - это нормально, или может говорить о каких сетевых проблемах ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 13:32 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Доброго всем дня! На данный момент интересные результаты появились: (увеличил buffers до 2 000 000 и SHMVIRTSIZE вчера) некоторые отчеты выпускавшиеся до 30мин стали выполняться за 5-6 мин. загрузка процессоров в пределах 60-70%. Сейчас увеличил PHYSBUFF c 32 до 128 PHYSFILE c 10000 до 100000 перезапустил Информикс, на данный момент чекпоинты выросли до 3-7сек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 14:48 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Журавлев Дениса /dev/sdb -- это tempdbs временный спейс? Если в нем толкаются сорт и хеш таблицы то надо DS_NONPDQ_QUERY_MEM 256 , потом можно еще увеличить если озу свободное останется Насколько я помню, это в КБ. Тогда 256 маловато будет. Можно хотя бы 1М. При наличии 16Г на сервере грех не воспользоваться возможностями :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 14:49 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEНа данный момент интересные результаты появились: (увеличил buffers до 2 000 000 и SHMVIRTSIZE вчера) некоторые отчеты выпускавшиеся до 30мин стали выполняться за 5-6 мин. загрузка процессоров в пределах 60-70%. Отлично. Даже не думал, что так резко подскочит. Желательно представить onstat -p за пару часов работы. KrukovSE Сейчас увеличил PHYSBUFF c 32 до 128 PHYSFILE c 10000 до 100000 перезапустил Информикс, на данный момент чекпоинты выросли до 3-7сек. Не страшно, если КТ стала выполняться один раз в 5 минут (а ранее по 1 сек. но 100 раз за те же 5 минут). Тем не менее, можно будет уменьшить. Нужна статистика и отрезок из лога за последние пару часов, после изменения параметров. Итак, желательно пр5едставить: - новый действующий onconfig - последних несколько десятков записей из общего журнала сообщений - onstat -l - onstat -p - результат запроса Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 15:03 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
При использовании DS_NONPDQ_QUERY_MEM надо также смотреть за значением PDQPRIORITY. Должно быть установлено в 0 (для всего сервера или для конкретной сессии) если хотим использовать сортировки в памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 16:18 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
От пользователей пока тишина..... привыкли видать к тормозам :) свежая статистика: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. Результат жуткого запроса :) почему-то в одну строчку (могет из-за ISQL) ===== Logs Profile ============|max|max| 0 02:06:51|-------------------------------|--Onconfig Effective--|128|rootdbs|100000|----|32|33|33.0|10000|330000.0|----|MANUAL|/dev/null||70|80|-------------------------------|-- Physical_log --|0.98|3298471|52543|62.78|26002.92|414.21|-- Logical_logs --|0.15|6196|48.85|686|9.03|5.41|282|21.97|2.43|2.22|24|-- Transactions --|637|0|9.73|0| ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 17:32 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE http://slil.ru/25339625 Так я же столько и не просил, я же всего то хотел onconfig и вырезку из лога для контроля КТ. KrukovSE onstat -l IBM Informix Dynamic Server Version 10.00.FC3R1 -- On-Line -- Up 03:04:08 -- 6552904 Kbytes Physical Logging Buffer bufused bufsize numpages numwrits pages/io P-2 0 64 4925623 78507 62.74 phybegin physize phypos phyused %used 1:182793 50000 4069 17984 35.97 Logical Logging Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io L-3 0 16 6778 764 344 8.9 2.2 Subsystem numrecs Log Space used OLDRSAM 6778 999264 Физжурналу значительно полегчало, хотя можно еще увеличить буфер (до 256) А вот буфера логического журнала слабо нагружены - похоже, что у вас БД в unbuffered logging KrukovSE Результат жуткого запроса :) почему-то в одну строчку (могет из-за ISQL) ===== Logs Profile ============|max|max| 0 02:06:51|-------------------------------|--Onconfig Effective--|128|rootdbs|100000|----|32|33|33.0|10000|330000.0|----|MANUAL|/dev/null||70|80|-------------------------------|-- Physical_log --|0.98|3298471|52543|62.78|26002.92|414.21|-- Logical_logs --|0.15|6196|48.85|686|9.03|5.41|282|21.97|2.43|2.22|24|-- Transactions --|637|0|9.73|0| Ой, что то страшное и непонятное :) Должно было быть типа такого (красивого и понятного :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. И для меня очень неожиданное соотношение: - очень большая нагрузка на физжурнал (около 7 раз в секунду сбрасывается практически полный буфер , т.е. около 130К*7) - в то же время мизерная нагрузка на логический журнал (2 раза в минуту (!) по 2,5 страницы) Мне непонятен такой дисбаланс. Может кто то объяснит, что это за странные транзакции такие ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2008, 20:46 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
vasilis Тем не менее, кое-какие цифры я расшифровал. И для меня очень неожиданное соотношение: - очень большая нагрузка на физжурнал (около 7 раз в секунду сбрасывается практически полный буфер , т.е. около 130К*7) - в то же время мизерная нагрузка на логический журнал (2 раза в минуту (!) по 2,5 страницы) Мне непонятен такой дисбаланс. Может кто то объяснит, что это за странные транзакции такие ?Либо база без транзакций, либо в апдейтятся таблицы с очень длинными строками (row), при этом само содержимое не меняется, поэтому дельта пишущаяся в лог. журнал равна нулю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2008, 14:33 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSEперезапустил Информикс, на данный момент чекпоинты выросли до 3-7сек.Что с кешем и батарейкой у DS4300? У вас какой вариант? DS4300Базовая модель: 256 МБ (с одним контроллером) или 512 МБ (с двумя контроллерами), защищен батареей В варианте Turbo: в общей сложности 2 ГБ, защищен батареей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2008, 14:42 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис vasilis Тем не менее, кое-какие цифры я расшифровал. И для меня очень неожиданное соотношение: - очень большая нагрузка на физжурнал (около 7 раз в секунду сбрасывается практически полный буфер , т.е. около 130К*7) - в то же время мизерная нагрузка на логический журнал (2 раза в минуту (!) по 2,5 страницы) Мне непонятен такой дисбаланс. Может кто то объяснит, что это за странные транзакции такие ?Либо база без транзакций, либо в апдейтятся таблицы с очень длинными строками (row), при этом само содержимое не меняется, поэтому дельта пишущаяся в лог. журнал равна нулю. Логично. О базе без транзакций в данном случае (явно промышленное использование) я даже не подумал. Хотя, каких то 600 штук за 2 часа все таки комиттится. Может посмотрим транзакционную нагрузку ? (если автор позволит выполнить еще один запросик :) Вот только бы результат получить уже в нормальном виде :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2008, 16:35 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Кэш включен, батарейки только поменяли. DS4300 TURBO. Результат запроса: ______________ ===== Weight of transaction ==== hostname max dbserver_name max statistic_time 3 20:45:57 ______________ ------------------------------- __________ -- All-Transactions -- commits 1503 __trans_per_sec 0.00 __trans_per_min 0.3 __aver_sec_trans 222.19 rollbacks 0 _logrecords_per_t 11.9 long_transact 0 __________ --Read-Write-per-Transaction-- _disk_reads_per_t 21181.9 _page_reads_per_t 53639.0 _buff_reads_per_t 16984776.9 _pages_per_read 2.5 _page_reads_pmin 14484.40 _buf_reads_pmin 4586480.24 __________ -- _disk_writ_per_t 93715.8 _page_writ_per_t 203150.5 _buf_writes_per_t 1235175.6 _pages_per_writes 2.2 _page_writes_pmin 54857.70 _buf_writes_pmin 333540.34 __________ ----- _lockreq_per_trans 7081839 _sorts_per_trans 66.01 __________ --Weight-- _weight_reads_ptr 563182.3 _weight_writes_ptr 240205.8 __weight_per_trans 803388.1 __weight_per_sec 3615.71 ______________ ------------------------------- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2008, 11:12 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Спасибо всем за помощь, за 2 дня работы жалоб от пользователей нет! В некоторых случаях, например формирование отчетов раз в 6 быстрее. А запросы с которых и началась разборка, вместо 40 сек - 5сек Так что весьма признателен :) Но как всегда, хочется лучше... на данный момент CPU загружены на 40-50% и памяти еще 5г свободно. onstat -g mgm IBM Informix Dynamic Server Version 10.00.FC3R1 -- On-Line -- Up 1 days 23:39:30 -- 4935500 Kbytes Memory Grant Manager (MGM) -------------------------- MAX_PDQPRIORITY: 100 DS_MAX_QUERIES: 14 DS_MAX_SCANS: 1048576 DS_NONPDQ_QUERY_MEM: 128 KB DS_TOTAL_MEMORY: 1792 KB Queries: Active Ready Maximum 0 0 14 Memory: Total Free Quantum (KB) 1792 1792 128 Scans: Total Free Quantum 1048576 1048576 1 Load Control: (Memory) (Scans) (Priority) (Max Queries) (Reinit) Gate 1 Gate 2 Gate 3 Gate 4 Gate 5 (Queue Length) 0 0 0 0 0 Active Queries: None Ready Queries: None Free Resource Average # Minimum # -------------- --------------- --------- Memory 0.0 +- 0.0 224 Scans 0.0 +- 0.0 1048576 Queries Average # Maximum # Total # -------------- --------------- --------- ------- Active 0.0 +- 0.0 0 0 Ready 0.0 +- 0.0 0 0 Resource/Lock Cycle Prevention count: 0 То есть параллельные запросы отсутствуют? Это прописывается в самих запросах или можно принудительно попробовать? И куда можно еще оперативку использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2008, 15:56 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Параллельные запросы не будут использоваться если не выполняется ряд условий, в частности фрагментация таблицы участвующей в запросе, установка переменной окружения для программы PDQPRIORITY не в 0, или выполнение в сессии оператора "set pdqpriority значение". В случае использования PDQ вы практически не используете имеющуюся память поскольку DS_TOTAL_MEMORY: 1792 KB это очень мало! Сделайте для начала DS_TOTAL_MEMORY = 25 % от объема SHMVIRTSIZE. Это можно сделать без перезагрузки информикса например: onmode -M 128000 (делает общий размер памяти выделяемый под PDQ 128000 Кб) Теперь для не PDQ запросов. Что показывает на вашей системе onstat -g env|grep PDQ ? если при старте информикса переменная PDQPRIORITY была установлена в 0 то вполне можете воспользоваться сортировками в памяти, сделав для начала DS_NONPDQ_QUERY_MEM = 512 (ее также можно в онлайне переустановить). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2008, 17:42 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE на данный момент CPU загружены на 40-50% и памяти еще 5г свободно. ........ И куда можно еще оперативку использовать? Не торопитесь сильно использовать. Эта оперативка очень пригодится здесь: Журавлев Денискак мне кажется есть еще одна маленькая проблема -- двойная буферизация ls -l /dev/sdb3 b rw-rw---- блочное устройство Код: plaintext 1. 2. 3. Код: plaintext 1. 2. Т.е. мне кажется что все читает и пишет информикс дублируется в кэш линуса. И как это лечить я догадываюсь но не уверен, может гуру подскажут. Как лечить я описывал на первой странице. Когда полечите тогда можете использовать, иначе недостаток памяти для кеша ФС может очень сильно повысить syscpu или хуже того система начнет лезть в своп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2008, 18:46 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
Ок, попробую разобраться сначала с блочным устройством Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2008, 09:34 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
KrukovSE(увеличил buffers до 2 000 000 и SHMVIRTSIZE вчера) некоторые отчеты выпускавшиеся до 30мин стали выполняться за 5-6 мин. ... перезапустил Информикс, на данный момент чекпоинты выросли до 3-7сек. KrukovSEКэш включен, батарейки только поменяли. DS4300 TURBO.Ну таки и сколько кеш на запись? Предположим он равен гигабайту, сделаем так чтобы во время чекпоинта на диск скидывалось приблизительно 750мб 0.75/4*100%=18,75% т.е. выставьте BUFFERPOOL size=2K,buffers=2000000,lrus=128, lru_min_dirty=18.75,lru_max_dirty=25 и чекпоинты снизятся до 0 сек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2008, 09:39 |
|
||
|
Производительность сервера
|
|||
|---|---|---|---|
|
#18+
AndronВ случае использования PDQ вы практически не используете имеющуюся память поскольку DS_TOTAL_MEMORY: 1792 KB это очень мало! Сделайте для начала DS_TOTAL_MEMORY = 25 % от объема SHMVIRTSIZE. Это можно сделать без перезагрузки информикса например: onmode -M 128000 (делает общий размер памяти выделяемый под PDQ 128000 Кб)Он не пользуется pdq у него MAX, это хреновина типа Baan там pdq разработчики никогда использовать не будут. Andronдля начала DS_NONPDQ_QUERY_MEM = 512 (ее также можно в онлайне переустановить).это хорошая мысль: onmode -wm DS_NONPDQ_QUERY_MEM=512 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2008, 09:45 |
|
||
|
|

start [/forum/topic.php?all=1&fid=44&tid=1608194]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 250ms |
| total: | 411ms |

| 0 / 0 |
