Zum Hauptinhalt springen

Hardware-Empfehlung für den Datenbank-Server

Hardware-Empfehlung für den Datenbank-Server Aufstellung der empfohlenen Hardwarekonfiguration beim Einsatz des CONZEPT 16-Servers

Die Hardware des Datenbank-Servers beeinflusst wesentlich die Leistungsmerkmale des gesamten Datenbanksystems. Daher ist beim Einsatz einer Datenbank ein starkes Augenmerk auf die zu verwendende Hardware zu legen. Vor der Investition in die einzelnen Server-Bausteine muss jedoch der Einsatzzweck des Systems genau bestimmt werden. Dabei spielt die Datenbankapplikation die größte Rolle. Denn diese bestimmt die spätere Arbeitsweise mit der gesamten Software-Umgebung und bedingt damit die Hardware-Konfiguration des Datenbank-Servers.

Die Server-Hardware muss je nach Applikation bestimmte Voraussetzungen für einen performanten Einsatz erfüllen. Bei jeder Applikation und Installation müssen diese Voraussetzungen überprüft und gegebenenfalls variiert werden. Daher verstehen sich alle Angaben auch nur als ungefähre Richtwerte. Nachfolgend die Faktoren, die die Performanz eines Datenbanksystems beeinflussen:

Anwenderzahl und Anfragehäufigkeit

Die Anzahl der Benutzer und die Häufigkeit der Anfragen wirkt sich in erster Linie auf die Prozessorbelastung aus. Zu empfehlen sind dabei unabhängig von der Benutzeranzahl mindestens zwei Kerne, sodass zwei logische Einheiten die Anfragen parallel bearbeiten können. Ab einer Benutzeranzahl von 50 Anwendern ist zu einem System mit 4 Prozessorkernen zu raten. Die Anzahl der Prozessorkerne lässt sich entsprechend der folgenden Tabelle weiterführen:

bis 50 Benutzer2 - 4 Kerne
bis 100 Benutzer4 - 8 Kerne
bis 200 Benutzer8 oder mehr Kerne

Zu dem Aspekt der Benutzeranzahl muss natürlich auch die Häufigkeit der Anfragen entsprechend berücksichtigt werden. Bei einer hohen Anfragefrequenz sollte auch ein höherer Wert auf die Prozessorkonfiguration gelegt werden. Eine umfassende Selektionsverarbeitung ist beispielsweise ein Merkmal, das sich auch auf die Wahl des Prozessors auswirken muss.

info

Höhere Taktraten des Prozessors sind wichtiger als eine große Anzahl von Cores.

Die vermutete Anfragehäufigkeit muss sich auch in der Hauptspeicherausstattung des Systems wiederspiegeln. Denn auch wenn der Server eine große Menge an Anfragen durch die Prozessoren verarbeiten kann, müssen dennoch die Daten aus der Datenbank gelesen werden. Eine gute Hauptspeicherausstattung führt ebenfalls zu einer schnelleren Verarbeitungszeit der Anfragen, da die Daten bereits im Cache vorgehalten werden können (siehe hierzu auch Transaktionsvolumen ).

Transaktionsvolumen

Der Einsatzzweck der Datenbankapplikation, die Applikationslogik und die Häufigkeit sowie das Volumen der Datenbankanfragen bestimmen das zu erwartende Transaktionsvolumen (siehe auch Transaktionsmanagement des CONZEPT 16 Servers). Um Transaktionen verarbeiten zu können, muss der Datenbank-Cache entsprechend eingerichtet werden. Bezüglich der Hardware-Konfiguration des Datenbank-Servers muss sich das Volumen der Transaktionen also direkt auf den zur Verfügung stehenden Hauptspeicher auswirken.

Der einer Datenbank zur Verfügung stehende Hauptspeicher muss in der Regel 10% der Datenbankgröße betragen. Mehr als diese 10% sind insbesondere bei vermehrtem Datenaufkommen ratsam, insofern es die Systemumgebung zulässt. Daher wird empfohlen den Datenbank-Server auf einer 64-Bit-Platform einzusetzen. Dazu eignen sich in erster Linie "Windows Server 2012" und der "Linux Kernel 3.x". Dort besteht dann die Möglichkeit den notwendigen Hauptspeicher für die Datenbanken einzurichten (siehe auch Architektur des Servers ). Bei Datenbanken, die nur als Container für binäre Daten dienen, ist es nicht notwendig einen großen Cache anzulegen. Ein großer Datenbank-Cache ist nur nötig, wenn Daten überwiegend in der Baumstruktur einer CONZEPT 16-Datenbank organisiert werden (siehe Architektur der Datenbank ).

info

Der Hauptspeicher eines Datenbank-Servers stellt nicht nur eine Verbindung zwischen Datenverarbeitung und Datenspeicherung her. Durch das Zwischenspeichern von gelesenen oder noch zu schreibenden Daten steuert er auch einen maßgeblichen Teil zur Performance des gesamten Systems bei. Daher muss dieser Komponente eine erhöhte Aufmerksamkeit geschenkt werden. In der Regel ist der Hauptspeicher die kritische Komponente eines Systems und führt gegebenenfalls zu einer höheren oder niedrigeren Performance.

Neben der Größe des Hauptspeichers werden auch die benötigten Input / Output-Kapazitäten des Storagesystems vom Transaktionsvolumen beeinflusst. Selbst ein großer Hauptspeicher kann in der Regel nicht alle Informationen vorhalten. Die notwendigen Schreib- und Leseoperationen auf der Speichereinheit dürfen dann nicht zu einer inakzeptablen Verzögerung führen (siehe hierzu auch Datenbankgröße ).

Datenbankgröße

Die Größe der Datenbank beeinflusst nicht nur wie erwähnt die Größe des notwendigen Hauptspeichers, sonder ebenfalls wie das Transaktionsvolumen auch das notwendige Storagesystem. Für das Arbeiten mit einem Datenbanksystem werden generell SSDs mit SATA- (Serial Advanced Technology Attachment) oder SAS- (Serial Attached SCSI) Anschluss mit einer möglichst niedrigen Latenz empfohlen.

Die Speichergrundlage eines Datenbanksystems sollte ein RAID-Verbund sein. Für eine optimierte Schreib- und Leseleistung empfiehlt sich der Einsatz eines Stripings (RAID 0). Dabei werden die Daten auf mehrere SSDs verteilt geschrieben, wodurch sich die einzelnen Zugriffsgeschwindigkeiten addieren. Um einem Fehlerfall im Storagebereich vorzubeugen, wird dies noch mit einem Mirroring (RAID 1) kombiniert. Der Einsatz eines RAID 10 Systems eignet sich also am besten für den Einsatz eines Datenbanksystems.