ANALYZE COMPRESSION - Amazon Redshift

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.

ANALYZE COMPRESSION

Effectue l’analyse de compression et produit un rapport avec l’encodage de suppression suggéré pour les tables analysées. Pour chaque colonne, le rapport inclut une estimation de la réduction potentielle de l'espace disque par rapport au RAW codage.

Syntaxe

ANALYZE COMPRESSION [ [ table_name ] [ ( column_name [, ...] ) ] ] [COMPROWS numrows]

Paramètres

table_name

Vous pouvez analyser la compression pour des tables spécifiques, y compris les tables temporaires. Vous pouvez qualifier la table avec son nom de schéma. Vous pouvez le cas échéant spécifier un nom_table pour analyser une seule table. Si vous ne spécifiez pas un nom_table, toutes les tables de la base de données actuellement connectée sont analysées. Vous ne pouvez pas spécifier plus d'un nom_table avec une seule ANALYZE COMPRESSION instruction.

column_name

Si vous spécifiez un nom_table, vous pouvez également spécifier une ou plusieurs colonnes de la table (au forme de liste de colonnes séparées entre parenthèses).

COMPROWS

Nombre de lignes à utiliser comme taille de l’échantillon pour l’analyse de la compression. L’analyse est exécutée sur les lignes de chaque tranche de données. Par exemple, si vous spécifiez 1 COMPROWS 000 000 (1 000 000) et que le système contient 4 tranches au total, pas plus de 250 000 lignes par tranche sont lues et analysées. Si COMPROWS ce n'est pas spécifié, la taille de l'échantillon est par défaut de 100 000 par tranche. Les valeurs COMPROWS inférieures à la valeur par défaut de 100 000 lignes par tranche sont automatiquement mises à niveau vers la valeur par défaut. Cependant, l’analyse de compression ne génère pas de recommandations si la quantité de données dans la table n’est pas suffisante pour produire un échantillon significatif. Si le COMPROWS nombre est supérieur au nombre de lignes de la table, la ANALYZE COMPRESSION commande continue et exécute l'analyse de compression sur toutes les lignes disponibles. L'utilisation COMPROWS entraîne une erreur si aucune table n'est spécifiée.

numrows

Nombre de lignes à utiliser comme taille de l’échantillon pour l’analyse de la compression. La plage acceptée pour numrows est un nombre compris entre 1000 et 1000000000 (1 000 000 000).

Notes d’utilisation

ANALYZECOMPRESSIONacquiert un verrou de table exclusif, qui empêche les lectures et écritures simultanées sur la table. Exécutez la ANALYZE COMPRESSION commande uniquement lorsque la table est inactive.

Exécutez ANALYZE COMPRESSION pour obtenir des recommandations pour les schémas de codage des colonnes, sur la base d'un échantillon du contenu de la table. ANALYZECOMPRESSIONest un outil consultatif qui ne modifie pas le codage des colonnes de la table. Vous pouvez appliquer l’encodage suggéré en recréant la table ou en créant une nouvelle table avec le même schéma. La recréation d’une table non compressée à l’aide de schémas de codage appropriés peut réduire considérablement son encombrement sur le disque. Cette approche permet d’économiser de l’espace disque et d’améliorer les performances des requêtes pour les charges de travail liées aux I/O.

ANALYZECOMPRESSIONignore la phase d'analyse proprement dite et renvoie directement le type de codage d'origine sur toute colonne désignée comme a. SORTKEY Cela est dû au fait que les scans à plage restreinte peuvent être peu performants lorsque les SORTKEY colonnes sont beaucoup plus compressées que les autres colonnes.

Exemples

L'exemple suivant montre le codage et le pourcentage de réduction estimé pour les colonnes du LISTING tableau uniquement :

analyze compression listing; Table | Column | Encoding | Est_reduction_pct ---------+----------------+----------+------------------- listing | listid | az64 | 40.96 listing | sellerid | az64 | 46.92 listing | eventid | az64 | 53.37 listing | dateid | raw | 0.00 listing | numtickets | az64 | 65.66 listing | priceperticket | az64 | 72.94 listing | totalprice | az64 | 68.05 listing | listtime | az64 | 49.74

L'exemple suivant analyse les SALETIME colonnes QTYSOLDCOMMISSION, et du SALES tableau.

analyze compression sales(qtysold, commission, saletime); Table | Column | Encoding | Est_reduction_pct -------+------------+----------+------------------- sales | salesid | N/A | 0.00 sales | listid | N/A | 0.00 sales | sellerid | N/A | 0.00 sales | buyerid | N/A | 0.00 sales | eventid | N/A | 0.00 sales | dateid | N/A | 0.00 sales | qtysold | az64 | 83.06 sales | pricepaid | N/A | 0.00 sales | commission | az64 | 71.85 sales | saletime | az64 | 49.63