OpenEdge® RDBMS настройка на производителността е направена лесно!

Този раздел е посветен на оптимизирането на оформлението на вашите данни на дисково пространство. За съществуващите бази данни преместването или разтоварването и след това зареждането на големи количества данни ще отнеме много време, което на практика може да бъде неприемливо. Но когато създавате нова база данни, това не би трябвало да е трудно.

5.1. Използвайте повече от един диск за базата данни

Един диск може едновременно да извършва един трансфер на данни. Две устройства могат да извършват два трансфера на данни едновременно. Колкото повече дискове използвате, толкова по-добра е производителността. Скоростта на трансфер на данни не зависи от размера на диска и множество по-малки устройства ще осигурят по-добра производителност от едно голямо устройство.

5.2. Ивици и огледални дискове

За да увеличите максимално производителността, е желателно да имате балансирано I/O натоварване на наличните дискове, така че всеки един да допринася еднакво за общото натоварване. Ако един от дисковете върши много повече работа от останалите и не е в състояние да се справи с такъв товар, тогава той ще забави цялата система.

Най-ефективният начин за балансиране на зареждането на множество дискове е да се премахнат всички физически дискове в един логически диск с равномерно разпределени данни по него. Самото отстраняване има значителен недостатък: ако загубите един от дисковете поради повреда, ще загубите данни на всички дискове. За да се получи достатъчна надеждност, оголването трябва да се комбинира с огледално отразяване. Трябва да използвате двойки (или дори тризнаци) огледални устройства и след това да ги отстраните. Той е по-надежден, отколкото обратното, тъй като тази конфигурация е по-устойчива на повреди на диска.

При тестове, проведени на Linux и Windows, установихме, че колкото по-голям е размерът на лентата, толкова повече производителност осигурява. Максималният размер на лентата, който можете да използвате, зависи от вашата операционна система или дискова подсистема.

Не сме тествали ивици с размер по-голям от 256KB. това беше най-големият възможен размер за нас.

5.3. Избягвайте да използвате RAID 5

Ако използвате RAID-5 дисков масив, вместо да отстранявате и отразявате, ще загубите около 45% производителност по време на нормална работа 6 и дори повече по време на операции по поддръжка и възстановяване. Загубата в производителността се дължи на допълнителните режийни разходи, присъщи на RAID-5 - всеки блок трябва да бъде записан на два диска, един за данни и един за възстановяване на данни. В масив с четири диска процесът на запис винаги заема 50% от общата честотна лента на диска. Колкото по-голям е броят на дисковете в масива, толкова по-малка е загубата на производителност. На RAID-5 масив с 20 диска, екстрите за запис могат да бъдат само 5%.

Ако обаче трябва да замените неуспешно устройство, ще трябва да прочетете всички данни от всички други устройства, докато неуспешното устройство се възстановява. Това отнема много време и причинява много значителна загуба на производителност, докато възстановяването на масива не завърши.

5.4. Избор на размер на блок данни

По-големите блокове осигуряват по-добра I/O производителност и правят съхранението на базата данни по-ефективно. Много файлови системи UNIX имат размер на блок или страница от 4 или 8 KB. Най-добра производителност може да се получи, ако размерът на блока на базата данни е еднакъв или кратен на размера на страницата на файловата система.

Размерът на блока с данни се избира по време на създаването на нова база данни, когато копирате празна база данни с желания размер на блока. След създаването на базата данни трябва да заредите данните в нея. Размерът на блока на съществуваща база данни не може да бъде променен.

5.4.1. Размер на блока на областта за данни тип I

Ако размерът на блока с данни е по-голям от размера на страницата на файловата система, има малък шанс блокът с данни да бъде записан само частично в случай на повреда в системата, например прекъсване на електрозахранването. В повечето случаи записването на блок данни в две съседни страници на файловата система ще се извърши с едно записване на диск и двете страници ще бъдат записани заедно. Ако обаче двете страници на файловата система са на различни записи, може да се наложи операция за търсене, за да ги запишете. Ако възникне прекъсване на захранването в началото на прехвърлянето на първата страница, дискът може да се изключи преди записването на втората страница. В този случай само половината от блока с данни ще бъде записана на диск, което ще доведе до скъсана страница. Възстановяването при срив няма да разпознае тази ситуация и няма да може да я поправи.

В Linux системи трябва да се използва размер на блока от 4 KB, за да съответства на размера на страницата на файловата система за базата данни. Съществуващата архитектура на виртуална памет в Linux не позволява използването на по-големи страници. Това може да се промени в бъдещите версии на Linux.

В системи с Windows използвайте размер на фрагменти от 4KB или задайте размера на клъстера NTFS на 8KB, след което може да се използва размер на фрагменти от база данни от 8KB.

5.4.2. Размер на блока на областта за данни тип II

За области с данни от тип II задайте размера на блока с данни на 8 KB. Бъдещите версии на OpenEdge RDBMS ще поддържат по-големи размери блокове.

5.5. Използвайте области от данни тип II

Областите с данни от тип II осигуряват по-висока производителност и по-добро използване на дисковото пространство в сравнение с областите с данни от тип I с по-ниска фрагментация на записите. Повечето помощни програми ще работят значително по-бързо с данни, съхранявани в този тип региони. Поради тези причини винаги трябва да използвате области с данни тип II.

5.6. Използвайте обеми с данни с фиксирана дължина

Томовете с фиксирана дължина се форматират в момента на създаването им. Обемите с променлива дължина се форматират динамично, тъй като те се разширяват по време на изпълнение, когато базата данни се нуждае от повече място за съхранение. Обемите с фиксирана дължина осигуряват малко по-добра производителност, тъй като томовете не трябва да се разширяват, докато се разпределя място за данни за индекс или база данни. Разликата в производителността може да варира значително в зависимост от конкретната операционна система и файлова система и от това колко и колко често расте вашата база данни. Разликата е максимална, когато размерът на блока данни е по-малък от 4096 байта. Няма разлика в производителността на четене между обеми с фиксирана и променлива дължина.

5.7. Отделете дневника преди изображението от обемите с данни

Поставете томовете с дневниците преди изображението на различни устройства, отделно от обемите с данни.

Искате регистрирането преди изображението да бъде възможно най-ефективно и да не пречи на друга дейност.

Ако на една и съща машина се изпълняват множество бази данни, поставете техните дневници преди изображението заедно с обемите данни. Вие премахвате степента на данни, нали?

5.8. Подсистеми на дискови масиви

На пазара има голямо разнообразие от подсистеми за съхранение на дискове, вариращи от различни видове дискови контролери като тези, предлагани от 3Ware, до големи системи за съхранение, предлагани от EMC, IBM и други. Повечето от тях могат да се използват успешно с RDBMS на OpenEdge.

6 данни, получени при тестване с 6 диска