Archiv SCSI 2.798 Themen, 12.895 Beiträge

Performanceerhöhung bei RAID5 möglich?

AH966 / 7 Antworten / Flachansicht Nickles

Hallo!

Habe in der Firma eine Server mit ner Informix-Datenbank aufgesetzt (IDS2000). Der Server ist mit einem PERC3-Raid-Controller, sowie 4 Xeon-MP-CPUs á 1.5 GHz und 1 GB DDR-RAM ausgestattet. Gespeichert wird auf 4 SCSI-Platten á 18 GB mit 15.000 U/min. im RAID5 + 1 als HotSpare.

Die Antwortzeiten sind wider Erwarten schlechter als auf dem alten System (4 PIIIs, 512 MB RAM).
Bevor ich jetzt aber meinen Doktor in Informix Dynamic Server mache, wollte ich nur fragen, ob es performancemäßig etwas ausmacht, wenn ich statt auf 4 Platten, auf 5 Platten speichere (die HotSpare dann quasi auslagere, mehr passen halt net in den Server).
D.h. die Kapazität steigt auf jeden Fall um 18 GB, aber wie sieht\'s mit der Performance aus? Im RAID5 arbeitet dann ja quasi auch ein Schreib-Lesekopf mehr, dann können parallel doch mehr Daten verschoben werden, oder?

Die Anregung kam von unserem Sofwarehaus, die sagten, lieber auf 10 Platten á 9 GB, statt auf 5 Platten á 18 GB speichern...
Ist da was dran?

P.S.: Ich weiß, daß ich den Server komplett neu aufsetzen muss - das ist aber sowieso geplant...

Sicher? AH966
Sicher? xafford
xafford AH966 „Performanceerhöhung bei RAID5 möglich?“
Optionen

hi, also erst einmal sollte man analysieren, wo der engpaß ist. rein physikalisch bedingt ist ein raid 5 im schreiben kaum schneller als ein raid1 und um einiges langsamer als ein raid0, da die berechnung der checksummen das ganze doch etwas ausbremst. wo es seine vorteile ausspielen kann ist beim lesen, gerade wenn es ein reines scsi-raid ist und kein mischsystem mit scsi oder fc-anbindung und ide-platten, wie z.b. die Arenas. wenn es wirklich komplett krankt und nciht mehr ausreicht, dann wäre eventuell über ein raid50 nachzudenken, was aber noch von einem faktor abhängt: wieviele kanäle hat das raidsystem?
es bringt nämlich nicht viel, wenn es nur 2 kanäle hat und U160 als modus besitzt, da bist du mit 2 platten pro kanal und spare schon ziemlich an der grenze der realen übertragung, eine minimale steigerung sollte aber noch drin sein. sollte das raid nur einen einzigen kanal besitzen, dann ist mit platten ohnehin keine durchsatzsteigerung mehr zu erreichen. was aber bei datenbanken noch ein immenser faktor ist sind die clustergrößen und das dateisystem. wenn in eurer datenbank nicht große BLOBs gespeichert sind, sondern hauptsächlich chars, ints, usw, dann kann eine optimierung der clustergröße einiges bringen, da müsste man aber schon recht genau analysieren, wie große die pakete letztendlich werden.
aber mal das raid außer acht gelassen, datenbanken (wenigstens die, welche den namen verdienen) arbeiten hauptsächlich aus dem speicher, und wenn die antwortzeiten oder die dauer von querys schlecht sind, dann liegt es meist eher am design der datenbank, probleme des hostsystems, als an problemen mit den platten. der großteil der tables landet ohnehin im speicher und die gängisten querys werden gecached. untersucht mal das tabellen und datenbanklayout in bezug auf die gewählten tabellentypen undindizes. lieber ein paar indexe zu viel, als zu wenig. vor allem auch BLOBs in der datenbank machen den meisten zu schaffen, einzig oracle ist bei BLOBs wirklich empfehlenswert.