Performance verbessern: Unterschied zwischen den Versionen

Aus GEVITAS
Wechseln zu: Navigation, Suche
K
Zeile 29: Zeile 29:
 
Vereinfacht gesagt, kann man die Performance eines Datenbank-Servers verbessern durch diese Maßnahmen:
 
Vereinfacht gesagt, kann man die Performance eines Datenbank-Servers verbessern durch diese Maßnahmen:
  
* RAM-Speichern: Geben Sie dem SQL-Datenbank-Server so viel Arbeitsspeicher wie möglich! SQL-Maschinen bauen sich im Laufe der Zeit sog. interne [http://de.wikipedia.org/wiki/Hashtabelle Hashtabellen] im Arbeitsspeicher auf. Hier merken sie sich, welche Abfragen besonders häufig vorkommen und optimieren den Zugriff darauf im Arbeitsspeicher.
+
* RAM-Speicher (Arbeitsspeicher): Geben Sie dem SQL-Datenbank-Server '''so viel Arbeitsspeicher wie möglich'''! SQL-Maschinen bauen sich im Laufe der Zeit sog. interne [http://de.wikipedia.org/wiki/Hashtabelle Hashtabellen] im Arbeitsspeicher auf. Hier merken sie sich, welche Abfragen besonders häufig vorkommen und optimieren den Zugriff darauf im Arbeitsspeicher.
 
* Verwenden Sie ein 64-Bit-Betriebssystem, das mehr als 3 GByte Speicher nutzen kann.
 
* Verwenden Sie ein 64-Bit-Betriebssystem, das mehr als 3 GByte Speicher nutzen kann.
 
* Wenn Sie den "MS SQL Server 2008 R2 '''Express'''" verwenden, beachten Sie die Einschränkungen des "MS SQL Server 2008 R2 Express":
 
* Wenn Sie den "MS SQL Server 2008 R2 '''Express'''" verwenden, beachten Sie die Einschränkungen des "MS SQL Server 2008 R2 Express":

Version vom 22. Februar 2013, 23:58 Uhr

1 Allgemeines

Dieser Artikel ist noch in Bearbeitung

Dieser Artikel beschreibt, mit welchen Maßnahmen man die Performance des Programms verbessern kann.

2 Was ist Performance

Als Performance bezeichnet grob gesagt man die Zeit, die ein Programm benötigt, um eine bestimmte Aufgabe zu lösen, z.B.

  • Wie schnell wird ein bestimmter Auftrag gefunden
  • Wie schnell wird die Verbuchung einer Auftragsposition durchgeführt

usw.

2.1 Datenbank-Indizes

Ein Datenbank-Index ist ein Mechanismus einer Datenbank-Maschine, der bestimmte Felder (Spalten) einer Tabelle indiziert. Dadurch merkt sich der Datenbank-Server in einer speziellen internen Tabelle, welche Werte es für das ausgewählte Feld gibt. Der Zugriff auf bestimmte Werte der Tabelle wird dadurch wesentlich beschleunigt.

  • Vorteil: Das Einlesen von Daten wird signifikant beschleunigt.
  • Nachteil: Das Einfügen von Daten wird verlangsamt.

Das Anlegen von Indizes einer Datenbank ist eine Wissenschaft für sich!

Die REFLEX bzw. GEVAS-Professional bringen bei der Neuinstallation eine Datenbank mit, in den eigentlich alle notwendigen Indizes gesetzt sind.


2.2 Server

Vereinfacht gesagt, kann man die Performance eines Datenbank-Servers verbessern durch diese Maßnahmen:

  • RAM-Speicher (Arbeitsspeicher): Geben Sie dem SQL-Datenbank-Server so viel Arbeitsspeicher wie möglich! SQL-Maschinen bauen sich im Laufe der Zeit sog. interne Hashtabellen im Arbeitsspeicher auf. Hier merken sie sich, welche Abfragen besonders häufig vorkommen und optimieren den Zugriff darauf im Arbeitsspeicher.
  • Verwenden Sie ein 64-Bit-Betriebssystem, das mehr als 3 GByte Speicher nutzen kann.
  • Wenn Sie den "MS SQL Server 2008 R2 Express" verwenden, beachten Sie die Einschränkungen des "MS SQL Server 2008 R2 Express":
    • Es wird nur ein Prozessor bzw. ein Prozessorkern verwendet. Das ist nicht so schlimm, weil die CPU eines SQL-Servers meist "gelangweilt" ist.
    • Die Express-Edition nutzt maximal 1 GB Arbeitsspeicher. Das ist schon eine wesentliche Einschränkung! SQL-Server "leben" von RAM-Speicher. Wenn Sie nicht genug davon haben, können Sie keine internen Hashtabellen aufbauen, in denen sie sich immer wiederkehrende Abfragen merken.
    • Eine Datenbank darf maximal 10 GB groß sein (in 2008 R1 nur 4 GB).
  • Nutzen Sie neuere Hardware, die z.B. SATA benutzt.

2.3 Client, Rechner