Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Производительность сервера
|
|||
|---|---|---|---|
|
#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 |
|
||
|
|

start [/forum/topic.php?fid=44&msg=35051982&tid=1608194]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
83ms |
get tp. blocked users: |
2ms |
| others: | 220ms |
| total: | 403ms |

| 0 / 0 |
