Ова страница је машински преведена. Прочитајте енглески оригинал. English

IBSurgeon библиотека

Како учинити да Firebird ради 20% брже на Windows Server 2016 за мање од 1 минута

Све више и више корисника надограђује на Windows Server 2016 са старијих верзија, а неки од њих су приметили да Windows Server 2016 ради спорије од претходних верзија, чак и на истом хардверу са истом базом података.

Извршили смо неколико тестова на Windows Server 2016 и Firebird-у и открили, између осталог, опцију која драматично утиче на перформансе Windows Server 2016: план напајања.

Подразумевано, Windows 2016 има „Уравнотежен" план напајања, који аутоматски балансира перформансе са потрошњом енергије на способном хардверу. Звучи безопасно, али у ствари, уравнотежен план напајања на Windows Server 2016 у великој мери смањује перформансе процесора и смањује укупне перформансе сервера.

Могуће је пребацити план напајања у ходу, без потребе за поновним покретањем. Погледајте ефекат омогућавања плана напајања „Високе перформансе" на серверу са Firebird базом података, који опслужује 70 конекција:

Ефекат плана напајања високих перформанси на искоришћење процесора

Ок, ово може бити само искоришћење процесора, а шта је са укупним перформансама? Покренули смо неколико тестова, сличних TPCC (симулација OLTP апликација) и добили следеће бројеве:

План напајања TPC-C пропусност (што више то боље)
Уравнотежен 17029
Високе перформансе 21226

Овај тест је у великој мери ограничен диском, па је разлика само 20%, а за операције интензивне на процесору побољшање може бити још веће.

Такође, извршили смо тест враћања (са gbak -c) 144Gb Firebird 2.5 базе података са различитим плановима напајања:

План напајања Време враћања (што мање то боље)
Уравнотежен 4 сата 7 минута
Високе перформансе 2 сата 35 минута

Једна опција „уштеде енергије" скоро је удвостручила перформансе враћања! Зашто имамо тако приметно повећање перформанси? Одговор је у индексима: током враћања, они интензивно користе процесор за сортирање вредности.

Погледајте временске ознаке из gbak враћања (у секундама) за 5 највећих индекса.

Са уравнотеженим планом напајања gbak:

Code
gbak: 9529.339 1230.343 5028900 346529     активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_DT_D
gbak: 10787.610 1258.270 5028909 233365     активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_TAG_D
gbak: 11824.329 1036.718 5028907 216488     активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_LU_D
gbak: 12571.012 746.683 5028907 265160     активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_C1
gbak: 13304.334 733.321 5028908 359393     активирање и креирање одложеног индекса PKMNF2_DOC_DOWNTIME

Укупно време: 3775 секунди

Са планом напајања високих перформанси

gbak: 5301.785 615.045 5028900 346529 активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_DT_D

Code
gbak: 5924.667 622.882 5028909 233365     активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_TAG_D
gbak: 6569.815 645.147 5028907 216488     активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_LU_D
gbak: 7186.322 616.506 5028907 265160     активирање и креирање одложеног индекса INDMF_TAG_PLC_DATA_C1
gbak: 7894.340 708.018 5028908 359393     активирање и креирање одложеног индекса PKMNF2_DOC_DOWNTIME

Укупно време: 2593 секунде

Резиме

Дакле, ова једноставна поставка у Контролна табла -> Хардвер -> Опције напајања може у великој мери побољшати перформансе Firebird базе података на Windows Server 2016.

Молимо вас да проверите и одмах омогућите план напајања „Високе перформансе"!

Још читања о перформансама Firebird базе података:

Посебна захвалност Олегу Матвејеву за помоћ у припреми овог чланка!