Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03578.jsonl.gz/409

2 Record Caching
Microsoft Dynamics AX Datenbank Record Caching ist eine leistungssteigernde Funktion, unnötige Datenbankzugriffe können damit vermieden werden.
Das Abrufen von Datensätzen aus dem Cache-Speicher anstelle der Datenbank beschleunigt den Datenbankzugriff deutlich. Mit Caching kann man Performance erhöhen, speziell wenn wiederholt auf die gleichen Datensätze zugegriffen wird. In Dynamics AX 2012 R3 gibt es über 9300 Tabellen und jede einzelne Tabelle kann mit der richtigen Cache-Strategie optimiert werden.
3 Arten von Caching
3.1 Single-record
«Single-record» Caching hat die folgenden Eigenschaften:
-
Definiert in der Design-Phase
-
Verschiebt Datensätze in den Cache basierend auf der Property «CacheLookup» oder von der verwendeten SELECT Typ Statement um den Datensatz abzurufen
-
Die Anzahl «Single-record» Cache ist im Client auf 100 Datensätze limitiert, Serverseitig ist das Limit auf 2000 Datensätze limitiert
-
Der Cache ist aktiviert, sofern die Methode disableCache nicht mit dem Parameter True aufgerufen wurde und die Property «CacheLookup» einen der folgenden Werte gesetzt wurde: NotInTTS, Found, FoundAndEmpty.
3.2 Set-based
«Set-based» Caching hat die folgenden Eigenschaften:
-
Definiert in der Design-Phase oder zur Laufzeit in X++ Code
-
Verschiebt Gruppen von Datensätzen in den Cache
-
Umgesetzt entweder durch die Tabelle der Property «CacheLookup» oder im Code durch die Verwendung von der Klasse RecordViewCache
3.3 EntireTable Caching
Wird die Property «CacheLookup» auf EntireTable gesetzt, werden beim ersten Zugriff alle Da-tensätze dieser Tabelle in den Cache platziert. Diese Art von Caching folgt den Regeln der «single-Record» Caching. Dies bedeutet, dass im SELECT Statment in der WHERE-Bedingung beinhalteten Feldern einen eindeutigen Index enthalten, die in der Property PrimaryIndex der Tabelle definiert wurde.
Bei grossen Tabellen sollte man nicht die EntireTable Caching aktivieren. Weil wenn der Cache-Speicher aufgebraucht ist, wird auf die langsame Festplatte ausgelagert, welche markant langsamer ist als der Cache-Speicher.
Die Limitte wann ein Cache ausgelagert werden soll, kann unter «Systemverwaltung», «Einstellungen», «System», «Serverkonfiguration» eingestellt werden. Im AX 2012 R3 ist die «Cachegrösse der gesamten Tabelle» mit der Defaultwert von 96 KB vordefiniert.