Festplatten mit 4KB Blocks unter RAID

ghostadmin

Grand Admiral Special
Mitglied seit
11.11.2001
Beiträge
25.209
Renomée
189
Standort
Dahoam Studios
Da ja die Festplatten mit 4KB überhand nehmen und die 512bytes Modelle austerben, scheint es ja hinreichend geklärt zu sein wie man am Desktop vorgehen muss d.h. die Partition muss mit einem vielfachen von 8 anfangen.

Aber wie ist das bei RAID ? Schließlich liegt hier zwischen Partition des OS noch ein RAID container der die Blöcke z.B. bei RAID5 dem OS ganz anders präsentiert. Man kann dort nur die Blocksize einstellen aber so gut wie nie, den Startsector auf den einzelnen Platten. Ich kenne sowas nur von sehr teuren RAID Systemen.
 
Bei WD z.b soll man bei lediglich 1 Partion den Jumper der Platte setzen. irgendjemand hatte da eine Dokumentation gepostet, da es ansonsten zur Performance Einbußen kommt, als Ergänzung zu den obigen Fragen. Falls man ein Raid-5 mit 4 solcher Platten erstellen würde und quasi nur 1 Große Partition anlegt, einige haben sich im Luxx rangemacht sie am Perc 5i zu testen und klagten über die schlechte Performance der Platten.
 
Der Jumper macht anscheinend nichts anderes als in der Firmware Sector 63 nach 64 umzuleiten.

Aber wer sagt das bei einem RAID Controller der erste Sector immer 63 oder 64 ist?
 
Das weiß ich ehrlichgesagt nicht, .........habe ja selber solche Platten nicht in Verwendung.
 
Das Problem dabei ist eben das man bald nichts anderes mehr kaufen kann.

Bei meinem RAIDz scheint der Startsector 256 zu sein. Aber das hilft noch nicht, weil:
ZFS does variable block size, that is, a user can specify a blocksize, and if a file is smaller than the user specified blocksize, the file would be the smallest power of two between 512 bytes and the user specified blocksize.
 
Mehr Infos dazu, gibts hier. Allerdings auch keine Erkenntnis was Raid anbelangt. Der Startsektor sollte durch 8 teilbar sein, was bei dir der Fall ist.

Advanced-format-4kb-sektoren-bei-hdds (Luxx)

Des letzteren wird gemunkelt, das diese Technik den Hersteller die Möglichkeit gibt defekte Platter durch die neue Technik wiederverwenden zu können.

Zumindest findet man jetzt auch mal eine 800GB Platte von WD mit 4KB-Sektoren in den Preisvergleichen.
 
Du meinst weil man durch den zusätzlichen Layer in der Firmware einfach Sektoren auslassen könnte? Könnte man nicht jetzt schon einfach einzelne Sektoren blacklisten?
Schade das man nirgends einen Vergleich der Größe sieht zwischen 512byte und 4kb Platte.
Den einzigen Vorteil den ich mir vorstellen kann, ist nicht der Platz sondern die Geschwindigkeit. Wenn man das ganze in 512bytes aufteilen muss, dauert das länger als in 4kb Stücke. Demzufolge müsste die Kapazität mit 4kb Blöcken sogar sinken wenn man lauter Dateien unter 4kb schreiben würde.

Was ich auch seltsam finde, warum die Platten nicht einfach mit den echten 4KB Blöcken angesprochen werden können. Vielleicht spielt da Bios und OS nicht mit.

Bei ZFS bringt der Startsektor allein leider nichts, da ZFS zwar standardmäßig mit userdefined 4kb Blöcken arbeitet, aber wenn die Datei kleiner als 4kb ist, kann diese auf einem variablen Block von 512, 1024 oder 2048bytes abgelegt werden. Und wenn die Blockfolge z.B. so aussieht: 4096 - 512 - 4096 ist wieder alles durcheinander und nicht aligned zu den echten bzw. Firmware Sektoren.

Unter FreeBSD soll das Tool gnop helfen mit dem mal wohl irgendwie die Sektoren virtuell neu erzeugt und umschreibt und dann beim ZFS create nicht die ganze Platte auswählt sondern die neue virtuelle Partition (die nach dem Reboot verschwindet aber ZFS soll dann schnell funktionieren).

Irgendwo taucht auch fdisk -H 224 -S 56 /dev/hda auf. Standard sind 63 sectors per Track und 255 heads, dann kommen noch die cylinders dazu.
-H steht für Heads und -S für sectors/track
63 und 255 ist hier schon die Höchstgrenze laut Bios und 56 das nächste durch 8 teilbare.
Jetzt wäre noch interessant ob dann auch die Anzahl der cylinder (aus heads*sectors/track*cylinder) automatisch geändert wird und warum 224 heads.
Laut hier:
https://features.opensuse.org/306337
Soll 56*224 ein vielfaches von 128kb pro Track ergeben. Das wäre aber nur für SSD notwendig.

Auf jeden Fall reicht es anscheinend auch unter Linux (zumindest bei fdisk) nicht aus, den Startsector auf z.B 64 zu setzen. Nur wenn Start und Endsektor in der CHS (cylinder, head, sector) Ansicht, also eigentlich heute LBA Ansicht (heutige Tools schreiben noch CHS) durch 8 teilbar sind, passt es. Dazu in fdisk die units auf sectors schalten.

