Увеличение производительности сервера базы данных. Firebird 2.5.1

Nurudinov
Дата: 25.06.2012 16:53:28
Добрый день, форумчане.

Хотел с вами посоветоваться как лучше провести модернизацию (усовершенствование) нашего сервера базы данных.
Исходные данные такие (если нужно больше - нет проблем, предоставлю):

сервер физический (не виртуальный).
платформа Intel S5000VSA
процессор Intel Xeon 5405 2 шт.
оперативная память 12 G
HDD SATA 1 шт (два логических раздела, один с ОС, второй для бэкапа БД)
HDD SAS 4 шт. (объединены в RAID 5 один логический диск с файлом БД)
ОС Windows Server 2003 R2 x64
БД Firebird 2.5.1 x32 (работает в режиме Super Classic)
Объем базы данных 25 G
Количество одновременных подключений 100
Соотношение чтение-запись примерно 50 на 50

gstat -h до начала рабочего дня (7.00)

Database header page information:
Flags 0
Checksum 12345
Generation 129801
Page size 16384
ODS version 11.2
Oldest transaction 129721
Oldest active 129722
Oldest snapshot 129722
Next transaction 129732
Bumped transaction 1
Sequence number 0
Next attachment ID 22597
Implementation ID 16
Shadow count 0
Page buffers 0
Next header page 0
Database dialect 3
Creation date Jun 18, 2012 1:22:55
Attributes force write

Variable header data:
Sweep interval: 20000
*END*

gstat -h в конце рабочего дня (18.00)

Database header page information:
Flags 0
Checksum 12345
Generation 167300
Page size 16384
ODS version 11.2
Oldest transaction 167207
Oldest active 167208
Oldest snapshot 167207
Next transaction 167210
Bumped transaction 1
Sequence number 0
Next attachment ID 29463
Implementation ID 16
Shadow count 0
Page buffers 0
Next header page 0
Database dialect 3
Creation date Jun 18, 2012 1:22:55
Attributes force write

Variable header data:
Sweep interval: 20000
*END*

что планируется сделать:
- RAID 10 (strip 8К)
- Переустановить ОС на 2008 R2
- Изменить Page size на 8К
- Когда-нибудь попозже перейти на firebird x64, требуется некоторая работа с UDF

вопросов несколько:
1. что вы можете еще посоветовать ?
2. чем можно замерить производительность firebird для того чтобы сравнить начальный и конечный результаты ?скорость дисковой подсистемы планирую замерять чем-нибудь вроде HD tune
3. правильно ли то что я планирую изменить page size на 8К ? как определить правильное значение этого параметра ?

Заранее спасибо )
kdv
Дата: 25.06.2012 16:59:25
Nurudinov
что планируется сделать:
- RAID 10 (strip 8К)

raid 10 давно пора, raid5 вам мало чем помогал.

Nurudinov
- Изменить Page size на 8К

не совсем ясно, зачем. ну сделайте у raid страйп 16к.

Nurudinov
чем можно замерить производительность firebird для того чтобы сравнить начальный и конечный результаты ?скорость дисковой подсистемы планирую замерять чем-нибудь вроде HD tune

perfmon, processexplorer, и любые другие средства мониторинга самой ОС.

Вообще у вас какая-то чахлая активность с ФБ, в виде ~40к транзакций в сутки.
Непонятно, с какого рожна используется 32-битный SuperClassic, а не Classic, при том что пользователей 100, а памяти 12 гиг . В общем, мотивы вашего стремления улучшить производительность не вполне ясны :-)

http://www.ibase.ru/techsupp.htm
Dimitry Sibiryakov
Дата: 25.06.2012 17:21:15

Nurudinov
gstat -h в конце рабочего дня (18.00)

Гораздо интереснее была бы статистика за час до конца рабочего дня.

Зачем менять ОСь?

После обязательной смены на классик стоит посмотреть объём используемой памяти,
статистику тормозящих запросов и лок-менеджера. В зависимости от результатов - крутить кэш
страниц, память под сортировку или параметры лок-таблицы.

Скорость можешь померять с помощью TPC-C, TPC-E или любого другого бенчмарка, близкого в
твоей реальной нагрузке.

Posted via ActualForum NNTP Server 1.5

Nurudinov
Дата: 25.06.2012 18:43:10
kdv
не совсем ясно, зачем. ну сделайте у raid страйп 16к.


размер стрипа RAID и размер страницы будет одинаковым однозначно, а вот 8К решил сделать только из статистики советов на форуме. Вы думаете вариант 16К будет лучше ?


kdv
Непонятно, с какого рожна используется 32-битный SuperClassic, а не Classic


Dimitry Sibiryakov
После обязательной смены на классик


вопросов нет, так и сделаю

kdv
В общем, мотивы вашего стремления улучшить производительность не вполне ясны :-)


