Beheben Sie Probleme mit der Import Set-Leistung

Überprüfen Sie diese Leistungsprobleme, um Probleme zu beheben und die Leistung Ihrer Importsatzaufträge zu verbessern.

Business Rules werden während der Transformation ausgeführt

Das Ausführen von Business Rules während der Transformation kann dazu führen, dass die Transformation länger als erwartet dauert oder die Instanz verlangsamt wird.

Wird zu einem Problem: Beim Importieren einer sehr großen Datenmenge. Zum Beispiel das Importieren aller Daten aus einem alten System.

Symptome: Die Transformation dauert viel länger als erwartet. Außerdem kann die gesamte Instanz während dieser Zeit langsam sein.

So vermeiden Sie dies: Führen Sie während einer Transformation keine Elemente wie Business Rules, Workflows, Genehmigungs-Engines usw. aus, es sei denn, Sie möchten, dass alle Business Rules zum Einfügen und Aktualisieren, Benachrichtigungen und Workflows ausgeführt werden. Wenn Sie beispielsweise alle Daten aus einem alten System importieren, möchten Sie möglicherweise keine Benachrichtigungen ausführen. Um die Ausführung dieser Elemente zu deaktivieren und Auditing und Feldnormalisierung in der Transformationszuordnung für diesen Import zu beenden, deaktivieren Sie das Kontrollkästchen Business Rules ausführen.
Abbildung : 1. Kontrollkästchen „Transformationszuordnung“.
Hinweis:
Erwägen Sie die Verwendung eines onComplete-Transformationsskripts, um Geschäftslogik wie Berechnungen am Ende eines Imports auszuführen und nicht für jeden Datensatz, wie dies bei Business Rules der Fall ist.

Langsame Transformationsskripts

Die Verwendung mehrerer GlideRecord-Abfragen oder großer Schleifen kann Transformationsskripts verlangsamen.

Wird zu einem Problem: Wenn die Transformationsskripts mehrere GlideRecord-Abfragen verwenden oder große Sammlungen von Objekten für jede Zeile durchlaufen. Dieses Problem kann auftreten, wenn das Transformationsskript nicht effizient ist. In den meisten Fällen können Skriptziele mithilfe der in der Import Set-Anwendung integrierten Funktionen erreicht werden. Sie können beispielsweise ein Skript für das Zusammenfügen unter Beachtung der Groß-/Kleinschreibung verwenden, anstatt Skripts zu schreiben, die GlideRecord-Abfragen verwenden. GlideRecord-Abfragen verlangsamen normalerweise den Import.

Symptome: Die Transformation dauert viel länger als erwartet. Abhängig vom Skript kann die gesamte Instanz während dieser Zeit langsam sein.

So vermeiden Sie dies: Verwenden Sie nachMöglichkeit Basissystemfunktionen, anstatt benutzerdefinierte Skripts zu schreiben. Wenn Sie Skripts schreiben, vermeiden Sie es, komplizierte Skripts zu schreiben, die GlideRecord-Abfragen verwenden.

Importieren von Daten, die sich nicht geändert haben

Wiederholter Import von Daten, die sich nicht geändert haben, führt zu vielen übersprungenen Zeilen.

Wird zu einem Problem: Wenn Sie Daten aus einer sehr großen Tabelle importieren und die meisten Datensätze nicht regelmäßig aktualisiert werden.

Symptome: Der Importsatz dauert länger als erwartet. Unter System-Importsätze > Fortschritt, erwarten Sie einen Import mit einer Gesamtanzahl, die sehr hoch ist, mit einer Übersprungen-Anzahl, die ebenfalls sehr hoch ist. Dies befindet sich in der Spalte Nachricht. Gibt an, dass die meisten der importierten Datensätze nicht tatsächlich geändert wurden. Diese Datensätze mussten nicht importiert werden.

So vermeiden Sie dies: Wenn Sie einen JDBC-Import ausführen, verwenden Sie die DateTime-Option der letzten Ausführung in Ihrer Importsatz- Datenquelle. Stellen Sie für eine Art von Dateiimport sicher, dass das, was Ihre Dateien generiert, nur Daten hinzufügt, die neu sind oder geändert wurden.

