![]() |
Datenbank: Firebird • Version: 2.1 • Zugriff über: UIB
Import einer grossen Tabelle - Optimierung
Ich möchte viele Daten in eine Firebird Datenbank importieren, die Haupttabelle hat etwas über 100000 Datensätze, drei Nebentabellen vielleicht je ca 20000.
Ich lese jeweils eine Zeile aus dem Importfile ein und erzeuge dann einen datensatz in der haupttabelle und maximal einen Datensatz in jeder der drei anderen Tabellen (mittels update or insert Statement). Zu jedem erzeugten Datensatz in jeder dieser Tabellen wird ein weiterer Datensatz mittels Trigger in einer 5. Tabelle erzeugt. Ich bilde mir ein, alle nötigen Indizes erstellt zu haben. Trotzdem wird das Programm mit zunehmender Tabellengrösse dramatisch langsamer. Was kann man machen, um das zu verhindern? Natürlich sind die Indizes bei der Erstellung auf eine leere Datenabnk hin "optimiert". Wäre es sinnvoll, alle paar Tausend Datensätze die Indizes zwecks Optimierung neu zu erstellen? Wie wirkt sich die Transaktionsgrösse aus? Ich starte alle 500 Importzeilen (in Summe ca 2000 inserts in die verschiedenen Tabellen) eine neue Transaktion. |
AW: Import einer grossen Tabelle - Optimierung
Zitat:
Zitat:
Zitat:
|
AW: Import einer grossen Tabelle - Optimierung
wobei man bei einem Import die Indices normalerweise ausschaltet und erst nach dem Import wieder aktiviert. Dadurch dürfte der eigentliche Import schneller laufen. FKs würde ich eventuell nicht ausschalten, das kommt dann immer auf die Daten an.
|
AW: Import einer grossen Tabelle - Optimierung
Wenn Du aus den zu importierenden Daten ohne großen Aufwand eine Textdatei erstellen kannst, sollte
![]() |
AW: Import einer grossen Tabelle - Optimierung
Danke für die Antworten - Das Problem hat sich erledigt - meine eigene Dummheit: Wenn man bei einem Update Statement auf die Where Klausel vergisst, dann tut so ein Befehl bei jedem Aufruf viel mehr, als man sich vorstellt, und zwar umso mehr mehr, je voller die Tabellen sind :wall:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz