Welche Option ist besser und schneller? Einfügen von Daten nach dem Erstellen eines Index für eine leere Tabelle oder Erstellen eines eindeutigen Index nach dem Einfügen von Daten. Ich habe ca. 10M Zeilen einzufügen. Welche Option wäre besser, damit ich am wenigsten Ausfallzeiten haben könnte.Einfügen von Daten nach dem Erstellen eines Index für eine leere Tabelle oder Erstellen eines eindeutigen Index nach dem Einfügen von Daten in Oracle?
Antwort
Fügen Sie zuerst Ihre Daten ein und erstellen Sie dann Ihren Index.
Jedes Mal, wenn Sie eine UPDATE-, INSERT- oder DELETE-Operation ausführen, müssen alle Indizes in der Tabelle ebenfalls aktualisiert werden. Wenn Sie also zuerst den Index erstellen und dann 10 Millionen Zeilen einfügen, muss der Index ebenfalls 10 Millionen Mal aktualisiert werden (es sei denn, Sie führen Bulk-Operationen durch).
Es ist schneller und besser, die Datensätze einzufügen und dann den Index zu erstellen, nachdem die Zeilen importiert wurden. Es ist schneller, weil Sie nicht den Aufwand für die Indexwartung haben, da die Zeilen eingefügt werden, und es ist aus Fragmentierungssicht für Ihre Indizes besser.
Offensichtlich müssen Sie für einen eindeutigen Index sicherstellen, dass die zu importierenden Daten eindeutig sind, sodass beim Erstellen des Index keine Fehler auftreten.
Wie andere bereits gesagt haben, fügen Sie zuerst den Index ein und fügen ihn später hinzu. Wenn die Tabelle bereits vorhanden ist und Sie einen Datenstapel wie diesen einfügen müssen, löschen Sie alle Indizes und Integritätsbedingungen, fügen Sie die Daten ein und wenden Sie dann zuerst Ihre Indizes und dann Ihre Integritätsbedingungen an. Sie werden sicherlich Zwischenübermittlungen vornehmen, um zu verhindern, dass Ihnen der Speicherplatz für das Rollback-Segment oder etwas Ähnliches ausgeht. Wenn Sie so viele Daten einfügen, kann es nützlich sein, SQL * Loader zu verwenden, um Zeit und Ärger zu sparen.
Ich hoffe, das hilft.
- 1. NACH EINFÜGEN Trigger zum Einfügen von Daten in eine andere Tabelle nach dem Einfügen in die ursprüngliche Tabelle
- 2. Oracle-Trigger vor und nach dem Einfügen
- 3. Einfügen von Daten, wenn Tabelle existiert oder Tabelle erstellen und Daten einfügen
- 4. Erstellen eines räumlichen Index auf Oracle
- 5. Erstellen von Triggern für Nach dem Einfügen, Nach dem Update und After Delete in SQL
- 6. Excel/VBA: Spaltenbreite nach dem Einfügen von Daten automatisch anpassen
- 7. Fehler beim Erstellen eines Geospatial-Index für die Daten nach dem Importieren von Daten aus einem Excel-Dokument
- 8. Ungeordnete Liste nicht nach dem Einfügen von Daten aktualisiert
- 9. Einfügen von Daten in Oracle-Tabelle (SQL)
- 10. Erstellen eines Index für eine Suche nach PHP
- 11. Sortierung eines Datenrahmens nach Index
- 12. Mysql fügt leere Zeile nach dem Einfügen Zeile mit Daten (in Chrome)
- 13. Einfügen von Daten in Oracle DB
- 14. C# .NET SQL Server 2008 Daten verschwanden nach dem Einfügen oder unverändert nach dem Bearbeiten
- 15. Einfügen von Daten in eine temporäre Tabelle
- 16. Schienen: Hinzufügen eines Index nach dem Hinzufügen der Spalte
- 17. MySQL Trigger nach dem Einfügen
- 18. Mysql: Schreiben in die Protokolldatei nach dem Einfügen in Tabelle
- 19. Image Button wird weiß nach dem Einfügen eines Bildes
- 20. Suche nach dem Index eines Strings in einem Tupel
- 21. Erstellen einer neuen Zeile nach dem Speichern eines Datensatzes
- 22. ngFor - Drucken eines Array-Elements nach Index
- 23. MySQL nach dem Einfügen und nach dem Update Trigger
- 24. bekomme eine Liste von Primärschlüsseln nach dem Einfügen mehrerer Einträge
- 25. Core-Daten: Einfügen einer neuen Zeile nach dem Abrufen
- 26. Nach dem Einfügen in Hbase-Tabelle einige Spalten neu berechnen
- 27. Einfügen von Daten über HABTM
- 28. Einfügen eines sequenzierten Werts in eine neue Tabelle ORACLE
- 29. Aktualisieren eines Arrays vor dem Einfügen von MySQL?
- 30. Erstellen von Indizes für Gruppen nach Feldern?
„Häufig in dem falschen Glauben zu begehen, die Sie Ressourcen oder die Dinge sind die Erhaltung schneller gehen nur, dass dies für Sie: o Sie verlangsamt, ja, das ist richtig, verlangsamt Sie - macht Sie SLOOOWWWWEEERRR laufen o spart keine Ressourcen, in der Tat, es verbraucht mehr (Sie erzeugen mehr wiederholen) o ernsthaft in Frage stellt die Integrität Ihrer Daten " – Angelina