Мотив простой - если что-то можно сделать лучше, лучше сделать это лучше )

Dimitry Sibiryakov
Гораздо интереснее была бы статистика за час до конца рабочего дня.


как просили, но разница не большая, да и 18.00 у нас не совсем конец рабочего дня )

Database header page information:
Flags 0
Checksum 12345
Generation 163547
Page size 16384
ODS version 11.2
Oldest transaction 161983
Oldest active 161984
Oldest snapshot 161984
Next transaction 163457
Bumped transaction 1
Sequence number 0
Next attachment ID 28569
Implementation ID 16
Shadow count 0
Page buffers 0
Next header page 0
Database dialect 3
Creation date Jun 18, 2012 1:22:55
Attributes force write

Variable header data:
Sweep interval: 20000
*END*

Dimitry Sibiryakov
Зачем менять ОСь?


Это скорее к вопросу групповых политик домена, то есть никак не связано с текущей задачей, а так, заодно.


что касается используемой памяти, то здесь ситуация следующая, памяти используется всего 1 G, иногда чуть больше, я так понимаю это вопрос к кешу страниц ? и как его расчитать ? или только методом проб и ошибок ?

а с процессором следующая картина, в диспетчере задач из 8 ядер нагружается только одно, остальные простаивают, подскажите как с этим бороться ?

Спасибо.
kdv
Дата: 25.06.2012 18:47:32
Nurudinov
а вот 8К решил сделать только из статистики советов на форуме. Вы думаете вариант 16К будет лучше ?

каких именно советов:
- по поводу вашей базы?
- по поводу чужой базы, которая не похожа на вашу?
- по поводу сферической базы в вакууме?
- по поводу базы, которая находится не на ваших дисках?
Nurudinov
что касается используемой памяти, то здесь ситуация следующая, памяти используется всего 1 G

сходите к нам на курсы. или почитайте что-нибудь про классик, суперклассик, про процессы в винде, про 2 гига, и т.п.
Nurudinov
иногда чуть больше, я так понимаю это вопрос к кешу страниц ?

я уже неоднократно объяснял про это на форуме.
Nurudinov
а с процессором следующая картина, в диспетчере задач из 8 ядер нагружается только одно, остальные простаивают, подскажите как с этим бороться ?

значит у вас не суперклассик, а суперсервер. Имя процесса ФБ какое? Наверняка fbserver.exe ...
kdv
Дата: 25.06.2012 18:48:38
ну и до кучи, поясните, какова ваша роль во всем этом, и чья это база (своя, поставщик, кто ставил сервер, и т.п.). А то может вам и менять ничего нельзя.
Dimitry Sibiryakov
Дата: 25.06.2012 19:00:13

Nurudinov
памяти используется всего 1 G, иногда чуть больше, я так понимаю это вопрос к кешу страниц ?

Не обязательно. Память используется на разные нужды. Подробности - в таблицах мониторинга.

Nurudinov
и как его расчитать ?

На основе анализа статистики нужных запросов. Параметр reads. Или тупо: половина
доступного ОЗУ/(количество коннектов*размер страницы). Учитывать, что 32-х разрядному
процессу доступно максимум 2 гигабайта. Т.е. у тебя будет 1G/(100*16K) = 655 страниц максимум.
Если есть запросы с тяжёлой сортировкой, то кэшу можно дать поменьше, сортировке - побольше.

Nurudinov
в диспетчере задач из 8 ядер нагружается только одно

Точно суперклассик, а не суперсервер? Процессу fb_inet_server разрешено использовать все
процессора? (Это можно посмотреть в том же диспетчере.)

Posted via ActualForum NNTP Server 1.5

Злой Бобр
Дата: 25.06.2012 19:11:47
Nurudinov,

Держать ОС и бекапы на одном диске это нонсенс. Во первых бекап будет тормозить систему. Во вторых физический диск под бекапы всегда желательно иметь отдельный.
Зачем там рейд 5 я немогу понять. 10 самое оно.
Замено ОС вам никакого прироста к БД недаст.
FB поставить 64bit.
Page size при таком наличии оперативы думаю не так актуально. Все зависит от размера. Оптимальный размер подбирается методом тыка, но в нете можно всеже найти кое какое описание критериев влияющих на выбор размера. Почитайте.

И собственно непонятна причина модернизации. Чем вызвано такое желание?
S.PR
Дата: 25.06.2012 23:08:35
Злой Бобр,
продолжу мысль...
... сам себе думаю, не дурак ли я?
Не люблю Сашкуишк...
Дата: 25.06.2012 23:55:30
Page size при таком наличии оперативы думаю не так актуально.
Все зависит от размера.
Оптимальный размер подбирается методом тыка,

Архиточные и архиценные наблюдения и советы.
Особенно последний. Метод тыка это наше всё.
Верной дорогой идёте товарищ!