Zusammenfügung für nicht indizierte Felder

Das Zusammenfügen von nicht indizierten Feldern mit einer großen Datenmenge kann zu einer Verlangsamung der Transformationen führen.

Wird zu einem Problem: Beim Abgleichen von Feldern, die nicht indiziert sind, wird die Transformationsphase eines Imports langsam ausgeführt. Dies wird jedoch nur dann zu einem Problem, wenn die Datenmenge groß genug ist. In extremen Fällen führt dies aufgrund der zusätzlichen Last zu Leistungsproblemen mit der Datenbank.

Symptome: Die in der Transformationsphase des Imports aufgewendete Zeit ist im Verhältnis zur Zeit, die zum Laden der Daten benötigt wird, hoch. Erwartet werden hohe Transformationszeiten.

So vermeiden Sie dies: Wenn möglich, sollten Sie in einem Feld zusammenfügen, das eindeutig und bereits indiziert ist. Um festzustellen, ob ein Feld bereits indiziert ist, navigieren Sie zu Systemdefinition > Tabellen und Spalten , und suchen Sie die Tabelle. In der Liste der Spalten für diese Tabelle hat eine indizierte Spalte ein blaues Symbol mit einem i daneben, wenn sie indiziert ist. Wenn Sie Hilfe bei der Indizierung eines Felds benötigen, wenden Sie sich an den technischen Support von ServiceNow.

Importe werden gleichzeitig ausgeführt

Das gleichzeitige Ausführen von Importen kann zu einer übermäßigen Belastung der Datenbank führen.

Wird zu einem Problem: Wenn der Import großer Datenmengen die Datenbank zusätzlich belastet. Beispiel: Import von 500.000 Benutzern und Import von 200.000 Konfigurationselementen gleichzeitig. Dies kann aufgrund der erhöhten Belastung der Datenbank erhebliche Auswirkungen auf die Leistung aller Abfragen im System haben. Dieses Problem ist besonders schwerwiegend, wenn zwei Importe in dieselbe Tabelle importiert werden. In einem solchen Fall liegt ein mögliches Konfliktproblem für die Tabelle vor. Darüber hinaus kann dies je nachdem, welche Tabelle an der Verarbeitung beteiligt ist, die Leistung des Imports und der Instanz erheblich beeinträchtigen.

Symptome: Mehrere Importe gleichzeitig, die langsam ausgeführt werden, kombiniert mit Belastung der Datenbank. Sie sehen eine große Anzahl von Einfügungen und Aktualisierungen. und, wenn genügend Last oder Konflikt vorhanden ist, hohe E/A-Wartezeiten.

So vermeiden Sie dies: Staffeln Sie Ihre Importe, damit sie sich nicht überschneiden.

Große Import Set-Tabellen

Wenn Import Set-Tabellen nicht bereinigt werden, werden diese Tabellen möglicherweise unübersichtlich und langsam.

Wird zu einem Problem: Wenn der Job „Import Set-Löschung“ nicht ausgeführt wird.

Symptome: Dies ist ein Größenproblem. Wenn die Importsätze nicht regelmäßig bereinigt werden (eine Bereinigung der Daten nach sieben Tagen wird empfohlen), füllt sich die Tabelle, was dazu führt, dass die Importe angehalten werden.

So vermeiden Sie dies: Vergewissern Sie sich, dass der Auftrag „Import Set-Löschung“ ausgeführt wird. Wenn er derzeit nicht ausgeführt wird, wenden Sie sich an Kundenservice und Support, da alle Import Set-Tabellen gekürzt werden, bevor dieser Auftrag aktiviert wird.

Ändern des Tabellenschemas während des Imports

Wenn Sie das Tabellenschema ändern, z. B. durch Importieren einer neuen Spalte, wird die Import Set-Tabelle gesperrt.

