«

»

Optimierung der Datenbank

Datenbank-Speicher

migRaven ist ein Datenbankprogramm. Es werden in kürzester Zeit Tausende, wenn nicht Millionen von Daten gelesen und in die Datenbank geschrieben. migRaven ist gezielt darauf programmiert, in möglichst kurzer Zeit möglichst große Datenmengen zu verarbeiten. Das erfordert ein schnelles Medium für die Datenbank, um diese großen Datenmengen auch schnell ablegen zu können, d.h. vor allem eine schnelle Festplatte und dann viel Hauptspeicher.

Das ist umso wichtiger je grösser die zu verarbeitende Datenmenge ist.
Diese setzt sich zusammen aus den AD-Objekten Benutzer, Gruppen und Computer.
Bei der Projekterstellung ist die Anzahl der Verzeichnisse eine entscheidende Größe.
Den größten Posten bilden aber die Relationen. Das sind einerseits die Mitgliedschaften von Benutzern in Gruppen (sowie Gruppen in Gruppen) und andererseits die Berechtigungen, d.h. die Verbindungen zwischen Verzeichnissen und Berechtigten.

Für migRaven empfehlen wir mind. 8 GB Arbeitsspeicher. 16 GB sind besser. Wenn der Hauptspeicher voll ausgenutzt wird, kann es zu Stockungen kommen.
Fast noch wichtiger ist eine schnelle Festplatte. Eine langsame Festplatte kann den Datenstrom nicht schnell genug ablegen. Eigentlich kein Problem. Der Speicher cacht die Daten. Ist der Speicher aber knapp bemessen, füllt sich der Speicher zusehends bis an seine Grenze. Dann stockt der Datenfluss. Das Cachen wird wirkungslos. migRaven liefert die Daten schneller, als die Platte sie aufnehmen kann. Das kann zu Fehlern führen, die nicht nachvollziehbar sind, da sie bei einer Wiederholung nicht an der gleichen Stelle auftreten.

migRaven läuft auch auf einer virtuellen Maschine. Der Datenstrom kann aber nicht so optimal fließen wie direkt auf dem Host. Wir haben die Erfahrung gemacht, dass es bei großen Projekten auf virtuellen Maschinen zu Problemen kommen kann, die bei der Ausführung auf einem Host nicht auftreten.

Mit einem Wort, bei großen Datenmengen verwenden Sie bitte mehr Speicher als empfohlen, eine schnelle Festplatte und keine virtuelle Maschine. Das beschleunigt nicht nur die Abarbeitung der Projekte, sondern vermeidet Fehler.

Task-Manager

Belastung eines Clients mit 4 Cores beim AD-Scan. Die SSD-Platte wird fast zu 100% ausgelastet. Ursache ist das Schreiben in die Datenbank.

Parameter

Wie jede andere Datenbank auch, ist die neo4j Datenbank schneller, wenn Sie auf die Daten im Arbeitsspeicher zugreift, statt sie von der Festplatte holen zu müssen.

Aus diesem Grund sollte jeder Kunde die Einstellungen für die Datenbank individuell an seinen Rechner anpassen. Optimal sind Werte um 80% des verfügbaren Arbeitsspeichers auf dem Rechner.

Wenn man z.B. 8GB RAM hat, sollte der Wert auf 6,4 GB eingestellt werden. Diese Einstellung kann man in der „conf\neo4j-wrapper.conf“ vornehmen. Diese befindet sich im Verzeichnisbaum der Datenbank.

Ändern Sie in diesen Fällen die Werte wie folgt:

anpassung der neo4j Arbeitsspeichernutzung

Der Wert „initmemory“ definiert, wie viel Arbeitsspeicher sofort bei Start des neo4j-Dienstes belegt und gehalten wird. Den kann man ein bisschen niedriger einstellen.

Der Wert „maxmemory“ definiert das Maximum.

Diese beiden Werte sind entscheidend für die Performance beim Zugriff auf die Daten in der Datenbank. Vor allem, wenn in Umgebungen größer als 5000 AD-Accounts gearbeitet wird, sind Maschinen mit mehr als 8GB RAM notwendig.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">