Heim >häufiges Problem >Die Rolle der Oracle-Tabellenpartitionierung

Die Rolle der Oracle-Tabellenpartitionierung

(*-*)浩
(*-*)浩Original
2019-09-02 11:55:189926Durchsuche

Das Konzept von Tabellenbereich und Partitionstabelle

Die Rolle der Oracle-Tabellenpartitionierung

Tabellenbereich: (Empfohlenes Lernen: Web-Frontend-Video-Tutorial )

ist eine Sammlung von einer oder mehreren Datendateien. Alle Datenobjekte werden im angegebenen Tabellenbereich gespeichert, der Hauptspeicher sind jedoch Tabellen, daher wird er als Tabelle bezeichnet Leerzeichen

Partitionstabelle:

Wenn die Datenmenge in der Tabelle weiter zunimmt, verlangsamt sich die Geschwindigkeit der Datenabfrage und die Leistung der Anwendung nimmt ab sollte über eine Partitionierung der Tabelle nachdenken. Nach der Partitionierung der Tabelle ist die logische Tabelle immer noch eine vollständige Tabelle, die Daten in der Tabelle werden jedoch physisch in mehreren Tabellenbereichen (physischen Dateien) gespeichert, sodass beim Abfragen der Daten nicht jedes Mal die gesamte Tabelle gescannt wird. Tabelle

Die spezifische Rolle der Tabellenpartitionierung

Die Tabellenpartitionierungsfunktion von Oracle bringt Vorteile für eine Vielzahl von Anwendungen, indem sie die Verwaltbarkeit, Leistung und Verfügbarkeit erheblich verbessert Nutzen. Im Allgemeinen kann die Partitionierung die Leistung bestimmter Abfragen und Wartungsvorgänge erheblich verbessern. Darüber hinaus kann die Partitionierung allgemeine Verwaltungsaufgaben erheblich vereinfachen und ist ein wichtiges Werkzeug beim Aufbau von Gigabyte-Datensystemen oder Systemen mit extrem hoher Verfügbarkeit.

Die Partitionierungsfunktion kann eine Tabelle, einen Index oder eine indexorganisierte Tabelle weiter in Segmente unterteilen. Die Segmente dieser Datenbankobjekte werden Partitionen genannt. Jede Partition hat einen eigenen Namen und kann ihre eigenen Speichereigenschaften auswählen. Aus Sicht eines Datenbankadministrators verfügt ein partitioniertes Objekt über mehrere Segmente, und diese Segmente können gemeinsam oder einzeln verwaltet werden. Dies gibt dem Datenbankadministrator erhebliche Flexibilität bei der Verwaltung partitionierter Objekte. Aus Anwendungssicht ist eine partitionierte Tabelle jedoch identisch mit einer nicht partitionierten Tabelle, und beim Zugriff auf eine partitionierte Tabelle mithilfe von SQL-DML-Befehlen sind keine Änderungen erforderlich.

Wann werden Partitionstabellen verwendet?

1 Die Größe der Tabelle überschreitet 2 GB.

2. Die Tabelle enthält historische Daten und neue Daten werden zu neuen Partitionen hinzugefügt.

Vor- und Nachteile der Tabellenpartitionierung

Die Tabellenpartitionierung hat die folgenden Vorteile:

1. Abfrageleistung verbessern: Abfragen für partitionierte Objekte können nur durchsucht werden Für sich selbst kümmern Sie sich um die Partitionen, um die Abrufgeschwindigkeit zu verbessern.

2. Erweiterte Verfügbarkeit: Wenn eine bestimmte Partition der Tabelle ausfällt, sind die Daten der Tabelle in anderen Partitionen weiterhin verfügbar.

3 Wenn dies fehlschlägt, müssen Sie zum Reparieren der Daten nur die Partition reparieren.

4. Ausgeglichene E/A: Verschiedene Partitionen können Festplatten zugeordnet werden, um E/A auszugleichen und die Gesamtsystemleistung zu verbessern.

Nachteile:

Bezogen auf Partitionstabellen: Es gibt keine Möglichkeit, eine vorhandene Tabelle direkt in eine Partitionstabelle umzuwandeln. Allerdings bietet Oracle die Funktion der Online-Neudefinition von Tabellen.

(4). Verschiedene Arten und Betriebsmethoden von Tabellenpartitionen

Bereichspartitionierung:

Die Bereichspartitionierung ordnet Daten jeder Partition basierend auf dem Bereich zu durch den Partitionsschlüssel, der beim Erstellen der Partition angegeben wurde. Diese Partitionierungsmethode wird am häufigsten verwendet und der Partitionsschlüssel verwendet häufig das Datum. Beispiel: Sie könnten Ihre Verkaufsdaten nach Monaten aufteilen.

Beachten Sie bei der Verwendung der Bereichspartitionierung bitte die folgenden Regeln:

1. Jede Partition muss eine VALUES LESS THEN-Klausel haben, die einen Wert angibt, der nicht im oberen Grenzwert der Partition enthalten ist. Alle Datensätze mit einem Partitionsschlüsselwert, der dieser Obergrenze entspricht oder diesen überschreitet, werden der nächsthöheren Partition hinzugefügt.

2. Alle Partitionen außer der ersten haben einen impliziten unteren Grenzwert. Dieser Wert ist der obere Grenzwert der vorherigen Partition dieser Partition.

3. In der höchsten Partition ist MAXVALUE definiert. MAXVALUE stellt einen unsicheren Wert dar. Dieser Wert ist höher als der Wert eines beliebigen Partitionsschlüssels in anderen Partitionen und kann auch als höher als der in einer beliebigen Partition angegebene Wert von VALUE LESS THEN verstanden werden, einschließlich Nullwerten.

Beispiel 1:

Angenommen, es gibt eine CUSTOMER-Tabelle mit 200.000 Datenzeilen. Jede Partition speichert 100.000 Zeilen Die Datendateien können sich über mehrere physische Festplatten erstrecken. Im Folgenden finden Sie den Code zum Erstellen von Tabellen und Partitionen:

CREATE TABLE CUSTOMER 
( 
    CUSTOMER_ID NUMBER NOT NULL PRIMARY KEY, 
    FIRST_NAME  VARCHAR2(30) NOT NULL, 
    LAST_NAME   VARCHAR2(30) NOT NULL, 
    PHONE        VARCHAR2(15) NOT NULL, 
    EMAIL        VARCHAR2(80), 
    STATUS       CHAR(1) 
) 
PARTITION BY RANGE (CUSTOMER_ID) 
( 
    PARTITION CUS_PART1 VALUES LESS THAN (100000) TABLESPACE CUS_TS01, 
    PARTITION CUS_PART2 VALUES LESS THAN (200000) TABLESPACE CUS_TS02 
)

Das obige ist der detaillierte Inhalt vonDie Rolle der Oracle-Tabellenpartitionierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn