powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA на нескольких процессорах
8 сообщений из 8, страница 1 из 1
ASA на нескольких процессорах
    #32802871
Mastiff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Жила-была база (ASA 8) на однопроцессорном сервере.
Её перенесли на многопроцессорный.
Никаких других аппликашек на сервере нет.

Вопросы:

1. Надо ли помочь базе осознать постигшее её счастье?
Статистику пересобрать или что-то в этом роде?

2. Выполняется длинная процедура закрытия периода.
Грубо говоря, для каждого клиентского счета вытягиваем историю изменения остатка и дополнительных параметров за период, производим расчеты, результат пишем в базу, переходим к следующему счету.
ASA сама разделит нагрузку по процессорам?
Можно ли как-то оптимизировать код, чтобы он лучше "параллелился"? ;-))

(буду очень благодарен за помощь, поскольку ни разу не сталкивался с многопроцессорными серверами и протестить пока не на чем)

Да, кстати, операционка Win2000 (это имеет значение?).
...
Рейтинг: 0 / 0
ASA на нескольких процессорах
    #32802932
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ничего делать не надо. Многопроцессорная архитектура используется СУБД закрыто, без возможности управления этим, все нагрузки распределяются автоматически. Ну а сессии по любому выполняются параллейно, вне зависимости от кол-ва процессоров на сервере, другое дело что чем больше процессоров, тем больше действий действительно выполняются одновременно.
...
Рейтинг: 0 / 0
ASA на нескольких процессорах
    #32802955
Mastiff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
А можно ли как-нибудь спрогнозировать эффект от переезда с одного процессора на, например, два?

Если раскидываем базу на два физических диска и ставим два процессора - в теории это должно дать преимущество, если ASA сумеет поднять на каждом проце отдельный DBWR, или в ASA как-то не так оно происходит (я не очень в курсе)?

Если у кого есть время поделиться поучительными примерами из практики, был бы очень благодарен!
...
Рейтинг: 0 / 0
ASA на нескольких процессорах
    #32803030
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут немножко по другому получается. Раскидывание БД и логов на разные физические устройства позволяет ускорить работу СУБД засчет распараллеливания операций чтения и записи информации. А многопроцессорность позволяет на каждый процессор развести выполняющиеся сессии, больше всего это имеет положительный эффект в запросах при проведении операций обьединений таблиц, особенно при использовании Hash-алгоритмов. В некоторых других СУБД в отличие от ASA(например MSSQL) поддерживается возможность автоматического раскидывания выполнения одного запроса по нескольким процессорам, если они простаивают. Однако в жизни сколько я не видел, обычно это не приносит выигрыша в скорости выполнения, наоборот частенько из за этого все тормозит (хотя бы из за проблем доступа и синхронизации нескольких потоков к общей памяти), поэтому в том же MSSQL частенько БД быстрее крутилась на однопроцессорном сервере и заметно начинала подтормаживать на многопроцессорном (видел своими глазами).

Единственное, на какой параметр нужно посмотреть - это на параметр запуска сервера "-gn", определяющий кол-во активных запросов, выполняющихся на сервере. По умолчанию он выставлен в 20, то есть если на сервере в один момент времени 20 сессий выполняют запросы, то запрос 21 сессии будет поставлен в очередь. Соответствующе большее кол-во процессоров позволяет пропустить одновременно большое кол-во сессий. Через Performance Monitor можно посмотреть на показатели "Requests: Active" и "Requests: Unscheduled" во время работы БД и соотвествующе, если одновременно выполняющихся запросов (не путать с кол-вом одновременно подключенных сессий) мало, то в параметре можно задать более малое значение, если наоборот активность сессий большая и есть сессии, стоящие в очереди и ожидающие выполнения, то значение параметра необходимо увеличить.
...
Рейтинг: 0 / 0
ASA на нескольких процессорах
    #32804868
iLLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Воспользовавшись случаем хочу передать привет..."
Вопрос в тему: Есть ASA6.04 + Win2000. Так вот если озадачить СУБД запросом, который жутко перебирает одни и теже данные(т.е. вся нагрузка ложится процессор + на обмен с памятью), то проявляется странный эффект. На двухпроцессорной машине загрузка процессора процессом dbsrv6.exe ровно 50%. Создается впечатление, что АСА использует только один проц. Так ли это? Почему система не отдает ей второй проц? Как заставить его использовать?
...
Рейтинг: 0 / 0
ASA на нескольких процессорах
    #32804924
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLLEr а ты пробовал смотреть просто загрузку процессоров?
показатель загрузка процессора - относится к одному из двух процессоров.
то есть должно быть два таких показателя - загрузка проц номер1 и загрузка проц номер 2.

получив както двух процессорную машину, я некоторое время наблюдал загрузку процессоров. я не видел, чтобы суммарная загрузка двух процессоров была больше 100 процентов.
то есть если один процессор загружен на 51 процент, то второй никогда не бывает загружен больше чем на 49 процентов. 52 - меньше чем 48 и т.д.

операционка была WinNT 4.0
...
Рейтинг: 0 / 0
ASA на нескольких процессорах
    #32804936
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLLer"Воспользовавшись случаем хочу передать привет..."
Вопрос в тему: Есть ASA6.04 + Win2000. Так вот если озадачить СУБД запросом, который жутко перебирает одни и теже данные(т.е. вся нагрузка ложится процессор + на обмен с памятью), то проявляется странный эффект. На двухпроцессорной машине загрузка процессора процессом dbsrv6.exe ровно 50%. Создается впечатление, что АСА использует только один проц. Так ли это? Почему система не отдает ей второй проц? Как заставить его использовать?
Я думаю что заставить использовать второй процессор на один процесс нельзя - такая архитектура у ASA. Плюс чуть выше я уже описал, что это не так плохо, с учетом всех проблем, возникающих при раскидывании одного запроса по нескольким процессам.
...
Рейтинг: 0 / 0
ASA на нескольких процессорах
    #32814849
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Увеличение количество процессоров, прежде всего, благотворно сказывается на производительность при работе большого количества сессий. Например, если у Вас одновременно рботают 15-50 человек, то неплохо бы иметь хотя бы 2 проца, а свыше 40-ти задуматься о 4-х процессорной машине.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA на нескольких процессорах
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]