|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > это значит кэш забит весь. > Что нужно сделать, чтобы его разгрузить? Очень просто. Сделать его больше. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 09:41 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр По поводу экстент в 16 кб, соответственно на рейде устанавливаем страйп сайз также 16 кб. На этом хитрости с организацией дисковой подсистемы закончились или я еще что-то пропустил? Тут нужно почитать доки про ваш сторадж/рейд... Если у него есть кэш и батарейка, то он наверняка кэширует переданные данные и пишет бОльшим пакетом, чем 16Кб. Чтобы оптимизировать операции ввода/вывода, надо подобрать размер страйпа под размер пакета записи. Либо воспользоваться рекомендациями производителя, ежели такие найдутся в доках. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 11:55 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр проверить наличие отступа можно так: wmic partition get BlockSize, StartingOffset, Name, Index BlockSize Index Name StartingOffset 512 0 Диск #0, раздел #0 32256 ... 512 0 Диск #8, раздел #0 65536 512 0 Диск #11, раздел #0 32256 512 0 Диск #12, раздел #0 65536 На диске #8 и #12 в качестве эксперимента установил отступ 128 кб. На дисках 8 & 12 оффсет равен 64Кб, если верить приложенной таблице. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 11:57 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
komradВикторрр проверить наличие отступа можно так: wmic partition get BlockSize, StartingOffset, Name, Index BlockSize Index Name StartingOffset 512 0 Диск #0, раздел #0 32256 ... 512 0 Диск #8, раздел #0 65536 512 0 Диск #11, раздел #0 32256 512 0 Диск #12, раздел #0 65536 На диске #8 и #12 в качестве эксперимента установил отступ 128 кб. На дисках 8 & 12 оффсет равен 64Кб, если верить приложенной таблице. Да, описАлся, 64 кб, данные начинаются с 128 сектора. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 14:50 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
komradВикторрр По поводу экстент в 16 кб, соответственно на рейде устанавливаем страйп сайз также 16 кб. На этом хитрости с организацией дисковой подсистемы закончились или я еще что-то пропустил? Тут нужно почитать доки про ваш сторадж/рейд... Если у него есть кэш и батарейка, то он наверняка кэширует переданные данные и пишет бОльшим пакетом, чем 16Кб. Чтобы оптимизировать операции ввода/вывода, надо подобрать размер страйпа под размер пакета записи. Либо воспользоваться рекомендациями производителя, ежели такие найдутся в доках. Да, батарейка есть и кеш, и рейде и на СХД. Размер страйпа я задаю на рейд контроллере и как я понял, в моем случае он должен равняться 16 кб, т.к. страница в сайбесе 2 кб, экстент равен 2 кб*8 страниц = 16 кб, раздел создан с отступом 64 к, отформатирован в ntfs с размером кластера 16 кб и соответственно в СХД будет приходить пакет ровно 16 к. Или не так??? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 15:01 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv Очень просто. Сделать его больше. Но памяти всего 3Гб!!! Задаю это здесь: [Physical Memory] max memory = 1283610 Немного отдаю под процедурный кэш, локи и т.д.: [SQL Server Administration] procedure cache size = 58000 И собственно, вся остальная память отдана под кэш: [Named Cache:default data cache] cache size = 2600000 Откуда взять место под КЭШ на 32 битном сайбесе 12.5.1??? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 15:10 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
komrad, Интересно было бы почитать где именно написано, что I/O осуществляется экстентами. Прошу только обратить внимание, что space allocation и размер выполняемого I/O - это вещи принципиально разные. Заодно хотелось бы услышать, что если для пула 2K размер одного I/O почему-то вдург стал =16K, то чему тогда равен размер одного I/O в large I/O pool размером в 4K, 8K, 16K? Викторрр: Обратите внимание, что OLTP нагрузка и DSS запрос - это разные вещи. Снимите sysmon в момент выполнения отчёта (именно тогда, когда тормозит). Определите что выполянется, посмотрите какой replacement policy (MRU,LRU), посмотрите на размер Wash Area для Named Cache. Посмотрите используется или нет APF и чему равет APF Limit. Посмотрите на запрос или процедуру, на её план, на кол-во LIO, PIO, сравните цифры и план с с размером пула с учётом куда идёт кеширование (MRU,LRU), размера Wash Size и лимита APF. И ещё раз - если Вы считаете, что с базой в 170 гиг можно нормально работать на 2-х гигах памяти на 32-х битной OS и ASE (без named caches под log, tempdb с relaxed стратегией) да ещё и со смешанной нагрузкой (OLTP + DSS), то это конечно Ваше дело. Ещё раз желаю успехов. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 15:21 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
забыл пароль Викторрр: Обратите внимание, что OLTP нагрузка и DSS запрос - это разные вещи. Снимите sysmon в момент выполнения отчёта (именно тогда, когда тормозит). Определите что выполянется, посмотрите какой replacement policy (MRU,LRU), посмотрите на размер Wash Area для Named Cache. Посмотрите используется или нет APF и чему равет APF Limit. Посмотрите на запрос или процедуру, на её план, на кол-во LIO, PIO, сравните цифры и план с с размером пула с учётом куда идёт кеширование (MRU,LRU), размера Wash Size и лимита APF. И ещё раз - если Вы считаете, что с базой в 170 гиг можно нормально работать на 2-х гигах памяти на 32-х битной OS и ASE (без named caches под log, tempdb с relaxed стратегией) да ещё и со смешанной нагрузкой (OLTP + DSS), то это конечно Ваше дело. Ещё раз желаю успехов. По поводу первой части. Сейчас работаем на тестовой СХД, прошлую неделю на 5 флеш дисках, эту неделю на 15 fc 15К. На флешах работает шустренько, особенно это оценили пользователи формирующие долгие, тяжелые отчеты. Причем полностью загрузить нашим сайбесом флеш диски нам не удалось. На fc работает медленнее, но в целом терпимо. Здесь мы сразу уперлись в диски (1 полка). После того как отдадим СХД, вернемся на наш рейд, обязательно соберу статистику и выложу здесь. По поводу второй части. Приложение и версия СУБД определены ГО и пересмотру не подлежат. Даже увеличить размер page size до 8 кб нам категорически запретили, только 2к. Поэтому можем выжимать только из того что есть. Что такое named caches под log? Если его настроить, даст ли это прибавку производительности в наших условиях (только 3 гб памяти)? Тоже самое про tempdb с relaxed стратегией, если изменить стратегию (???) без увеличения КЕШа, можно ли получить прирост? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 15:54 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
забыл парольkomrad, Интересно было бы почитать где именно написано, что I/O осуществляется экстентами. Прошу только обратить внимание, что space allocation и размер выполняемого I/O - это вещи принципиально разные. Заодно хотелось бы услышать, что если для пула 2K размер одного I/O почему-то вдург стал =16K, то чему тогда равен размер одного I/O в large I/O pool размером в 4K, 8K, 16K? про первое - это я погорячился слегка, без постоянной практики знания конечно понемногу уходят... подтверждение тут (страница 8, пункт 3.3, предпоследний абзац): цитата ASE I/O buffer pools, as discussed above, allow the disk I/O sizes to occur at units of 1, 2, 4, or 8 pages at a time. Depending on the server page size, disk I/O sizes range from 2KB to 16KB for a 2KB-page server up to 16KB to 128KB for a 16KB-page server. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2010, 16:06 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
забыл пароль wrote: > Интересно было бы почитать где именно написано, что I/O осуществляется > экстентами. Не осуществляется. 2k, 4k, 8k, 16k. Минимально - размер страницы. > тормозит). Определите что выполянется, посмотрите какой replacement > policy (MRU,LRU), посмотрите на размер Wash Area для Named Cache. > Посмотрите используется или нет APF и чему равет APF Limit. Посмотрите > на запрос или процедуру, на её план, на кол-во LIO, PIO, сравните цифры > и план с с размером пула с учётом куда идёт кеширование (MRU,LRU), > размера Wash Size и лимита APF. Во загрузил. Ты думаешь, он справится ? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2010, 23:31 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > того что есть. Что такое named caches под log? Если его настроить, даст > ли это прибавку производительности в наших условиях (только 3 гб > памяти)? Точно этого вам никто не скажет, но как правило даёт. выкладка всех таблиц в default data cache -- это самый тупой и плохой вариант. Он хорош только одним -- его можно врубить по умолчанию и всё будет работать. Тоже самое про tempdb с relaxed стратегией, если изменить > стратегию (???) без увеличения КЕШа, можно ли получить прирост? Возможно. Вы задаёте неправильные вопросы. На них вам никто не ответит. Возможно, приведёт, возможно, нет. Надо знать вашу задачу, конфигурацию, цели, и т.д. и т.п. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2010, 23:40 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Я думаю нужно отследить на каких таблицах больше всего операций запись/чтение, а затем добавить эти таблицы в именованые кеши. Покрайней мере нам это помогло (база 150гб). Для отслеживания нужно запустить мониторинг сервера. В прилагаемом файле скриптик для создания mda таблиц. После того как сервер поработает под обычной нагрузкой - файлы заполнятся и запросом можно будет увидеть на каких таблицах самая большая нагрузка. Запрос select object_name(ObjectID, DBID) as Object_name, IndexID, PhysicalReads, PhysicalWrites from master..monOpenObjectActivity where PhysicalReads>100 order by PhysicalReads desc go Как то так. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2010, 12:11 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
mikeufa wrote: > Я думаю нужно отследить на каких таблицах больше всего операций > запись/чтение, а затем добавить эти таблицы в именованые кеши. Покрайней > мере нам это помогло (база 150гб). Да хотя бы по два кэша на каждую базу (для лога и данных) расписать -- уже хорошо будет. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2010, 13:01 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv mikeufa wrote: > Я думаю нужно отследить на каких таблицах больше всего операций > запись/чтение, а затем добавить эти таблицы в именованые кеши. Покрайней > мере нам это помогло (база 150гб). Да хотя бы по два кэша на каждую базу (для лога и данных) расписать -- уже хорошо будет. Как это сделать "два кэша на каждую базу (для лога и данных)"? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 15:07 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
На выходных планирую переставить сервер..., все таки размер кластера при форматировании в моем случае должен быть 16 кб? И stripe size на рейде выставить также 16 кб? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 15:11 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > Как это сделать "два кэша на каждую базу (для лога и данных)"? Один кэш -- под syslogs, другой -- под все остальные таблицы базы. Как кэши настраивать -- читай в документации, долго, да и я сам уже забыл. sp_cacheconfig кажется. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 15:43 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
mikeufaЯ думаю нужно отследить на каких таблицах больше всего операций запись/чтение, а затем добавить эти таблицы в именованые кеши. Покрайней мере нам это помогло (база 150гб). Для отслеживания нужно запустить мониторинг сервера. В прилагаемом файле скриптик для создания mda таблиц. После того как сервер поработает под обычной нагрузкой - файлы заполнятся и запросом можно будет увидеть на каких таблицах самая большая нагрузка. Запрос select object_name(ObjectID, DBID) as Object_name, IndexID, PhysicalReads, PhysicalWrites from master..monOpenObjectActivity where PhysicalReads>100 order by PhysicalReads desc go Как то так. Пролил скрипт на резервный сервер, при проливке выявился ряд ошибок, отсутствующие процеруры и т.д. У вас так же? Что еще нужно для проливки, кроме приложенного файла? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 15:46 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
for MasterZiv "Один кэш -- под syslogs, другой -- под все остальные таблицы базы." Непонял смысл кэша под syslogs - согласно теории пока данные лога не записались на диск(СКЛ сервер не получил потдверждение от ОС о записи) , изменений в данных непроизводятся. Чтения с файла лога нет. Здесь может помочь только апаратный кэш. for Викторрр Больше ничего не надо , у нас ASE 12.5.3 может из за этого ошибки. ну вообще то нужно смотреть что за ошибки. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 09:13 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
mikeufa, Лог прикреплен в предыдущем письме. Чтобы отключить сбор этой статистики достаточно выполнить exec sp_configure 'enable monitoring', 0? Сильно ли тормозит сервер, пока собирается статистика? Что делать дальше с теми таблицами, которые покажет скрипт? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 09:35 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
mikeufa wrote: Чтения с файла лога нет. Это смотря у кого. В конфигурациях с репликациями ещё как производится. Смысл кэша для syslogs: убрать syslogs из основного кэша, чтобы он не мешал нормальным таблицам сконфигурировать буфера специально под кэш, который читается в 4k. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 09:46 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
mikeufa wrote: Чтения с файла лога нет. А rollback, triggers ? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 10:10 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
SiemarglПолез искать обратно - не нашел точный рецепт для Sybase. Но судя по MSDN, если программа работала с 3Gb, то она скорее всего, будет работать и с 4мя. Другое дело, что совместимость win32 с wow64 тоже не 100%. На выходных переставил сервер. Поставил Windows Server x64 Enterprise, поставил Sybase 12.5.1, добавил в боот.ини ключик /3gb, ну и поправил конфигурационный файл сайбеса. И ВСЕ!!! Получил 4 гб пямяти, без каких либо дополнительных шаманств!!! Адрес shared memory starting address = 23662592 у меня уже был выставлен и он реально нужен, без него НЕ работает. Из этих 4х гигов, 3,5 отдал код кэш, 180 мб под процедурный кеш, ну и оставшуюся память, под нужды сервера. Так ли нужно распределить память??? Еще вопрос. Имеет ли значение для субд/рейд контроллера размер файлов данных БД? У меня база 170 гб = 5 файлов данных по 32 гб + 10 гб лог, а если сделать 16 файлов по 10 гб вместо 5 по 32 будет быстрее или нет??? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 11:17 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > На выходных переставил сервер. Поставил Windows Server x64 Enterprise, > поставил Sybase 12.5.1, добавил в боот.ини ключик /3gb, ну и поправил > конфигурационный файл сайбеса. И ВСЕ!!! Получил 4 гб пямяти, без каких > либо дополнительных шаманств!!! Адрес shared memory starting address = Всё хорошо, но только это всё же наверное 3Gb. Один идёт под виндовые .dll. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 11:42 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
Викторрр wrote: > Еще вопрос. Имеет ли значение для субд/рейд контроллера размер файлов > данных БД? У меня база 170 гб = 5 файлов данных по 32 гб + 10 гб лог, а > если сделать 16 файлов по 10 гб вместо 5 по 32 будет быстрее или нет??? Чисто умозрительно -- нет, не будет. ASE всё равно, через какой файл читать данные. Тут это уже от операционки и рейда зависит. А это -- не моя тема. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 11:46 |
|
Оптимизация производительности Sybase ASE 12.5.1
|
|||
---|---|---|---|
#18+
MasterZiv Викторрр wrote: > На выходных переставил сервер. Поставил Windows Server x64 Enterprise, > поставил Sybase 12.5.1, добавил в боот.ини ключик /3gb, ну и поправил > конфигурационный файл сайбеса. И ВСЕ!!! Получил 4 гб пямяти, без каких > либо дополнительных шаманств!!! Адрес shared memory starting address = Всё хорошо, но только это всё же наверное 3Gb. Один идёт под виндовые .dll. Картинка почему-то не показывается. Сконвертировал. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2010, 12:43 |
|
|
start [/forum/topic.php?fid=55&msg=36479229&tid=2010466]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
others: | 312ms |
total: | 470ms |
0 / 0 |