Wird zu einem Problem: Jedes Mal, wenn eine neue Spalte importiert wird, wird die gesamte Import Set-Tabelle während dieser Schemaänderung gesperrt. Dies kann je nach Größe der Tabelle zwischen fünf und zehn Minuten dauern. Während dieser Zeit können keine Daten ausgewählt oder eingefügt werden. Wenn diese Tabelle nicht oft verwendet wird, kann dies keine Probleme verursachen. Wenn diese Tabelle jedoch häufig verwendet wird, z. B. die LDAP-Importtabelle, können Probleme auftreten.

Symptome: Die Symptome dieses Problems können variieren. In unserem Beispiel der LDAP-Importtabelle müssen alle Transaktionen, die eine Abfrage der LDAP-Importtabelle erfordern, warten, bis die Schemaänderung abgeschlossen ist.

So vermeiden Sie dies: Kürzen Sie die Importtabelle vor dem Importieren mit einer neuen Spalte.

Importieren sehr großer Datensätze

Das Importieren eines sehr großen Datensatzes dauert länger als der Import mehrerer kleinerer Datensätze.

Wird zu einem Problem: Wenn sehr große Datensätze in einem einzelnen Auftrag importiert werden.

Symptome: Der Importauftrag dauert lange.

So vermeiden Sie dies: Teilen Sie einen sehr großen Datensatz in mehrere kleinere Aufgaben auf, um schnellere Ergebnisse zu erzielen. Betrachten Sie Importsätze unter 100.000 Datensätzen als Leitlinie. Zum Beispiel wird der Import von 10 Sätzen mit 100.000 Datensätzen schneller abgeschlossen als ein Import von 1 Million Datensätzen, obwohl die Gesamtzahl der importierten Daten gleich ist.

Große Datenimporte mit vielen Referenzfeldern

Der Import eines großen Datenvolumens mit vielen aufzulösenden Referenzen kann länger als erwartet dauern oder zu einer Verlangsamung der Datenbank führen.

Wird zu einem Problem: Wenn eine Transformationszuordnung für Datenimporte mit hohem Volumen und vielen Referenzfeldern verwendet wird.

Symptome: Die Transformation dauert viel länger als erwartet. Während des Imports wird die gesamte Datenbank verlangsamt.

So vermeiden Sie dies: Verwenden Sie den sekundären Speicher, um nach Referenzen zu suchen. Der sekundäre Speicher verwendet eine sekundäre Datenbank für die Referenzauflösung. Dadurch können einige Leseabfragen an die sekundäre Datenbank umgeleitet werden, wodurch die Belastung der primären Datenbank reduziert wird.

So aktivieren Sie den sekundären Speicher:
  • Aktivieren Sie das Plugin „Secondary Database Pools“ [com.glide.secondary_db_pools]. Weitere Informationen finden Sie unter Request a plugin.
  • Vergewissern Sie sich, dass die Kategorie import_reference_ressource in der Tabelle „Sekundäre Datenbankkategorien“ [sys_db_category] konfiguriert und aktiviert wurde. Wenn Sie das Plugin anfordern, konfiguriert der ServiceNow -Support diese Kategorie für Sie.

Nachdem das Plugin aktiviert und Ihre sekundäre Speicherkategorie konfiguriert und aktiviert wurde, wird das Kontrollkästchen Sekundären Speicher für Referenzen verwenden im Formular zu Eine Transform Map erstellenangezeigt . Verwenden Sie diese Checkbox, um den sekundären Speicher zu aktivieren oder zu deaktivieren.

Wenn Sie sekundären Speicher verwenden, legen Sie das Feld Auswahlaktion in der Feldzuordnung auf Ignorieren oder Ablehnenfest. Wenn Sie die Auswahlaktion auf Erstellen festlegen, werden möglicherweise mehrere Kopien eines Datensatzes erstellt, da die Referenzauflösung neu erstellte Datensätze nicht sofort erkennt. Weitere Informationen zu Auswahlaktionen finden Sie unter Feldzuordnung erstellen.

Eine sekundäre Datenbank ist im Vergleich zur primären Datenbank immer etwas veraltet. Wenn für Ihren Import vollständig aktuelle Daten erforderlich sind, verwenden Sie keinen sekundären Speicher.