Jump to content

Performanceprobleme mit kleinen Dateien


Sarek
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

 

wir haben ein massives Problem mit der Performance unseres Servers. Das Laden von Benutzerprofilen et cetera dauert viel zu lange. Nachdem ich lange das Netzwerk im Verdacht hatte, habe ich nun festgestellt, daß schon die Performance beim lokalen Kopieren katastrophal ist. Ich habe nun testweise 250000 Dateien mit einer Größe von je 8 Byte erzeugt und diese dann mal von einer Partition auf eine andere kopiert. Dabei wurden gerade mal 1000 Byte entsprechend ca. 125 Dateien pro Sekunde verarbeitet. Die Geschwindigkeit war auch beim Verschieben der Dateien innerhalb eines Laufwerks nicht besser, obwohl da ja eigentlich nur Verzeichniseinträge geändert und die eigentlichen Daten gar nicht bewegt werden.

 

Für ein QuadCore-System (Opteron x64) mit 4 x 2200MHz und 4 GB Arbeitsspeicher scheint mir das etwas wenig zu sein, oder? Große Dateien gehen natürlich schneller, aber wir haben im Normalbetrieb eben auch oft kleine Dateien zu bewegen. Wo könnte der Flaschenhals sitzen und wie kann ich ihn aufspüren? Der Echtzeitscanner des Anti-Viren-Programms war bei dem Versuch natürlich abgeschaltet.

 

 

Danke für gute Hinweise,

Sarek

Link zu diesem Kommentar
Das Laden von Benutzerprofilen et cetera dauert viel zu lange.

Wie lange denn genau? Und in welchem Verzeichnis befinden sich die kleinen Dateien?

 

Für ein QuadCore-System (Opteron x64) mit 4 x 2200MHz und 4 GB Arbeitsspeicher scheint mir das etwas wenig zu sein, oder?
Viel interessanter wären Angaben zum Speichermedium. Das ist meist der Flaschenhals ;) . Was sind das für Platten? Gibt es ein RAID-Verbund und falls ja, welcher?
Link zu diesem Kommentar
Wie lange denn genau? Und in welchem Verzeichnis befinden sich die kleinen Dateien?

 

Drei bis fünf Minuten für einen Anmeldevorgang sind bei Usern, die das System intensiv nutzen, schon normal. Die kleinen Dateien sind in der Regel in Unterverzeichnissen von "Anwendungsdaten".

 

 

Viel interessanter wären Angaben zum Speichermedium. Was sind das für Platten? Gibt es ein RAID-Verbund und falls ja, welcher?

 

Die Datenplatte mit den ganzen Freigaben ist eine WD20 EARS-00J2GB0 (2TB, SATA, 3GB/s, 64MB Cache) und das Betriebssystem liegt auf einer GB0160EA. RAID ist nicht im Einsatz, auch kein Striping.

Link zu diesem Kommentar

Gleich mehere Probleme:

 

die HD verwendet das Advanced-Format mit 4k/Sektor. Die Platten sind immer noch problematisch:

 

- wurde die HD unter 2008R2 bzw. dessen Installer partitioniert ? Prüfe mit diskpart, an welchem Offset die Partition anfängt (dazu sollte es Anleitungen im Internet geben)

- Wird der passende SATA-Treiber (im AHCI-Modus) des Mainboards verwendet ?

- Die Blocksize vom NTFS sollte mindestens 4k sein.

- Für 4k-HD's gab es irgendein Hotfix von MS. Ist das System per Windows Update auf dem neusten Stand und auch das SP1 installiert ?

 

Und viel wichtiger: In einem Server hängt man heute keine HD's mehr ohne vernünftigen RAID-Controller. Schon wegen der Ausfallsicherheit.

 

Aber Achtung: nicht alle RAID-Controller können schon mit 4k-HD's umgehen.

 

-Zahni

Link zu diesem Kommentar
die HD verwendet das Advanced-Format mit 4k/Sektor.

 

Warum sind die problematisch? Welches Format verwenden denn andere, unproblematischere Festplatten?

 

 

wurde die HD unter 2008R2 bzw. dessen Installer partitioniert?

 

Soweit ich mich erinnere, ja. Also zumindest die Daten-Festplatte; die Platte mit dem Betriebssystem wurde glaube ich mit der Setup-DVD partitioniert, die dem Server (HP ProLiant) beigelegen hat.

 

 

Prüfe mit diskpart, an welchem Offset die Partition anfängt

 

Die betreffende Partition beginnt bei 335545368576 (dez), also durch 4 teilbar. Hier die kompletten Diskpart-Daten der Festplatte mit der Daten-Partition (das ist die zweite Partition auf der Platte):

 

