Comprendre le partitionnement dans Babelfish - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Comprendre le partitionnement dans Babelfish

À partir de la version 4.3.0, Babelfish introduit le partitionnement des tables et des index avec un support limité. Les sections suivantes fournissent des détails sur la création de fonctions de partition, la définition de schémas de partition et l'implémentation de tables et d'index partitionnés dans Babelfish.

Présentation du partitionnement dans Babelfish

  • Fonctions de partition :

    • CREATE PARTITION FUNCTION:Définit le mode de partitionnement d'une table ou d'un index en spécifiant le type de colonne de partitionnement et la plage de valeurs pour chaque partition.

    • DROP PARTITION FUNCTION:Supprime une fonction de partition existante.

  • Schémas de partition :

    • CREATE PARTITION SCHEME:Définit le mappage entre les partitions et les groupes de fichiers.

      Note

      Dans Babelfish, les groupes de fichiers sont traités comme des objets factices et ne représentent pas des emplacements de stockage physiques.

    • DROP PARTITION SCHEME:Supprime un schéma de partition existant.

  • Fonction du système :

    • $PARTITION:Cette fonction système renvoie le numéro de partition auquel une valeur spécifiée dans une colonne de partitionnement appartiendrait dans une table partitionnée spécifiée.

  • Tables et index partitionnés :

    • CREATE TABLE ... ON partition_scheme_name (partition_column_name):Crée une table partitionnée en fonction d'un schéma de partition et d'une colonne de partitionnement spécifiés.

    • CREATE INDEX ... ON partition_scheme_name (partition_column_name):Crée un index partitionné en fonction d'un schéma de partition et d'une colonne de partitionnement spécifiés.

  • Vues du système pour le partitionnement des métadonnées :

    Les vues système suivantes sont ajoutées pour fournir des métadonnées relatives au partitionnement :

    • sys.destination_data_spaces

    • sys.partitions

    • sys.partition_functions

    • sys.partition_parameters

    • sys.partition_range_values

    • sys.partition_schemes

Limites et solutions

Les fonctionnalités de partitionnement SQL Server suivantes ne sont pas encore prises en charge par Babelfish :

  • ALTER PARTITION FUNCTION et ALTER PARTITION SCHEME.

    Note

    Babelfish ne prend pas en charge les opérations de division et de fusion. Définissez toutes les partitions dans les fonctions de partition lors de leur création, car vous ne pourrez ni ajouter ni supprimer de partitions ultérieurement.

  • Colonnes calculées en tant que colonnes de partitionnement.

  • INSERT BULKet BCP utilitaire pour les tables partitionnées.

  • LEFToption de limite pour les fonctions de partition.

  • SQL_VARIANTtype de données pour les fonctions de partition.

  • TRUNCATE TABLE ... WITH PARTITION.

  • ALTER TABLE ... SWITCH PARTITION.

  • Des index partitionnés non alignés tels que le schéma de partition et la colonne de partition différents de la table partitionnée.

  • La migration DMS depuis la source Babelfish n'est prise en charge que pour les tâches de chargement complet sur des tables partitionnées.

  • Utilisation du classement dans la fonction de partition.

  • Utilisation d'une colonne de partitionnement avec un classement autre que le classement par défaut de la base de données.

  • Babelfish ne supporte pas ces options de syntaxe mais propose des solutions de contournement :

    • Utilisation d'un schéma de partition avec des contraintes ou des index dans l'instruction CREATE TABLE.

    • MODIFIER LA TABLE... AJOUTER UNE CONTRAINTE... SUR partition_scheme_name (partition_column_name).

    Note

    Vous pouvez configurer la trappe d'babelfishpg_tsql.escape_hatch_storage_on_partitionévacuation pour qu'elle soit ignorée. Cela permettra à l'analyseur d'ignorer l'option de schéma de partition utilisée avec les contraintes ou les index, et le backend créera des contraintes ou des index individuels pour chaque partition.