Oracle
 sql >> Datenbank >  >> RDS >> Oracle

ORACLE-Einfügungsleistung bei indizierten Tabellen

Dies ist eigentlich die gleiche Art von Frage wie:

Das liegt daran, dass Sie Ihre Einkäufe an einer schönen, gut bekannten Position aufbewahren möchten, damit Sie sie später leichter finden können.

Eine Datenbank muss dasselbe tun.

  • Wenn Sie eine Tabelle ohne Index haben, können einfach neue Daten am Ende der Tabelle hinzugefügt werden.
  • Wenn Sie einen Index haben, muss die Datenbank mehr Arbeit leisten. Es wird den Datensatz wahrscheinlich immer noch an das Ende der Tabelle stellen, aber zusätzlich wird es seinen Index aktualisieren, um sicherzustellen, dass es ihn schneller findet, wenn Sie diesen Datensatz danach finden möchten, als ohne Index.

Das bedeutet auch, dass das Hinzufügen weiterer Indizes die Einfügungen weiter verlangsamt.

Es sollte klar sein, dass Sie nur dann einen Index erstellen wollen, wenn Sie ihn später auch verwenden werden. Wenn Sie nur einen Index erstellen und ihn anschließend nicht verwenden, um die Leistung einer Abfrage zu verbessern, ist der Index nicht erforderlich, da er nur die Einfügungen verlangsamt und keine Abfrage verbessert.