Огромный буфер страниц против нескольких одновременных процессов - PullRequest
3 голосов
/ 17 февраля 2010

У одного из наших клиентов есть база данных 35 Гб со средним числом активных соединений около 70-80. Некоторые таблицы в базе данных содержат более 10 миллионов записей на таблицу.

Теперь они приобрели новый сервер: 4 * 6 ядер = 24 ядра процессора, 48 ГБ ОЗУ, 2 RAID-контроллера 256 МБ кэш-памяти, с 8 жесткими дисками SAS 15K на каждом.

64-битная ОС.

Мне интересно, какая бы самая быстрая конфигурация:

1) FB 2.5 SuperServer с огромным буфером 8192 * 3500000 страниц = 29 Гб

или

2) FB 2.5 Classic с небольшим буфером в 1000 страниц.

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

Заранее спасибо.

Ответы [ 5 ]

4 голосов
/ 08 ноября 2012

просто чтобы выкопать старую ветку для тех, кому это может понадобиться.

Мы используем fb classic 2.5 на 75 ГБ, машина почти такая же, как описанная.

SuperServer был неэффективен во время тестов. Буферы и изменения размера страницы только снижали производительность.

В настоящее время мы используем Classic с xinetd, размер страницы = 16384, буферы страниц = 5000,

4 голосов
/ 17 февраля 2010

Поскольку есть много процессоров, которые я бы начал с Classic.

Но попробуйте все.

Возможно, скоро 2.5 с суперклассиком может быть вам полезен.

1 голос
/ 22 мая 2010

SuperServer будет использовать только один процессор. Поскольку у вас есть 24 ядра, лучше всего использовать Clasic. SuperClasic еще не готов к масштабированию в многопроцессорной среде.

0 голосов
/ 12 января 2011

В настоящее время у меня есть клиент с аналогичными требованиями.

Лучшим решением для этого случая было установить FirebirdSQL 2.5 SuperClassic и просто оставить стандартные настройки небольшого кэширования, потому что если у вас есть свободная память (RAM), Windows и Linux лучше кэшируют базу данных, чем Firebird. Функция кэширования в Firebird не очень быстрая, так что пусть ОС сделает это.

Также в зависимости от того, какое программное обеспечение для резервного копирования вы используете - если оно часто создает полные резервные копии базы данных Firebird, вы можете отключить принудительную запись в базы данных. (просто сделайте это, если знаете, что делаете, и если знаете, что может быть лучше, отключив принудительную запись).

0 голосов
/ 18 февраля 2010

Обязательно используйте одну из «классических» архитектур.
Если вы используете Firebird 2.5, посмотрите SuperClassic .

...