Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
добрался наконец со своим конфигом до инета :) я сократил малость лишнее и коментарии убрал.. в начале кратко о системе и БД: RS/6000, 2 процессора, 4 гига RAM, дисковая подсистема - RAID зеркалированием, диски группами по 4 штуки (то что под БД), нарезаны по 2 гига, поскольку эта версия не понимает девайсы большего размера. dbspac-ов 4 под данные, 4 под темпы. БД созданы в root dbs, а таблицы - в dbspac-ах для данных. Данные размазываются BY ROUND ROBIN по этим пространствам. Приложения в основном занимаются вставкой строк, минимум UPDAT-ов, и несложные запросы на чтение данных. Массовое чтение вечером при генерации печатных форм, вроде старался чтоб делали запросы по индексам (кстати, может быть индексов слишком много ? :). Вот конфиг, урезанный слегка... Код: 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. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2004, 16:46 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Поскольку LRU writes вообще нет, то I/O система скорей всего недогружена между чекпойнтами. Для оптимизации я бы поставил LRU_MIN_DIRTY 1, LRU_MAX_DIRTY 2 и посмотрел как она себя поведет. Кроме того, 4 LRU - совершенно недостаточно, увеличь хотя бы до 64. Можно так же сократить CKPTINTVL до 60. В таком вот аксепте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 05:19 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
А кусок лога с чекпоинтами? Насколько они длинные? msaв начале кратко о системе и БД: RS/6000, 2 процессора, 4 гига RAM, 4 гига, а под буферы отданно 200 МГб? Жалко? Кэширование всего 97.25%/83.24%. Увеличивай buffers, правда из-за этого чекпоинт может еще вырасти. msa дисковая подсистема - RAID зеркалированием, диски группами по 4 штуки (то что под БД), нарезаны по 2 гига, поскольку эта версия не понимает девайсы большего размера. dbspac-ов 4 под данные, 4 под темпы. БД созданы в root dbs, а таблицы - в dbspac-ах для данных. Данные размазываются BY ROUND ROBIN по этим пространствам. Я надеюсь маленькие таблицы не размазаны? Индексы attached? На каком диске physlog (PHYSDBS logs1_dbs). А физический и логический логи на каком зеркале? Вместе с данными? Я бы сделал страйп+зеркало. msa Chunks address chk/dbs offset page Rd page Wr pathname 4004c1f8 1 1 0 197 188 /dev/dbssa11 4004c9d4 2 1 0 321 10 /dev/dbssa21 offset 0? Как такое возможно? Чего-то у меня со зрением? Надеюсь используются character device & kaio ? В общем во время чекпоинта с помощью sar мониторишь кто что делает, и насколько равномерна нагрузка на диски. msa Приложения в основном занимаются вставкой строк, минимум UPDAT-ов, и несложные запросы на чтение данных. Массовое чтение вечером при генерации печатных форм, вроде старался чтоб делали запросы по индексам А когда чекпоинт длинный вечером? msa(кстати, может быть индексов слишком много ? :). все возможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 09:48 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Еще раз перечитал. Непонятно сколько дисков. 8 дисков? 4 зеркала по 2 диска? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 09:58 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис offset 0? Как такое возможно? Чего-то у меня со зрением? А в чем проблема? Для некоторых систем действительно рекомендуют делать offset отличным от нуля (дабы предовратить случайную запись в начало диска), но IMO это надо сделать еще на этапе деления партиций, а не при разбиении чанков. В остальном согласен. Кроме того, по onconfig дополнения: 1. TBLSPACE_STATS 0 -- как уже говорилось ранее, на сборе табличной статистики идет 10-15% потеря производительности. 2. RESIDENT -1 -- на сервере кроме Informix-a ничего нет? Почему бы его не сделать резидентным? 3. LTXHWM 45 LTXEHWM 54 -- с дефолтными значениями этих параметров существует вероятность угробить сервер длинной транзакцией. 4. MAX_PDQPRIORITY 100 -- а приложения оптимизированны под PDQ ? Если нет, то выключить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 12:32 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
DaugavaА в чем проблема? Для некоторых систем действительно рекомендуют делать offset отличным от нуля (дабы предовратить случайную запись в начало диска), но IMO это надо сделать еще на этапе деления партиций, а не при разбиении чанков. Я то всегда считал что в начало тома ОС пишет служебную информацию (на моем AIX4.3.3 это видно если воспользоваться dd), затирать которую крайне не рекомендуется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 12:40 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Журавлев ДенисЯ то всегда считал что в начало тома ОС пишет служебную информацию (на моем AIX4.3.3 это видно если воспользоваться dd), затирать которую крайне не рекомендуется. IBM действительно для AIX рекомендует делать offset 512 байт. Дабы предохранить данные VTOC. Я почему-то был уверен, что VTOC хранится в начале диска, и вводить offset для каждого девайса (партиции) совсем не обязательно (кстати для моего Solaris это именно так). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 13:50 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
ну AIX вообще забавная ось. Когда я узнал что могу переносить волумы (чанки) с диска на диск, на ходу, был удивлен сильно (минут 10 думал как такое возможно?). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 13:59 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Ответы по порядку :) - интервал между чекпойнтами и так 2 минуты, куда чаще то ?? - чекпойнты до 20 секунд - чекпойнты длинные днем, в период активной заброски данных (платежи). Вечером, и в период затишья 0-вые конечно ж. - во время чекпойнта трепал системщика как-то посмотреть что там творится - говорит загрузка солидная дисков, под 100%. насколько неравномерная трудно сказать, надо будет поглядеть попристальнее... - большие таблицы размазаны по 4-м dbspace, а маленькие сложены отдельно. Индексы отвязанные и тоже в отдельном dbspace кстати, в паре таблиц есть блоб-поля. они живут в table-space. - под dbspace сырой девайс, а что 0-вой офсет - так куски ж по 2 гига, почему бы офсету не быть 0-ым ?? кстати, чанки не хотят размещаться на офсете > 2 гиг. так что смысла резать на бОльшие куски никакого - физ. и лог. логи в своих dbspace но на этих же дисках (где-то на 2-х из 4-х). - стат с сегментами забыл, опишу - резидентная часть чуть больше 200 мег, свободно 3-4 мега, виртуальный кусок в 268 мег почти весь свободен - на сервере еще прикладные программы живут, занимают мегов 500-600 памяти. ну вроде и всё... кстати, о настройках - грядут выходные, единственное время когда я могу че-нить поковырять и перегрузить субд... в обычные дни ночевать не охота там:) мож чего пошевелить ? да и базу подчищать буду, не в эти так в следующие выходные... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 15:47 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
да, еще... дисков мне выделено 4-ре, они зеркалируются... насколько помню, есть две группы по 4 диска, зеркалируемые на другие 4+4... Хотя в принципе диски по 70 гиг щас поставили... можно и подумать о перераспределении ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 15:50 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
и еще... по именам девайсов - /dev/dbssa<#диска><#куска>... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 15:56 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
автори еще... по именам девайсов - /dev/dbssa<#диска><#куска>... 4004d5dc 16 8 0 25714 771 /dev/dbssa12 4004d6b8 17 8 0 0 0 /dev/dbssa22 4004d794 18 8 0 0 0 /dev/dbssa32 4004d870 19 8 0 0 0 /dev/dbssa42 Бред какой-то. Получается что дибиспейс лежит на РАЗНЫХ ДИСКАХ!? Если идут только инсерты, т.е. заполняется 4-й чанк. А если у всех четырех дибиспейсов так получится? И вот что получается read write disk1 197 188 /dev/dbssa11 0 83866 /dev/dbssa11 1842 4805 /dev/dbssa11 12340 22924 /dev/dbssa11 25714 771 /dev/dbssa12 206895 11229 /dev/dbssa12 0 0 /dev/dbssa13 0 0 /dev/dbssa14 0 0 /dev/dbssa15 0 0 /dev/dbssa16 0 0 /dev/dbssa17 246988 123783 disk2 321 10 /dev/dbssa21 0 0 /dev/dbssa21 1885 4839 /dev/dbssa21 20682 36662 /dev/dbssa21 0 0 /dev/dbssa22 204462 11518 /dev/dbssa22 0 0 /dev/dbssa23 0 0 /dev/dbssa24 0 0 /dev/dbssa25 0 0 /dev/dbssa26 0 0 /dev/dbssa27 227350 53029 disk3 0 0 /dev/dbssa31 0 88330 /dev/dbssa31 1816 4777 /dev/dbssa31 2245 7610 /dev/dbssa31 0 0 /dev/dbssa32 205148 11251 /dev/dbssa32 0 0 /dev/dbssa33 0 0 /dev/dbssa34 0 0 /dev/dbssa35 0 0 /dev/dbssa36 0 0 /dev/dbssa37 209209 111968 disk4 0 0 /dev/dbssa41 0 750 /dev/dbssa41 142 0 /dev/dbssa41 1800 4768 /dev/dbssa41 0 0 /dev/dbssa42 206154 11377 /dev/dbssa42 0 0 /dev/dbssa43 0 0 /dev/dbssa44 0 0 /dev/dbssa45 0 0 /dev/dbssa46 0 0 /dev/dbssa47 208096 16895 Нас интересует запись -> disk1=123783 disk2=53029 disk3=111968 disk4=16895 Т.е. 1 и 3 диск перегруз, 2 и тем более 4 недогруз. А могло быть 305675/4 = 76418,75. Работай дальше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 16:57 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
msa Индексы отвязанные и тоже в отдельном dbspace Нагрузка на дибиспесы с индексами может быть еще больше чем на данные. msa - под dbspace сырой девайс, а что 0-вой офсет - так куски ж по 2 гига, почему бы офсету не быть 0-ым ?? я не знаю как у тебя, но у меня AIX использует 1-й килобайт устройства для своих нужд. msa - стат с сегментами забыл, опишу - резидентная часть чуть больше 200 мег, свободно 3-4 мега, виртуальный кусок в 268 мег почти весь свободен - на сервере еще прикладные программы живут, занимают мегов 500-600 памяти. Уменьши виртуальный сегмент, зачем тебе большой (PDQ - используешь)? Я бы Буферы увеличил до 1->1.5->2 гиг, у тебя же ОЗУ - 4 гига. Производительность повысится, хотя чекпоинт тоже может вырасти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 17:17 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
msa дисков мне выделено 4-ре, они зеркалируются... насколько помню, есть две группы по 4 диска, зеркалируемые на другие 4+4..." и еще... по именам девайсов - /dev/dbssa<#диска><#куска>... Стало проще. Я тут побыстрому прикинул по onstat -D, получил следующие выводы: 1. По чтению все твои 4 диска нагруженны примерно одинаково (максимальная разница 16% между 1 и 4 диском). Зато по записи 1-й и 3-й диски нагружены больше 4-го в 8 раз, больше 2-го в 2.5. 2. Главные "нагружатели" записи - это 2-й (logical log), 3-й (видимо physical log) и 7-й (index) dbspac-ы. Конечно для далеко идущих выводов следует выполнить onstat -z перед самым чекпоинтом и onstat -D сразу после. Кроме того, сделать данную операцию несколько раз и результаты просуммировать. Потом на основе этго возможно перегруппировать чанки по дискам. 3. Я пожалуй повторю еще раз сказанное ранее. 3.1. TBLSPACE_STATS 0 -- как уже говорилось ранее, на сборе табличной статистики идет 10-15% потеря производительности. 3.2. RESIDENT -1 -- памяти все равно достаточно для того, чтобы иметь все в резиденте. 3.3. MAX_PDQPRIORITY 100 -- если апликухи под него не оптимизировались, то стоит установить в 0. 3.4. Установить LRU_MIN_DIRTY 1, LRU_MAX_DIRTY 2 - чекпоинт станет меньше, другое дело, что на других операциях система начнет притормаживать. Если поможет, то далее можно играться с этим двумя показателями LRUS-ами и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 17:51 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Рекомендации по общей оптимизации тебе дали, но относительно длины чекпойнтов главное - чтобы число LRU writes стало отличным от нуля. Поскольку эти writes происходят МЕЖДУ чекпойнтами (в отличие от chunk writes). Соответственно, диски загружаются более равномерно по времени. А сейчас у тебя система две минуты накапливает данные в буферах, и 20 секунд сбрасывает их на диск. Кстати, сейчас у тебя примерно 4.4 % буферов занято (2200 dirty / 50000 total), так что LRU_MIN не имеет cмысла ставить выше 5ти - LRU writes не будет. В таком вот аксепте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2004, 19:59 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис Бред какой-то. Получается что дибиспейс лежит на РАЗНЫХ ДИСКАХ!? Если идут только инсерты, т.е. заполняется 4-й чанк. А если у всех четырех дибиспейсов так получится? это dbspace на котором лежат короткие и нечасто изменяемые таблицы.. для активно меняющихся dbspacы каждый на своем диске ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2004, 07:35 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Выбегалло но относительно длины чекпойнтов главное - чтобы число LRU writes стало отличным от нуля. Поскольку эти writes происходят МЕЖДУ чекпойнтами (в отличие от chunk writes). всяческие умные книжки пишут что самое оптимальное как раз chunk writes. что к этому надо стремиться... кому ж верить ? эх...пойду пробовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2004, 07:36 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
msaвсяческие умные книжки пишут что самое оптимальное как раз chunk writes. что к этому надо стремиться... кому ж верить ? Всякие умнные книжки в принципе говорят правду :-). Но весь вопрос в том, что "оптимальность" вещь относительная. Система действительно при LRU будет несколько тормознутее, но зато у тебя не будет 20 секундных чекпоинтов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2004, 10:13 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Ок... Пока что увеличил число буферов где-то до 17-20% памяти (опять же в книжку заглянул :), убрал статистику по таблицам и посталил принудительную резидентность. неделя покажет. А вот блобы насколько тормозят систему ? Пытался как-то подвигнуть программистов отказаться от них (мелкие они, если б были поля VARCHAR с килобайта 4 или до 32к как в DB/2 - сразу бы не стали делать). Пытался увести их в отдельный dbspace, но резко увеличились затраты пространства. Тогда сервак еще не апгрейженый был.. дисковой не хватало для жизни ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2004, 15:44 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Кроме того, надо учесть, что умные книжки писались во времена, когда памяти было мало. Я думаю, что все твои действия врядли серьезно повлияют на время чекпоинта, без игры с LRU* кина не будет :-). Насчет BLOB-ов не скажу, сам к счастью не юзаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2004, 17:28 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Вот кстати про AIX еще одно замечание. /dev/dbsa**** - это ведь не симлинк, это ведь устройство, а AIX создает в /dev для каждого устройства два "устройства", одно называется /dev/dbsa****, другое /dev/rdbsa****, msa ты никогда не задумывался в чем их разница, и какое нужно использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2004, 16:12 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
To Денис Журавлев: хм... пойду к системщику поспрашаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2004, 04:36 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
informix@h80lo ~ $ ls -la /dev/*baandbs brw-rw---- 1 informix informix 54, 7 Nov 14 08:08 /dev/baandbs crw-rw---- 1 informix informix 54, 7 Nov 14 08:08 /dev/rbaandbs Спроси у него про флажок. Почему /dev/device флаг b, а у /dev/rdevice флаг c. Про kaio, ты так и не ответил, тогда уж запости onstat -g ioq, чтобы откинуть сомнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2004, 09:00 |
|
||
|
длинный чекпойнт-2
|
|||
|---|---|---|---|
|
#18+
Про девайсы выяснил... Действительно использую блочные. Наверное так истерически сложилось :) чего дали - то и использую :) Щас начал перетрахивание данных в БВ-пространства сделанные правильно. Насчет KAIO - он в AIX по умолчанию и без него не работает. Про 0-вое смещение - поскольку используется raw device, то никаких данных в начале блока нет... Первые дни просле переконфигурации особых изменений не показали. А теперь еще и чанки переконфигурять надо... Эх... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2004, 09:18 |
|
||
|
|

start [/forum/topic.php?fid=44&msg=32372101&tid=1609321]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
5ms |
get forum data: |
1ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 368ms |

| 0 / 0 |
