-E Startoption und SSDs

8

Hat jemand Hinweise auf die Auswirkungen der -EVerwendung von SSDs gesehen?

Die Auswirkung auf "Spinning Rust" -Laufwerke ist unbestritten - aber SSDs werden durch zufällige E / A nicht wirklich nervös gemacht. Ich frage mich, ob die -EOption die Leistung überhaupt beeinträchtigen könnte.

Auf Servern mit einer Mischung aus Laufwerken (SSD-SAN, PCI-SSDs und herkömmliches SAN) muss SQL Server beim Start entscheiden, ob er verwendet werden soll -Eoder nicht. Ich habe einige empirische Beweise dafür, dass die Option die Leistung beeinträchtigen könnte, aber ich möchte das Feedback anderer Leute, bevor ich darüber nachdenke, sie zu entfernen.

Mein Setup verwendet Standard-64K-RAID-Streifen, und die NTFS-Clustergröße beträgt ebenfalls 64K.

John Alan
quelle

Antworten:

3

In den folgenden Artikeln werden die Vor- und Nachteile der -EStartoption erläutert:

Fast Track im Fokus: Den Startparameter –E verstehen

Zusammenfassung:

-Eändert den proportionalen Füllalgorithmus . Anstatt nach einer einzelnen Extent-Zuweisung zur nächsten Datei überzugehen, erfolgt die Verschiebung, nachdem 64 Extents zugewiesen wurden.

Diese Umfangszuordnungen müssen nicht aus einer einzigen Tabelle stammen. Wenn Sie beispielsweise zwei Tabellen parallel zu –Eaktiviert laden , belegen beide Tabellen die 64 Speicherbereiche in der einzelnen Datei, bevor Sie mit der nächsten Datei fortfahren. -Eändert nichts an der Tatsache, dass SQL Server jeweils einen Bereich zuweist.

Der Zweck von –Ebesteht darin, das Vorlesen großer E / A zu ermöglichen. Wenn zwei Tabellen, die dieselbe Datei / Dateigruppe verwenden, parallel geladen werden, wird der Vorteil von –Eentfernt. Die Extents werden fragmentiert, was zu einem kleinen Vorauslesen der E / A führt.

-Ewurde ursprünglich in den Code eingefügt, damit Indexbuilds und -wiederherstellungen 256 KB jeder Datei vor dem Round-Robining verwenden können, um eine bessere sequentielle E / A für große Data Warehouses zu erhalten. Es war ursprünglich ein "Benchmark-Special" und hatte nur sehr wenige Tests. Es wurde nur dokumentiert, weil es während der Benchmarks verwendet wurde (und daher dokumentiert werden musste).

Microsoft White Paper (pdf)

Community Wiki Antwort generiert aus einem Kommentar zu der Frage von @Kin

Paul White
quelle