WDC WD20 EARS-00J2GB0 SCSI Disk Device
Datenträger-ID: "B571DC2A"
Typ   : "ATA"
Status : "Online"
Pfad   : "1"
Ziel : "1"
LUN-ID : "0"
Speicherortpfad : "PCIROOT(0)#PCI(0500)#ATA(C01T01L00)"
Aktueller schreibgeschützter Zustand: Nein
Schreibgeschützt  : Nein
Startdatenträger  : Nein
Auslagerungsdatei-Datenträger  : Nein
Ruhezustandsdatei-Datenträger  : Nein
Absturzabbild-Datenträger  : Nein
Clusterdatenträger : Nein

 Volume ###  Bst  Bezeichnung  DS     Typ         Größe    Status   
 ----------  ---  -----------  -----  ----------  -------  ---------
 Volume 3     E   Software     NTFS   Partition    312 GB  Fehlerfre
 Volume 4     H   Daten        NTFS   Partition    976 GB  Fehlerfre
 Volume 5     S   Service      NTFS   Partition    573 GB  Fehlerfre



Partition 1
Typ      : 07
Versteckt: Nein
Aktiv    : Nein
Offset in Byte: 1048576

 Volume ###  Bst  Bezeichnung  DS     Typ         Größe    Status   
 ----------  ---  -----------  -----  ----------  -------  ---------
 Volume 3     E   Software     NTFS   Partition    312 GB  Fehlerfre


Partition 2
Typ      : 07
Versteckt: Nein
Aktiv    : Nein
Offset in Byte: 335545368576

 Volume ###  Bst  Bezeichnung  DS     Typ         Größe    Status   
 ----------  ---  -----------  -----  ----------  -------  ---------
 Volume 4     H   Daten        NTFS   Partition    976 GB  Fehlerfre


Partition 3
Typ      : 07
Versteckt: Nein
Aktiv    : Nein
Offset in Byte: 1384121368576

 Volume ###  Bst  Bezeichnung  DS     Typ         Größe    Status     Info
 ----------  ---  -----------  -----  ----------  -------  ---------  --------
 Volume 5     S   Service      NTFS   Partition    573 GB  Fehlerfre

 

 

Wird der passende SATA-Treiber (im AHCI-Modus) des Mainboards verwendet?

 

Das ist eine gute Frage. Ich weiß es nicht mehr, wir haben die vorkonfigurierten BIOS-Einstellungen des ProLiant beibehalten. Wie kann ich das nachprüfen, ohne ins BIOS zu gehen (denn das kann ich über die Fernwartung nicht).

 

 

Die Blocksize vom NTFS sollte mindestens 4k sein.

 

Laut CHKDSK (Bytes pro Zuordnungseinheit) beträgt die Blockgröße genau 4k.

 

 

Für 4k-HD's gab es irgendein Hotfix von MS. Ist das System per Windows Update auf dem neusten Stand und auch das SP1 installiert ?

 

Bis auf das SP1 hat WindowsUpdate alle Updates eingespielt, aber darüber kommen ja meines Wissens nur die sicherheitsrelevanten Updates. Die Installation des SP1 ist für Anfang Oktober (Herbstferien) geplant.

 

 

Und viel wichtiger: In einem Server hängt man heute keine HD's mehr ohne vernünftigen RAID-Controller. Schon wegen der Ausfallsicherheit.

 

Auf die Ausfallsicherheit kommt es im Schulbetrieb nicht so an, daher wurde das RAID dem Rotstift geopfert. Ein vernünftiger (!) RAID-Controller kostet halt eine ganze Stange Geld, und das geben Schul-Etats selten her.

bearbeitet von Sarek
Link zu diesem Kommentar
Ich frage mich, welcher(?) Proliant-Server keinen RAID-Controller hat.

 

Es ist ein ProLiant ML115 G5, also das "Einsteigermodell". Natürlich hat der auch einen OnBoard-RAID-Controller, aber taugt der was? Ich habe mir mal sagen lassen, daß die ganzen OnBoard-RAID-Lösungen in den Bereich "Spielkram" gehören ...

 

 

Deine HD ist von HP sicher nicht für den Betrieb in diesem Server vorgesehen.

 

Wegen der 4K-Problematik? Oder wo liegt da jetzt das Problem?

 

Apropos 4k-Problematik: Besteht da jetzt noch Handlungsbedarf (Microsoft Patch), oder ist das Problem dadurch, daß die Blockgröße 4K beträgt und die Partition bei einer durch 4 teilbaren Position beginnt, erledigt?

Link zu diesem Kommentar

Windows 2008R2 kommt generell mit diesen HD's zurecht.

Allerdings ist der Server schon älter (von der ML100-Serie halte ich eh nichts).

