pwnbert
Legende
- Mitglied seit
- 30.10.2014
- Beiträge
- 5.945
War wohl die Komprimierung, was auch immer die GUI vom TNS hier für eine Methode wählt (wenn man das denn wählen kann).
Ich hab jetzt mal endlich mein Metadata-SVDEV hinzugefügt (2x 4tb Kingston Fury Renegade als Mirror) und mal paar große Verzeichnisse gelöscht und neu bespielt.
Wirkt ziemlich grandios schnell, das Ganze (also über SMB verbunden baut sich das alles schnell auf, die Ordnerstruktur und so), muss aber mal rebooten und so, nicht, dass es am ARC liegt (glaub ich aber fast nicht).
__________
1)
Ich hab da noch eine Frage dazu, das Pool selbst hab ich mit Standardwerten angelegt (was TNS da eben verwendet).
Da hab ich ein paar Datasets drauf, die meisten Einstellungen eigentlich gleich (inherit), smallbock 64k.
Wenn ich jetzt bei einem Dataset (wo hauptsächlich Medien liegen) die Recordsize von 128 auf z.B. 1M stelle und die Smallblocksize auf 256k/512k geht das so einfach, wenn die Pool Settings anders sind?
Was ich gelernt hab ist das hier ebenso, dass das dann eben nur neu geschriebene Dateien betrifft.
Beim anderen Dataset am gleichen Pool würde ich das lassen wie es ist (128/64).
Funktioniert das so?
__________
2)
Dann schwirrt mir noch das Thema Write-Amplification im Kopf herum, wobei das wahrscheinlich egal ist, weil auf dem Dataset/Pool wenig geschrieben wird... kann man vermutlich außen vor lassen?
__________
3)
Nochwas, ich hab da noch so ne andere Frage im Kopf, die mir bisher ungelöst ist, bezüglich SLOG und PLP.
Ich würde gern Proxmox auf 2x KC3000 2tb im Mirror installieren.
Ich hätte noch eine 1tb Micron 7400pro mit PLP über.
Nun ist es ja so, dass die PLP SSDs bei Sync-Writes wohl "cheaten", den Write also vorab bestätigen (weils durchs PLP als gesichert gilt).
Wenn ich jetzt für ein Pool ohne PLP ein SLOG mit PLP einrichte, funktioniert das dann so, oder ist das unnötig?
In anderen Worten, gilt der Sync-Write als durchgeführt, wenn er im ZIL (hier am PLP SLOG) gelandet ist, oder erst wenn er vom ZIL auf seinen "endgültigen Platz" geschrieben wurde?
Sonst wäre man dadurch ja nicht schneller, würde nur ein klein wenig Sicherheit gewinnen (worauf ich wohl verzichten kann, das Thema haben wir ja schon ausführlich behandelt, dass ein Mirror schon relativ stabil ist) und halt wohl die Schreiblast der Sync-Writes halbieren, da ja das ZIL dann wo anders liegt.
Ist nachvollziehbar, was ich meine?
3.1)
Ich überlege gerade, obs nen einfachen Weg gibt, das zu benchen.
Ich könnte am Testrechner ne VM erstellen, 1 M2 SSD und 1 M2 PLP SSD passthroughen, dort irgend ein Linux installieren, openzfs installieren und dann ein Pool erstellen aus der M2 und mit bzw. ohne M2 PLP als SLOG (hmmm.... könnte mir dafür napp-it ansehen, da hätte ich 2 Fliegen auf einen Schlag...) und dann.... benchen...
Aber wie benche ich das, wie erzwinge ich Syncs in so einem Fall? Kann ich das forcen?
Ich hab jetzt mal endlich mein Metadata-SVDEV hinzugefügt (2x 4tb Kingston Fury Renegade als Mirror) und mal paar große Verzeichnisse gelöscht und neu bespielt.
Wirkt ziemlich grandios schnell, das Ganze (also über SMB verbunden baut sich das alles schnell auf, die Ordnerstruktur und so), muss aber mal rebooten und so, nicht, dass es am ARC liegt (glaub ich aber fast nicht).
__________
1)
Ich hab da noch eine Frage dazu, das Pool selbst hab ich mit Standardwerten angelegt (was TNS da eben verwendet).
Da hab ich ein paar Datasets drauf, die meisten Einstellungen eigentlich gleich (inherit), smallbock 64k.
Wenn ich jetzt bei einem Dataset (wo hauptsächlich Medien liegen) die Recordsize von 128 auf z.B. 1M stelle und die Smallblocksize auf 256k/512k geht das so einfach, wenn die Pool Settings anders sind?
Was ich gelernt hab ist das hier ebenso, dass das dann eben nur neu geschriebene Dateien betrifft.
Beim anderen Dataset am gleichen Pool würde ich das lassen wie es ist (128/64).
Funktioniert das so?
__________
2)
Dann schwirrt mir noch das Thema Write-Amplification im Kopf herum, wobei das wahrscheinlich egal ist, weil auf dem Dataset/Pool wenig geschrieben wird... kann man vermutlich außen vor lassen?
__________
3)
Nochwas, ich hab da noch so ne andere Frage im Kopf, die mir bisher ungelöst ist, bezüglich SLOG und PLP.
Ich würde gern Proxmox auf 2x KC3000 2tb im Mirror installieren.
Ich hätte noch eine 1tb Micron 7400pro mit PLP über.
Nun ist es ja so, dass die PLP SSDs bei Sync-Writes wohl "cheaten", den Write also vorab bestätigen (weils durchs PLP als gesichert gilt).
Wenn ich jetzt für ein Pool ohne PLP ein SLOG mit PLP einrichte, funktioniert das dann so, oder ist das unnötig?
In anderen Worten, gilt der Sync-Write als durchgeführt, wenn er im ZIL (hier am PLP SLOG) gelandet ist, oder erst wenn er vom ZIL auf seinen "endgültigen Platz" geschrieben wurde?
Sonst wäre man dadurch ja nicht schneller, würde nur ein klein wenig Sicherheit gewinnen (worauf ich wohl verzichten kann, das Thema haben wir ja schon ausführlich behandelt, dass ein Mirror schon relativ stabil ist) und halt wohl die Schreiblast der Sync-Writes halbieren, da ja das ZIL dann wo anders liegt.
Ist nachvollziehbar, was ich meine?
3.1)
Ich überlege gerade, obs nen einfachen Weg gibt, das zu benchen.
Ich könnte am Testrechner ne VM erstellen, 1 M2 SSD und 1 M2 PLP SSD passthroughen, dort irgend ein Linux installieren, openzfs installieren und dann ein Pool erstellen aus der M2 und mit bzw. ohne M2 PLP als SLOG (hmmm.... könnte mir dafür napp-it ansehen, da hätte ich 2 Fliegen auf einen Schlag...) und dann.... benchen...
Aber wie benche ich das, wie erzwinge ich Syncs in so einem Fall? Kann ich das forcen?