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

Globaler nicht partitionierter Index in Oracle

Es gibt keinen "lokalen nicht partitionierten Index". Scheint wahrscheinlich ein Dokumentationsfehler zu sein. Ich denke, was sie sagen wollten, war

Also ja, die in Tom Kytes Buch zitierte Syntax ist legal.

Standardmäßig sind GLOBAL-Indizes nicht partitioniert. Das heißt, es gibt einen Index für alle Partitionen der Tabelle. Der Hauptgrund, warum wir dies tun sollten, besteht darin, eine eindeutige Einschränkung für die gesamte Tabelle zu erzwingen. In der Praxis ist dies selten erforderlich:Die Partitionierung ist normalerweise auf Data Warehouses beschränkt, in denen die Durchsetzung von Einschränkungen im Allgemeinen lockerer ist, da DML stärker gesperrt ist.

Die von Ihnen verlinkte Dokumentation zeigt, wie GLOBAL partitionierte Indizes erstellt werden. Dies ist ein hybrides Konstrukt, das es uns ermöglicht, Indizes mit einem anderen Partitionierungsschema als dem zur Partitionierung der Daten zu erstellen. Um ehrlich zu sein, ist mir das noch nie auf einer Website begegnet, auf der ich mit Partitionierung gearbeitet habe. @matthewmcpeak schlug jedoch ein Szenario vor, in dem es nützlich sein könnte. Deshalb füge ich seinen Kommentar in diese Antwort ein, zum Nutzen zukünftiger Sucher.