Dies ist eine große Frage, die davon abhängt.
Ich kann die Frage, wie die einzelnen RAID-Arrays erstellt werden, nicht beantworten, da ich kein Speicherexperte bin, aber ich kann Ihnen beim Rest helfen.
Das erste, was Sie berücksichtigen müssen, ist die Auslastung der verschiedenen Datenbanken - OLTP (Lesen / Schreiben) oder DSS / DW (Meistens Lesen). Für Lese- / Schreib-Workloads sollten Sie RAID 1 oder RAID 10 (RAID 1 + 0) in Betracht ziehen, da diese Redundanz und hervorragende Lese- / Schreibleistung bieten. Für Workloads mit Lesezugriff können Sie RAID 5 verwenden. Der Grund, warum RAID 5 nicht für Lese- / Schreib-Workloads verwendet werden sollte, besteht darin, dass Sie für Schreibvorgänge eine Leistungsstrafe zahlen.
Transaktionsprotokolle sind ihrem Wesen nach schreib- / lesbar (oder meist schreibgeschützt, je nachdem, ob Sie das Transaktionsprotokoll für irgendetwas verwenden - z. B. für Protokollsicherungen oder für die Replikation) und sollten daher niemals auf RAID 5 gestellt werden.
Dies bedeutet, dass Sie für einige Datenbanken und Workloads möglicherweise Datendateien auf RAID 5 und Protokolldateien auf RAID 1/10 haben und für andere Datenbanken möglicherweise alles auf RAID 1/10. Wenn Sie über eine partitionierte Datenbank verfügen, enthält diese möglicherweise einige Lese- und einige Lese- / Schreibdaten, möglicherweise sogar in derselben Tabelle. Dies könnte in separate Dateigruppen aufgeteilt werden und dann jeder Dateigruppe eine entsprechende RAID-Stufe zugewiesen werden.
Die Trennung der tatsächlichen Datenbanken hängt wiederum von der Arbeitslast und den Funktionen des zugrunde liegenden E / A-Subsystems ab. Möglicherweise ist ein höherer Grad an Trennung erforderlich, um Dinge auf einzelnen RAID-Arrays zu speichern als beispielsweise in einem SAN.
Tempdb ist ein Sonderfall für sich, da es sich in der Regel um eine stark ausgelastete Datenbank handelt, die getrennt von den anderen Datenbanken gespeichert werden sollte. Die Systemdatenbanken sollten nicht stark ausgelastet sein und können überall platziert werden, solange Redundanz besteht.
Hier ist ein Link zu einem Whitepaper, das ich geschrieben habe und das Ihnen helfen sollte: Physical Database Storage Design . Stellen Sie außerdem sicher, dass Ihr E / A- Subsystem die erwartete Arbeitslast bewältigt - siehe dieses Whitepaper: Best Practices für die E / A-Vorbereitung . Stellen Sie schließlich sicher, dass Sie die richtige RAID-Stripe-Größe (in der Regel 64 KB oder höher auf neueren Systemen) und die richtige NTFS-Zuweisungseinheit (in der Regel 64 KB) verwenden und dass Sie auf Systemen vor Windows Server 2008 den Festplattenpartitions-Offset korrekt festlegen . Informationen zu diesen und Verweise auf weitere Informationen und warum Sie sie auf diese Weise konfigurieren sollten, finden Sie in diesem Blogbeitrag: Sind die Versätze Ihrer Festplattenpartitionen, die RAID-Stripe-Größen und die NTFS-Zuordnungseinheiten richtig eingestellt? .
Bototm-Linie: Kennen Sie Ihre Arbeitslast und die Fähigkeiten Ihres E / A-Subsystems und implementieren Sie diese entsprechend.
Ich hoffe das ist hilfreich für dich.
PS Was tempdb betrifft, ist es eine große Menge an Würmern, wie Sie es konfigurieren sollten, und es gibt alle Arten von widersprüchlichen Informationen. Ich habe einen umfassenden Blog-Beitrag über die Konfiguration von Tempdb-Datendateien bei Misconceptions um TF 1118 geschrieben .