Beheben Sie Probleme mit der Leistung des Importsatzes

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

Während der Transformation werden Business-Regeln ausgeführt

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

Wird zu einem Problem: Beim Importieren einer sehr großen Datenmenge. Beispiel: 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 Elemente wie Business-Regeln, Workflows, Genehmigungsmodule usw. während einer Transformation nicht aus, es sei denn, Sie möchten, dass alle Geschäftsregeln 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, dass Benachrichtigungen nicht ausgeführt werden. Um die Ausführung dieser Elemente zu deaktivieren und das Auditing und die Feldnormalisierung in der Transformationszuordnung für diesen Import zu beenden, deaktivieren Sie das Kontrollkästchen Business-Regeln ausführen.
Abbildung : 1. Kontrollkästchen „Transformationszuordnung“.
Hinweis:
Erwägen Sie die Verwendung eines onComplete-Transformationsskripts, um die Geschäftslogik auszuführen, z. B. Berechnungen am Ende eines Imports und nicht für jeden Datensatz, wie dies bei Business-Regeln der Fall ist.

Langsame Transformationsskripts

Die Verwendung mehrerer GlideRecord-Abfragen oder großer Schleifen kann die 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 integrierten Funktionalität der Importsatz-Anwendung erreicht werden. Beispielsweise können Sie bei Skripts die Groß-/Kleinschreibung berücksichtigen, anstatt Skripts zu schreiben, die GlideRecord-Abfragen verwenden. GlideRecord-Abfragen verlangsamen normalerweise den Import.

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

So vermeiden Sie dies: Verwenden Sie nachMöglichkeit die Basissystemfunktionalität, anstatt anwenderdefinierte Skripts zu schreiben. Wenn Sie Skripts schreiben, vermeiden Sie es, komplexe Skripts zu schreiben, die GlideRecord-Abfragen verwenden.

Daten werden importiert, die sich nicht geändert haben

Das wiederholte Importieren 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 einem sehr hohen Gesamtwert und einem ebenfalls sehr hohen Wert für Übersprungen. Dies finden Sie in der Spalte Nachricht. Gibt an, dass die meisten der importierten Datensätze nicht geändert wurden. Diese Datensätze müssen nicht importiert werden.

So vermeiden Sie dies: Wenn Sie einen JDBC-Import ausführen, verwenden Sie die Datums-/Zeit-Option der letzten Ausführung in der Datenquelledes Importsatzes. Stellen Sie für einen Dateiimporttyp sicher, dass beim Generieren Ihrer Dateien nur Daten hinzugefügt werden, die neu sind oder geändert wurden.

Zusammenfügung in nicht indizierten Feldern

Das Zusammenfügen nicht indizierter Felder mit einer großen Datenmenge kann zu langsamen Transformationen führen.

Wird zu einem Problem: Beim Abgleich 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 bei 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. Erwarten Sie 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 wird neben einer indizierten Spalte ein blaues Symbol mit einem i- daneben angezeigt, 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 die Datenbank übermäßig belasten.

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 Last auf der Datenbank eine erhebliche Auswirkung auf die Leistung aller Abfragen im System haben. Dieses Problem ist besonders schwerwiegend, wenn zwei Importe in dieselbe Tabelle importieren. In einem solchen Fall liegt möglicherweise ein Konfliktproblem für die Tabelle vor. Je nachdem, welche Tabelle an der Verarbeitung beteiligt ist, kann dies außerdem die Leistung des Imports und der Instanz erheblich beeinträchtigen.

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

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

Große Importsatztabellen

Wenn Importsatztabellen nicht bereinigt werden, können sie unübersichtlich und langsam werden.

Wird zu einem Problem: Wenn der Auftrag „Importsatzlöscher“ nicht ausgeführt wird.

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

So vermeiden Sie dies: Stellen Sie sicher, dass der Auftrag zum Löschen von Importsätzen ausgeführt wird. Wenn er derzeit nicht ausgeführt wird, wenden Sie sich an Kundenservice und Support, da alle Importsatztabellen gekürzt werden, bevor dieser Auftrag aktiviert wird.

Tabellenschema wird während des Imports geändert

Durch Änderungen des Tabellenschemas, z. B. durch Importieren einer neuen Spalte, wird die Importsatztabelle gesperrt.

Wird zu einem Problem: Jedes Mal, wenn eine neue Spalte importiert wird, wird die gesamte Importsatztabelle 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, verursacht dies möglicherweise keine Probleme. Wenn diese Tabelle jedoch häufig verwendet wird, z. B. die LDAP-Importtabelle, können Probleme auftreten.

Symptome: Die Symptome für dieses Problem 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, bevor Sie mit einer neuen Spalte importieren.

Sehr große Datensätze werden importiert

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

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

Symptome: Der Importauftrag dauert lange.

So vermeiden Sie dies: Teilen Sie einen sehr großen Datensatz in mehrere kleinere Aufträge auf, um schnellere Ergebnisse zu erzielen. Betrachten Sie Importsätze unter 100.000 Datensätzen als Leitfaden. Beispielsweise wird der Import von 10 Sätzen von 100.000 Datensätzen schneller abgeschlossen als der Import von 1.000.000 Datensätzen, obwohl die importierten Gesamtdaten identisch sind.

Importe großer Daten mit vielen Referenzfeldern

Das Importieren eines großen Datenvolumens mit vielen zu lösenden Referenzen kann länger als erwartet dauern oder die Datenbank verlangsamen.

Wird zu einem Problem: Wenn eine Transformationszuordnung für Importe großer Datenmengen mit vielen Referenzfeldern verwendet wird.

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

So vermeiden Sie dies: Verwenden Sie sekundären Speicher, um nach Referenzen zu suchen. Der sekundäre Speicher verwendet eine sekundäre Datenbank für die Referenzauflösung. Sie ermöglicht die Umleitung einiger Leseabfragen an die sekundäre Datenbank und reduziert so die Last der primären Datenbank.

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 im Formular das Kontrollkästchen Sekundären Speicher für Referenzen verwenden für Eine Transform Map erstellenangezeigt . Verwenden Sie dieses Kontrollkästchen, um den sekundären Speicher zu aktivieren oder zu deaktivieren.

Wenn Sie den 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 Referenzlö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 den Import vollständig aktuelle Daten erforderlich sind, verwenden Sie keinen sekundären Speicher.