Премини към съдържанието
  • Добре дошли!

    Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

    Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

     

Препоръчан отговор


Здравейте,

Моля за малко помощ. Интересуват ме опции за Сървърна машина с която ще се управлява база данни Firebird. Големината на базите няма да надвишава 15-50 гб. Свързаните към базата потребители ще са около 30.

До сега имам известен опит с управлението на подобни бази на различни конфигурации, но примерно

DELL PowerEdge R720 се представя до 2 пъти по-бавно от един обикновен i7 4790 с 8гб рам и две ССД в райд. Не разбирам достатъчно, за това и се обръщам към Вас.

 

Въпросът ми към вас е:

Кое е от най-голямо значение при работата с бази данни(ако някой има опит с Firebird, още по-добре)

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

 

Сървърът (трите сървъра, защото ще са клъстър) ще е корпоративен, така че може да се спекулира с цената до около 5000 лева за брой (без ОС).

 

Много благодаря на отзовалите се!

Редактирано от Mladen Ianev (преглед на промените)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Доколкото знам xeon e5 са процесорите,които са най-добри за сървъри в момента...

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Здравей,

 

Написал си "...големината на базите". T.e., DB сървърът ще обслужва повече от една база в момент от време ? Машината само с базата ли ще се занимава или ще има и други функции ?

 

Отделно,

  • Какви операции се извършват ? Четене, писане, четене и писане (кои преобладават, ако може да се определи) ?
  • До колко тежки могат да бъдат заявките към базата и ще преобладават ли ? Най-хубаво, ако дадеш пример.
  • Тези 30 свързани потребителя какво точно ще правят ? И за 30 константни връзки ли става въпрос или за пик ?

Въобще, нужна е ясна картинка каква е цялата схема, грубо архитектурата на приложението (или името му, ако е популярно), защото "конфигурация за DBServer" е прекалено общо понятие.

 

Еднозначен отговор на въпроса "Кое е от най-голямо значение при работата с бази данни" също не може да се даде, но супер повърхностно:

 

CPU - зависи от какво естество са заявките, които ще се изпълняват, както и желаното време за реакция. Възможно е един бюджетен Xeon E3 да е напълно достатъчен, може и да умре, ако го захапят тия 30 клиента с едни доволни заявки. Отделно, има огромно значение и ако се пускат неоптимизирани (или некадърно написани) заявки, но приемаме, че всичко по обслужващия софтуер е ок.

RAM - трябва да е достатъчно. Имаше някакво правило, че обемът ОП трябва да е поне толкова, колкото е най-голямата база. Не винаги това е възможно (а и нужно), но за обемите, които спомена, едни 32GB са минимум.

STORAGE - най-често тук е ботълнекът. Ти и сам си се убедил, като си качил базата на ССД дискове (спрямо предполагам механични на PowerEdge-a ).

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Така е прав си!

Но и аз не съм много запознат каква информация е нужна за да се определи конфигурацията.

 

1. Операциите които се извършват са и четене и писане като преобладаващото е четене.

2. Заявките към базата са доста тежки (мое разбиране) SQL заявка ровеща в 10млн реда в базата не знам дали ти е от полза като информация. Такива ще са преобладаващите заявки.

3. 30-те връзки са константа - всичките са перманентно закачени, работещи с базата

4. Вероятността да се управляват повече от една база едновременно е малка - тоест една база от порядъка на 30гб

5. Машината ще се занимава само и единствено с базата данни

6. Приложението е писано на Делфи хе6,за Firebird 2.5, приложението е 32 бита и не може да адресира повече от 2гб памет на конекция до колкото знам.

не мога да кажа името му, но да приемем че голяма част от заявките са , както ти се изрази 'некадърно написани'. Става въпрос за складов софтуер (ерп - според някои :) )

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Ами трябва да тестваш на текущата конфигурация и да видиш от къде идва ботълнекът. Предполагам, че когато клиентите "ровят" в базата процесорът стои на 20-30% товар макс. Всъщност, за колко време грубо се изпълнява една такава заявка, която описа ?

 

Сценария, който описваш нито изисква клъстър, нито някаква N-процесорна конфигурация. Вече, ако ниският перформънс идва от склада (както и си мисля), не знам до колко ще е оправдано да се наливат 15000 лева в хардуер и да се впуснете в едни филми от друго измерение.

 

Нещо ей такова:

 

Intel® Xeon® Processor E5-1650 v3 (15M Cache, 3.50 GHz)

16GB ECC RAM

LSI MegaRaid 9260

2х SSD Samsung Pro 940 (минимум от desktop класа) в RAID1

 

Би било предостатъчно.

 

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

 

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


Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Така е процесора не се товари изобщо...

Една такава заявка може да я чакаш до 10 мин. ако изобщо излезе, защото има шанс да излезе Out of memory.

Клъстер ще бъде защото най-тежките заявки ще се правят на 3 места (от съображение за скорост на връзката) и трите са с АДСЛ интернет и ще е ужасно да се източи цялата заявка по интернет.

 

Много ти благодаря за отговора!

Личното ти мнение се припокрива с моето.

Върти ми се в главата нещо на новата платформа 2011v3 с ССД-то ама през PCI слотовете

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

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

 

Ако държиш да повишиш перформанса урбулешката, ето малко насоки, от които ще видиш ефект в твоя случай:

  • Минимум 32GB RAM
  • Задължително 64 битова версия на Firebird
  • Firebird в режим Classic или SuperClassic
  • Направи си един RAMDrive и си поиграй с него
  • RAID10/RAID100 от Samsung 940/950Pro или Enterprise level
  • Няма смисъл от SSD(та) на PCI-E. Така само ще увеличиш bandwidth-a, а основният проблем не ти е това.
  • четене, тестване, четене, тестване и т.н.

 

Ето и що годе адекватно четиво: Resolving Firebird performance problems

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Напишете отговор в тази тема...

×   Вмъкнахте текст, който съдържа форматиране.   Премахни форматирането на текста

  Разрешени са само 75 емотикони.

×   Съдържанието от линка беше вградено автоматично.   Премахни съдържанието и покажи само линк

×   Съдържанието, което сте написали преди беше възстановено..   Изтрий всичко

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Добави ново...