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.
OPTIMIZE
Optimise les lignes d'une table Apache Iceberg en réécrivant les fichiers de données dans une disposition plus optimisée en fonction de leur taille et du nombre de fichiers de suppression associés.
Note
OPTIMIZE
est transactionnel et n'est pris en charge que pour les tables Apache Iceberg.
Syntaxe
Le résumé syntaxique suivant montre comment optimiser la mise en page des données pour une table Iceberg.
OPTIMIZE [
db_name
.]table_name
REWRITE DATA USING BIN_PACK [WHEREpredicate
]
Note
Seules les colonnes de partition sont autorisées dans la WHERE
clausepredicate
. La spécification d'une colonne non partitionnée entraînera l'échec de la requête.
L'action de compactage est facturée en fonction de la quantité de données analysées pendant le processus de réécriture. L'action REWRITE DATA
utilise des prédicats pour sélectionner les fichiers contenant des lignes correspondantes. Si une ligne du fichier correspond au prédicat, le fichier est sélectionné pour optimisation. Ainsi, pour contrôler le nombre de fichiers affectés par l'opération de compactage, vous pouvez spécifier une clause WHERE
.
Configuration des propriétés de compactage
Pour contrôler la taille des fichiers à sélectionner pour le compactage et la taille du fichier résultant après le compactage, vous pouvez utiliser les paramètres de propriété de table. Vous pouvez utiliser l'instruction ALTER TABLE SET TBLPROPERTIES pour configurer les propriétés de la table associée.