Ob der Nvidia-Controller und dessen Treiber (speziell im AHCI-oder JBOD-Modus) damit zurecht kommt, ist mir nicht bekannt.

 

HP ProLiant ML115 G5 Server series -  HP ProLiant ML115 G5 Server - RAID Utility for Embedded Nvidia RAID Controller - c01859112 - HP Business Support Center

 

Details zum 4K-Problem:

 

AnandTech - Western Digital

 

Die Chipsatz-Controller sind in der Tat meist nicht so toll. Allerdings gibt es von HP Server, bei denen vernünftige Controller mit einem eigenen Prozessor verbaut sind.

 

HP bietet auch "richtige" RAID-Controller als Option an: http://h18000.www1.hp.com/products/quickspecs/13013_na/13013_na.HTML#Additional Options

 

Hier solltest Du aber nur originale HP-HD's verwenden.

Link zu diesem Kommentar

Noch mal zum Verständnis: Sind die langsamen Übertragungswerte auf unserem Server (siehe oben) der verwendeten Hard- und Software (also insbesondere der Tatsache, daß kein RAID verwendet wird) angemessen, oder ist da noch irgendein Flaschenhals, der möglicherweise mit einem simplen Häkchen oder Registry-Eintrag zu lösen wäre?

 

Wenn die Hardware keine höhere Leistung zulässt, dann kann ich damit ja durchaus zum Chef gehen, aber ich möchte vorher einen Konfigurationsfehler oder ähnliches weitgehend ausschließen ...

Link zu diesem Kommentar
Ein RAID-Controller-Cache erhöht generell die Lese-/Schreibleistung auf Festplatten. Zudem verwendest Du nur eine HDD, damit hat diese erheblich it den Positionieren der lese- und Schreibköpfe zu tun.

 

Das ist mir klar ... nur möchte ich wissen, ob meine real vorhandenen Geschwindigkeitswerte zu meiner real vorhandenen Hardware passen, oder ob das eigentlich auch ohne RAID schneller sein müßte als jetzt, sprich, ob irgendwas falsch konfiguriert sein könnte.

 

 

Off-Topic:

Mit welchem Programm hast Du die Dateien erzeugt?

 

Mit nem selbstgeschriebenen Script, wieso?

Link zu diesem Kommentar
Drei bis fünf Minuten für einen Anmeldevorgang sind bei Usern, die das System intensiv nutzen, schon normal. Die kleinen Dateien sind in der Regel in Unterverzeichnissen von "Anwendungsdaten".

Anwendungsdaten ist schon etwas allgemein, findest Du nicht ;)

Nenn mal konkrete Beispiele/Pfade.

 

Servergespeicherte Profile haben generell Probleme mit vielen kleinen Dateien. Das muss nicht unbedingt am Server liegen. Das sind meist Cookies, Hintergrundbilder, Programme, die das Profilkonzept von MS nicht verstanden haben und ihren Cache unter "Anwendungsdaten" statt "Lokale Einstellungen" speichern (Java, Adobe etc.).

 

Da sind dann 2 bis 5 Minuten drin.

 

Welche Anwendungen speichern denn nun Daten unter "Anwendungsdaten" bzw. "AppData\Roaming"?

Link zu diesem Kommentar
Welche Anwendungen speichern denn nun Daten unter "Anwendungsdaten" bzw. "AppData\Roaming"?

 

Alles mögliche. Welche Programme es sind, kann man ohne sorgfältige Untersuchung nicht feststellen; die Ordnernamen geben aber einen Hinweis darauf, welche Software-Hersteller da beteiligt sind. Teilweise stammen die Daten von Microsoft selbst, teilweise von Real, von Adobe, von Sun, von Mozilla (nicht der Cache!), von Corel, von Canon, von U3, von Promethean und so weiter.

 

Sicher kann man das Profil verkleinern, wenn man bei diversen Anwendungen die Speicherpfade umbiegt, aber darum geht es mir ja gar nicht. Ich möchte wissen, warum die Geschwindigkeit so niedrig ist. Das fehlende RAID kann nicht der einzige Grund sein.

 

Ich habe in der Zwischenzeit dieses "Musterprofil" mal auf verschiedene Server kopiert, auf die ich Zugriff habe, und es dort dann von einer Festplatte auf eine andere kopiert. Bei allen Server2008-Systemen ist die Geschwindigkeit in etwa mit unserem Server vergleichbar. Aber ausgerechnet auf einem uralten Server (eigentlich ein ausrangierter Arbeitsplatz-PC mit einem 1,6 GHz-Pentium4 und 1,5 GB Arbeitspeicher) mit Server 2003 (32 Bit) als Betriebssystem ist der Kopiervorgang um ein Drittel schneller. Das muß doch einen Grund haben ...

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...