Warum soll jetzt aber parted eine andere Geometrie benutzen:
http://www.brain4free.org/wiki/doku.php/start
Anscheinend benutzt parted keine 63 sectors per track.

Interessant auch:
"Does the WD Align utility have to be run again if a drive is reformatted?
No, users will only need to run WD Align one time after initially installing Windows XP. Once Windows XP has been aligned, it will stay aligned even if the drive is reformatted or many files are added or removed."

Also schreibt das Tool nicht in der Partition rum sondern ändert die Sektoren in der Firmware. Oder ist mit formattieren nicht das neue partitionieren gemeint, wer weiß.

Und auch das sollte man gelesen haben:
http://tldp.org/HOWTO/Large-Disk-HOWTO-6.html

http://ldn.linuxfoundation.org/blog-entry/aligning-filesystems-ssd’s-erase-block-size
"Vista has already started working around this problem, since it uses a default partitioning geometry of 240 heads and 63 sectors/track. This results in a cylinder boundary which is divisible by 8"

255*63=16065/8=2008,13 4kb Blöcke
240*63=15120/8=1890 4kb Blöcke (1890 lässt sich aber nicht durch 32 teilen für 128kb Blöcke)

"However, with SSD’s (remember SSD’s? This is a blog post about SSD’s…) you need to align partitions on at least 128k boundaries for maximum efficiency. The best way to do this that I’ve found is to use 224 (32*7) heads and 56 (8*7) sectors/track. This results in 12544 (or 256*49) sectors/cylinder, so that each cylinder is 49*128k."

224*56=12544/8=1568/32=49 128KB Blöcke

Aber:
"The first partition will only be aligned on a 4k boundary, since in order to be compatible with MS-DOS, the first partition starts on track 1 instead of track 0, but I didn’t worry too much about that since I tend to use the first partition for /boot, which tends not to get modified much. You can go into expert mode with fdisk and force the partition to begin on an 128k alignment, but many Linux partition tools will complain about potential compatibility problems (which are obsolete warnings, since the systems that would have booting systems with these issues haven’t been made in about ten years), but I didn’t needed to do that, so I didn’t worry about it."
 
Wie gesagt, beschäftigt habe ich mich damit nicht, kann da nur zusammenfassen was in dem Link steht, bzw. spekulieren. Und der Hauptnachteil ist, das bei einem unpassenden Startsektor die Festplatte einen heftigen Performance Einbruch erleidet, quasi der Platter 1x Extradreh bekommt um wieder die passende Postition zu erlangen. Bisher macht mir das den Eindruck das diese Technik im Gegensatz zu den SSDs derzeit quasi im "Beta Status" liegt, zum größeren übel wollen ab einem bestimmten Datum ALLE Hersteller das nutzen, das steht fest und ist unveränderbar. Sprich auch der Servermarkt muß hier nachgeben, mit dem Konsequenzen die sich daraus ergeben können. Aber ich denke bis dahin ist der Kram ausgereift. Vista und Windows 7 sollen damit ja umgehen können, lediglich XP hinkt da hinterher.
 
Ich bin ganz draußen aus dem Thema - denke aber, das mit den 4kB Blöcken ist im Raid eine Frage der Controller-Firmware, ggf treiberseitig. Aber eigendlich ist eine treiberseitige Sonderstellung der Blockgrößen auf 4kB ein weiterer Umweg.

Wahrscheinlich wirds so laufen, daß man sich passend zu den neuen Platten passende Raidkontroller kaufen muß. ;D

Stellt euch mal vor, ein Raid aus eine 512 und einer 4096 Platte...
 
in zukunft sollen die platten direkt mit 4k-sektoren angesprochen werden, da in aktuelle und älteren os und vor allem im bios(!) die 512 byte fest einkodiert sind, kann man nicht direkt von 512 auf 4096 springen, sondern muss sich mit dem derzeitigen system behelfen.
der wechsel auf 4k hat technische gründe: http://www.anandtech.com/show/2888
dort kann man auch sehen, warum gerade 4k pro sektor sinn machen. nachteile in punkto speichereffizienz bekommt man dadurch nicht, da alle aktuelle dateisysteme mit blöcken von je 4kb arbeiten (gilt scheinbar nicht für zfs). da die fs-blöcke die kleinsten adressierbaren einheiten ineinem fs sind, gehen auch jetzt schon immer 4 kb draauf, wenn man nur 512 byte speichern möchte.

bei raid-controllern könnte ein firmware-update helfen

bei fdisk muss man nicht unbedingt auf die sektorenansicht umschalten. wenn beim erzeugen der partitionstabelle die werte für heads und sectors/track passend gesetzt wurden. habe bei mir die werte so gewählt, dass die zylinder bei mir 1 mb groß sind. somit kann ich den rest auch zylinderweise machen. das alignment stimmt immer und ich finde es übersichtlicher als die anderen empfohlenen varianten.
Code:
Disk /dev/sda: 64 GB, 64022904832 bytes
64 heads, 32 sectors/track, 61057 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System 
/dev/sda1               4         260      266176   83  Linux
/dev/sda2             261       61057    62255104   8e  Linux LVM
 
Zurück
Oben Unten