Anwendungsfälle, die die Leistung beeinträchtigen können
Dieser Abschnitt listet verschiedene Anwendungsfälle auf, welche die Leistung von Optimize negativ beeinflussen können.
Dynamische Angebotslisten mit Regeln, die Angebotsversionen verwenden
Wenn Sie dynamische Angebotslisten mit Regeln verwenden, die Angebotsversionen nutzen, gibt es zusätzliche Abfragen, die im E/A-intensiven Dateneinrichtungsabschnitt verwendet werden. Ist die Anzahl der Angebote in den Listen und die Anzahl der Attribute pro Angebot hoch, kann die Ausführung dieser Abfragen lange dauern.
Hohes Maximum für Iterations pro Kundenstichprobe
Die maximale Anzahl Iterationen, die für jede Kundenstichprobe angewendet werden soll, kann mit der Eigenschaft Optimize|AlgorithmTuning|MaxIterationsPerCustomerSample konfiguriert werden. Überprüfen Sie sowohl die erweiterten Einstellungen auf Sitzungsebene als auch die Konfigurationseigenschaften.
Je nach den Regeln und Daten könnte dieser Grenzwert durch eine Kundenstichprobe eventuell nicht erreicht werden. Hohe Werte garantieren ein Höchstmaß an Optimalität der Ergebnisse. Oft ergibt die Verwendung einer höheren Anzahl von Iterationen aber nicht eine solch starke Verbesserung der Optimalität, die Leistungseinbußen rechtfertigt. Normalerweise ergeben fünf Iterationen ein annehmbares Maß an Optimalität, und es ist unüblich, dass mehr als etwa ein Dutzend Iterationen notwendig sind.
Um das Verhalten der Kundenstichprobeniteration zu analysieren, suchen Sie im Optimize-Protokoll nach der Zeichenfolge Iteration:. Nach diesem Protokolleintrag steht eine Zahl, die anzeigt, um welche Iteration es sich handelt. Jeder Block beginnt mit der Iteration 1 und der Zähler wird hoch gezählt. Es hilft bei der Untersuchung der Vorgänge, wenn Sie einen Zähler jeder Iterationsnummer im Protokoll abrufen und die Ergebnisse für die Erstellung eines Histogramms verwenden.
Hohe Anzahl nicht verarbeitbarer Kunden
Ein weiterer wichtiger Faktor bei der Leistung ist die Anzahl der Kunden, die nicht verarbeitet werden können. Wenn der Wert der Eigenschaft Optimize|AlgorithmTuning|MaxAlternativesPerCustomerEvaluated hoch ist (über ca. 100), ist der Zeitnachteil hoch, immer wenn ein Kunde nicht verarbeitet werden kann.
Wenn Sie viele nicht verarbeitbare Kunden haben, suchen Sie nach logischen Fehlern in den Regeln oder Daten. Allerdings kann es insbesondere bei einer großen Anzahl vorgeschlagener Transaktionen pro Kunde lange dauern, bis bestimmte Lösungen für einzelne Kunden abgerufen werden können. In diesem Fall ist es eventuell am besten, den Wert des Parameters MaxAlternativesPerCustomerEvaluated zu vermindern und dadurch mehr nicht verarbeitbare Kunden als Kompromiss für die Leistungssteigerung zu akzeptieren.
Ab der Optimize-Version 7.5.3 gibt es eine detailliertere Protokollierung, die die minimale, maximale und durchschnittliche Anzahl der für jede Kundenstichprobe bewerteten Alternativen zeigt.
Solver-Subroutinenaufrufe
Wenn bestimmte Kombinationen von Regeln pro Kunde verwendet werden, kann u. U. in manchen Fällen ein großer Leistungsnachteil sichtbar sein. Diese Situation kann auftreten, wenn es mindestens eine Regel pro Kunde bezüglich der Mindest- und Maximalanzahl Transaktionen gibt, bei der die untere Beschränkung nicht Null ist, kombiniert mit einer oder mehreren Paketregeln.
*
Außer dem Vorhandensein dieser beiden Regeln müssen sich ihre Bereiche überlappen, sodass beide auf die gleichen vorgeschlagenen Transaktionen angewendet werden. Außerdem müssen die Bewertungen so sein, dass die bevorzugte Lösung für eine Paketregel dazu führt, dass die Min./Max.-Regel unter ihr Minimum fällt. Wenn alle diese Bedingungen erfüllt sind, kann der Kernalgorithmus die optimalen Ergebnisse nicht in einer effizienten Art und Weise finden und muss einen langsameren Aufruf für die Solver-Engine verwenden. Sie können diesen Zustand an der Meldung Solver subroutine parameters: im Serverprotokoll erkennen.
Wenn Sie Leistungsprobleme durch die Verwendung der Regeln "Never A with B" erkennen, kann die Leistung am besten durch ein Upgrade auf die Optimize-Version 7.5.3 oder neuer gesteigert werden.
Viele Fälle, bei denen die Bewertungen gleich sind
Gibt es viele Fälle, bei denen die Bewertungen gleich sind, kann die Entscheidungsfindung in der LRE manchmal ineffizient werden. Sie erkennen dieses Szenario, wenn Sie die folgende Zeichenfolge im Serverprotokoll sehen: Additional alternative generated:
Um diese Situation zu vermeiden, versuchen Sie, den vorgeschlagenen Transaktionen abwechslungsreichere Bewertungen zuzuweisen.