Verstehen der Partitionierung in Babelfish - Amazon Aurora

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verstehen der Partitionierung in Babelfish

Ab Version 4.3.0 führt Babelfish die Tabellen- und Indexpartitionierung mit eingeschränkter Unterstützung ein. Die folgenden Abschnitte enthalten Details zur Erstellung von Partitionsfunktionen, zur Definition von Partitionsschemas und zur Implementierung partitionierter Tabellen und Indizes in Babelfish.

Einführung in die Partitionierung in Babelfish

  • Partitionsfunktionen:

    • CREATE PARTITION FUNCTION: Definiert, wie eine Tabelle oder ein Index partitioniert wird, indem der Partitionsspaltentyp und der Wertebereich für jede Partition angegeben werden

    • DROP PARTITION FUNCTION: Entfernt eine vorhandene Partitionsfunktion

  • Partitionsschemas:

    • CREATE PARTITION SCHEME: Definiert die Zuordnung zwischen Partitionen und Dateigruppen

      Anmerkung

      In Babelfish werden Dateigruppen als Dummy-Objekte behandelt und stellen keine physischen Speicherorte dar.

    • DROP PARTITION SCHEME: Entfernt ein vorhandenes Partitionsschema

  • Systemfunktionen:

    • $PARTITION: Diese Systemfunktion gibt die Partitionsnummer zurück, zu der ein bestimmter Wert in einer Partitionierungsspalte in einer angegebenen partitionierten Tabelle gehören würde.

  • Partitionierte Tabellen und Indizes:

    • CREATE TABLE ... ON partition_scheme_name (partition_column_name): Erstellt eine partitionierte Tabelle basierend auf einem angegebenen Partitionsschema und einer Partitionsspalte

    • CREATE INDEX ... ON partition_scheme_name (partition_column_name): Erstellt einen partitionierten Index basierend auf einem angegebenen Partitionsschema und einer Partitionsspalte

  • Systemansichten für die Partitionierung von Metadaten:

    Die folgenden Systemansichten wurden hinzugefügt, um Metadaten zur Partitionierung bereitzustellen:

    • sys.destination_data_spaces

    • sys.partitions

    • sys.partition_functions

    • sys.partition_parameters

    • sys.partition_range_values

    • sys.partition_schemes

Einschränkungen und Problemumgehungen

Die folgenden SQL-Server-Partitionierungsfunktionen werden von Babelfish noch nicht unterstützt:

  • ALTER PARTITION FUNCTION und ALTER PARTITION SCHEME.

    Anmerkung

    Babelfish unterstützt keine Operationen zum Aufteilen und Zusammenführen. Definieren Sie bei der Erstellung alle Partitionen in den Partitionsfunktionen, da Sie später keine Partitionen hinzufügen oder entfernen können.

  • Berechnete Spalten als Partitionierungsspalten

  • Die Dienstprogramme INSERT BULK und BCP für partitionierte Tabellen

  • Die Grenzoption LEFT für Partitionsfunktionen

  • Der Datentyp SQL_VARIANT für Partitionsfunktionen

  • TRUNCATE TABLE ... WITH PARTITION.

  • ALTER TABLE ... SWITCH PARTITION.

  • Nicht ausgerichtete partitionierte Indizes, wie etwa ein abweichendes Partitionierungsschema oder eine andere Partitionierungsspalte als in der partitionierten Tabelle

  • Die DMS-Migration aus der Babelfish-Quelle wird nur für Volllastaufgaben in partitionierten Tabellen unterstützt.

  • Babelfish unterstützt diese Syntaxoptionen nicht, bietet aber Behelfslösungen:

    • Verwenden eines Partitionsschemas mit Einschränkungen oder Indizes in der CREATE TABLE-Anweisung

    • ALTER TABLE ... ADD CONSTRAINT ... ON partition_scheme_name (partition_column_name)

    Anmerkung

    Die Notfalloption babelfishpg_tsql.escape_hatch_storage_on_partition kann auf „ignore“ gesetzt werden. Dadurch kann der Parser die Partitionsschemaoption ignorieren, die mit Einschränkungen oder Indizes verwendet wird, und das Backend erstellt individuelle Einschränkungen oder Indizes für jede Partition.