Eignung von DL380p-Gen8 + D2700 für SQL 2012 Standard Edition

Eignung von DL380p-Gen8 + D2700 für SQL 2012 Standard Edition

Eine Frage an diejenigen, die sich mit der Leistung von HP-Servern und SQL auskennen …

Ich versuche, einen geeigneten Server zu spezifizieren, der die folgenden Anforderungen erfüllt:

  1. SQL 2012 Standard Edition ausführen (ich kann keine Genehmigung für die Enterprise Edition erhalten)
  2. Die Hauptdatenbank ist derzeit 600 GB groß, ein Wachstum auf bis zu 1.200 GB in den nächsten 3 Jahren ist möglich
  3. Die Anzahl der Protokolldateien für die Hauptdatenbank beträgt derzeit 120 GB. Eine Erweiterung auf 300 GB ist möglich.
  4. Die OLAP-Datenbank ist 60 GB groß und kann auf bis zu 120 GB erweitert werden.
  5. Reporting Services ist etwa 5 bis 10 GB groß

Windows 2012 Standard Edition ermöglicht >32 GB (juhuu!) und SQL 2012 Standard Edition ermöglicht eine RAM-Nutzung von 64 GB, daher dachte ich, dass ein Server mit 96 GB RAM für das Betriebssystem, SQL, OLAP und RS ausreichen würde ...

Jetzt mache ich mir Gedanken über den Speicherplatzbedarf. Ich möchte jede Komponente auf ihrem eigenen Raid 1- oder Raid 1+0-Volume unterbringen. Demnach bräuchte ich:

  1. 2 x 300 GB 15.000 U/min 6 GB DP SAS-Festplatten in RAID 1 für Boot-Betriebssystem (300 GB nutzbar)
  2. 8 x 300 GB 15.000 U/min 6 GB DP SAS-Festplatten in RAID 1+0 für die Hauptdatenbank (1.200 GB nutzbar)
  3. 2 x 300 GB 15.000 U/min 6 GB DP SAS-Festplatten in RAID 1 für Protokolldateien der Hauptdatenbank (300 GB nutzbar)
  4. 2 x 300 GB 15.000 U/min 6 GB DP SAS-Festplatten in RAID 1 für OLAP
  5. 2 x 300 GB 15.000 U/min 6 GB DP SAS-Festplatten in RAID 1 für Reporting Services
  6. 2 x 300 GB 15.000 U/min 6 GB DP SAS-Festplatten in RAID 1 für temporäre Datenbanken

OK, ich weiß, dass Reporting Services und Temp DB nicht jeweils 300 GB benötigen, aber ich denke, es spricht einiges dafür, alle die gleiche Festplattengröße zu haben

Da der HP DL380p-Gen8 nur über 8 Festplattensteckplätze verfügt, bräuchte ich ein externes SAS-Laufwerk-Array wie das D2700, in dem die restlichen 10 Festplatten Platz finden.

Ich mache mir keine Sorgen darüber, zu viel Speicherplatz zu haben.

Mein Hauptziel besteht darin, die maximale Leistung aus diesem Server herauszuholen.

Meine Hauptfrage lautet also: Ist der IO-Durchsatz zwischen dem DL380 und dem D2700 ausreichend? Es scheint, als würde nur ein einziges Mini-SAS-Kabel benötigt, um das externe Laufwerksgehäuse mit dem Server zu verbinden.

Meine zweite Frage lautet: Entspricht die Gesamtspezifikation des Servers den bewährten Vorgehensweisen?

Mir wurde ein ungefähres Budgetlimit von 60.000 US-Dollar zugeteilt, das meiner Meinung nach nicht ausreicht. Daher kann ich möglicherweise etwas mehr verlangen, wenn ich es rechtfertigen kann.

Vielen Dank im Voraus!

Antwort1

Ich weiß nicht, wie das bei HP ist, aber das Disc-Layout riecht für mich „LANGSAM“.

Ernsthaft.

Erstens: Ein separates RAID 1 für alles bedeutet, dass die IOPS verschwendet werden, wenn etwas nicht verwendet wird. Ich würde mich für ein RAID 10 entscheiden.

Zweitens verwenden Sie teure 15k-ROM-Disks und – wow – Sie erhalten mit einer SATA-basierten SSD etwa die 100-fache IO-Leistung – zu einem niedrigeren Preis.

Ich persönlich würde also dafür sorgen, dass Sie nach diesem Vorschlag nie wieder in meiner Firma auf Personalsuche gehen. Das ist der neueste Stand der Technik – für das Jahr 2000. Jetzt sind wir einige Jahre später.

Da der DL 380p 8 Laufwerke hat, würde ich mich für ein KOMPLETT-SSD-SETUP entscheiden, mit einer 480 GB Samsung 843T SSD auf Enterprise-Niveau. Raid 10. Das sind ungefähr 1200 GB nutzbarer Speicherplatz mit 8 Laufwerken, 1600 mit 8 – und die Leistung wird Ihr teureres Setup um Längen übertreffen. Kaufen Sie 9-10 Laufwerke, damit ein Ersatz vorhanden ist, und los geht‘s. Ich bin nicht sicher, ob der Raid-Controller diese Bandbreite bewältigen kann ;)

Antwort2

Ich versuche, die in den Kommentaren stattfindende Diskussion zu vermeiden, daher werde ich meine Ideen hier einbringen.

  • Verwenden Sie kein großes RAID-Array mit ausgelasteten SQL-Servern. Es gibtsehrgute Gründe, Daten, Protokolle und Tempdb physisch auf verschiedenen Spindeln zu trennen. Sie möchten keine I/O-Warteschlangen für dasselbe Array, wenn Sie OLTP oder eine andere Art von transaktionsintensiver Umgebung verwenden.
  • SQL-Server profitieren stark von SSDs, da sie fast immer sequenziell schreiben/lesen. Die erhöhte Bandbreite ist enorm hilfreich. Stellen Sie sicher, dass Sie Dual-Port-SAS-SSDs verwenden, verwenden Sie keine SSDs mit S-ATA-Schnittstellen.
  • Der Arbeitsspeicher (RAM) ist nach wie vor der wichtigste Faktor für die Ausführungsgeschwindigkeit Ihrer Abfragen. Je mehr Arbeitsspeicher, desto mehr Daten und Ausführungspläne werden zwischengespeichert. Unterschätzen Sie dies nicht. 64 GB RAM können in Zukunft schnell zum limitierenden Faktor werden. Bedenken Sie also, dass Sie eines Tages vielleicht auf SQL Server Enterprise upgraden möchten. Lassen Sie also Spielraum für RAM-Upgrades.
  • Der Controller-Cache ist für Schreibvorgänge bei sequenziellen Workloads äußerst wichtig. Der Lese-Cache ist nur hilfreich, wenn Sie entweder Hotspots haben (was bei SQL nicht sehr häufig vorkommt) oder wenn der Controller intelligent genug ist, um auf den Festplatten vorauszulesen.
  • Ein separates Array nur für Analysedienste und Berichtsdienste zu haben, scheint etwas übertrieben. Es hängt jedoch von Ihrer spezifischen Situation ab. Nur Sie können beantworten, wie viel IOPS/Antwortzeit Sie für jede Komponente benötigen.

Wenn Sie sich dennoch für die SSD entscheiden, würde ich mindestens Folgendes vorschlagen:

  • 2 x 300 GB 10.000 in RAID1 für OS+SQL-Programmdateien (es macht keinen Sinn, dafür Geld für SSDs auszugeben)
  • 8 x 400 GB eMLC SSD in RAID10 für DB-Daten/OLAP/Reporting (holen Sie sich die SSD mit den schnellsten Lese-IOPS/BW, die Sie bekommen können)
  • 2 x 400 GB SLC (oder eMLC) SSD in RAID1 für DB-Log (SLC sind teuer, aber sehr zuverlässig. Verwenden Sie eMLC, wenn Sie es sich nicht leisten können)
  • 2 x 200 GB SLC (oder eMLC) SSD in RAID1 für TempDB (wie oben)

Antwort3

Das ist ein schlechtes Design ... Teils Aberglaube, teils Missverständnis über die Entwicklung der Speichertechnologien.

Aber es gibt Hoffnung!

  • Sie sollten sich dieHP ProLiant DL380p Gen8-Server mit 25 Einschüben. Es bietet Platz für 25 x 2,5-Zoll-Festplatten auf einer SAS-Expander-Backplane. Dadurch wird ein externes D2700-Speichergehäuse überflüssig.

  • Der optimale Wert für 2,5-Zoll-SAS-Enterprise-Festplatten liegt derzeit bei 900 GB. Sie sind heute mit Kapazitäten von 300 GB, 450 GB, 600 GB, 900 GB und 1,2 TB erhältlich. 900-GB-Festplatten sind mittlerweile relativ günstig.

  • HP Smart Array-Controller ermöglichen Ihnen die Konfiguration mehrerer logischer Laufwerke pro Gruppe physischer Datenträger. Etwa 16 Spindeln mit 900 GB-Laufwerken (in einem Array) könnten in die jeweiligen logischen Datenträger aufgeteilt werden, die Sie benötigen. Auf diese Weise erhalten Sie die Datenträgerisolierung, die Sie benötigen, aber die kollektiven E/A-Funktionen von 16 oder mehr Datenträgern.

  • HP-Controller können SSDs als Lese-Cache zur Unterstützung eines Laufwerk-Arrays nutzen.

  • Heutzutage nur noch rotierende Festplatten zu verwenden, ist altmodisch und stellt nicht die effektivste Nutzung der Ressourcen dar.

  • Sie können in Gen8-HP-Servern wirklich keine SSDs von Drittanbietern verwenden.

  • Ich könnte für 25.000 US-Dollar eine HP-Spezifikation erstellen, die die Leistung der Plattform maximieren würde.

Antwort4

HP ProLiant DL380p Gen8 16-Schächte.

2 x 300GB 10k raid 1 OS
8 x 300GB 15k raid 10 mainDB
1 x 128GB Pcie fusion IO card enterprise class for temp DB
2 x 600GB 10k raid 1 for all logs
2 x 300GB 10k raid 1  for reporting and OLAP
2 x 900GB 10k raid 0 flat file backup

Zwei RAID-Controller mit Writeback und Akku 1GB Arbeitsspeicher

Stellen Sie sicher, dass Sie Raid 10 auf 1 und den Rest auf der anderen Karte und alle SAS platzieren.

verwandte Informationen