In Oracle besteht eine Partitionstabelle darin, eine große Tabelle in mehrere kleine, verwaltbare Partitionstabellen zu zerlegen. Logischerweise gibt es nur eine Tabelle oder einen Index. aber physisch kann diese Tabelle oder dieser Index aus mehreren physischen Partitionen bestehen; Partitionstabellen können in Bereichspartitionen, Listenpartitionen, Hash-Partitionen und kombinierte Partitionen unterteilt werden.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, Oracle 11g-Version, Dell G3-Computer.
(2) Wann ist eine Partitionierung erforderlich?
Die offizielle Website von Oracle empfiehlt die Verwendung partitionierter Tabellen in den folgenden Situationen:
1. Wenn die Menge der Tabellendaten größer als 2 GB ist, sollte eine Partitionierung in Betracht gezogen werden; Neue Daten werden zur neuesten Partitionstabelle hinzugefügt, in der historische Daten gespeichert werden.
(3) Der Unterschied zwischen geteilter Tabelle und PartitionstabelleUm die Daten großer Tabellen/Indizes zu verteilen, besteht eine andere Möglichkeit darin, eine große Tabelle in mehrere Tabellen zu zerlegen Regeln: Eine Entitätstabelle mit unabhängigem Speicherplatz kann beispielsweise in zwei Tabellen aufgeteilt werden, eine zum Speichern von Privatkunden customer_person und die andere für Firmenkunden customer_company. Die Untertabellen sind völlig unabhängig und logischerweise mehrere verschiedene Tabellen, während die Partitionstabelle physisch eine einzige Tabelle ist. Partitionierte Tabellen sind für Anwendungen transparent und einfach zu verwalten und zu warten, während Untertabellen nicht einfach zu verwalten und zu warten sind.
(4) Arten von Partitionstabellen
Bereichspartitionierung
Listenpartitionierung
Hash-Partitionierung
Zusammengesetzte Partitionierung (Partitionierung)
Grundlegende Partitionierung bezieht sich nur auf eine Partitionstabelle verwendet eine Partitionierungsebene (Bereichspartitionierung, Listenpartitionierung, Hash-Partitionierung).
(1) Partitionsschlüssel
Partitionierung bedeutet, eine sehr große Tabelle oder einen sehr großen Index in mehrere kleine, überschaubare Teile zu zerlegen. Partitionierte Tabellen werden durch Partitionsschlüssel partitioniert. Der Partitionsschlüssel bestimmt, zu welcher Partition jede Datenzeile in der partitionierten Tabelle fließt. Jede Datenzeile in einer partitionierten Tabelle wird basierend auf dem Partitionsschlüssel implizit einer Partition zugewiesen.
(2) Bereichspartitionierung Die Bereichspartitionierung unterteilt die Partitionen nach dem Partitionsschlüssel und nach den unterschiedlichen Bereichswerten der Datenzeilen, die in den Partitionsschlüssel fallen.
(3) Fall 1 (Partitionsschlüssel ist eine Spalte)
CREATE TABLE time_range_sales ( prod_id NUMBER(6) , cust_id NUMBER , time_id DATE , channel_id CHAR(1) , promo_id NUMBER(6) , quantity_sold NUMBER(3) , amount_sold NUMBER(10,2) ) PARTITION BY RANGE (time_id) (PARTITION SALES_1998 VALUES LESS THAN (TO_DATE('01-JAN-1999','DD-MON-YYYY')), PARTITION SALES_1999 VALUES LESS THAN (TO_DATE('01-JAN-2000','DD-MON-YYYY')), PARTITION SALES_2000 VALUES LESS THAN (TO_DATE('01-JAN-2001','DD-MON-YYYY')), PARTITION SALES_2001 VALUES LESS THAN (MAXVALUE) );
Empfohlenes Tutorial: „
Oracle Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas ist eine Partitionstabelle in Oracle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!