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.
Compression de colonnes pour réduire la taille des données stockées
La compression est une opération au niveau des colonnes qui réduit la taille des données lorsque celles-ci sont stockées. La compression préserve l’espace de stockage et réduit la taille des données qui sont lues depuis le stockage, ce qui réduit la quantité d’I/O de disque et par conséquent améliore les performances des requêtes.
ENCODEAUTOest la valeur par défaut pour les tables. Lorsqu'une table est définie sur ENCODEAUTO, Amazon Redshift gère automatiquement le codage de compression pour toutes les colonnes de la table. Pour plus d’informations, consultez CREATE TABLE et ALTER TABLE.
Toutefois, si vous spécifiez le codage de compression pour une colonne de la table, celle-ci n'est plus définie sur ENCODEAUTO. Amazon Redshift ne gère plus automatiquement le codage de compression pour toutes les colonnes de la table.
Vous pouvez appliquer un type de compression, aussi appelé encodage, aux colonnes d’une table manuellement lorsque vous créez la table. Vous pouvez également utiliser la COPY commande pour analyser et appliquer la compression automatiquement. Pour de plus amples informations, veuillez consulter COPYChoisissez les encodages de compression. Pour plus de détails sur la mise en œuvre de la compression automatique, consultez Chargement des tables avec compression automatique.
Note
Nous vous recommandons vivement d'utiliser la COPY commande pour appliquer une compression automatique.
Vous pouvez choisir d’appliquer les encodages de compression manuellement si la nouvelle table partage les mêmes caractéristiques de données qu’une autre table. Vous pouvez également le faire si vous découvrez, lors des tests, que les encodages de compression appliqués lors de la compression automatique ne sont pas les mieux adaptés à vos données. Si vous choisissez d’appliquer manuellement des encodages de compression, vous pouvez exécuter la commande ANALYZE COMPRESSION dans une table déjà renseignée et utiliser les résultats pour choisir les encodages de compression.
Pour appliquer la compression manuellement, vous devez spécifier des codages de compression pour des colonnes individuelles dans le cadre de l'CREATETABLEinstruction. La syntaxe est la suivante.
CREATE TABLE table_name (column_name data_type ENCODE encoding-type)[, ...]
Ici, le type d’encodage (encoding-type) est repris du tableau des mots-clés de la section suivante.
Par exemple, l'instruction suivante crée un tableau à deux colonnes,PRODUCT. Lorsque des données sont chargées dans la table, la colonne PRODUCT _ID n'est pas compressée, mais la NAME colonne PRODUCT _ est compressée à l'aide du dictionnaire d'octets encoding (BYTEDICT).
create table product( product_id int encode raw, product_name char(20) encode bytedict);
Vous pouvez spécifier le codage d'une colonne lorsqu'elle est ajoutée à une table à l'aide de la ALTER TABLE commande.
ALTER TABLE table-name ADD [ COLUMN ] column_name column_type ENCODE encoding-type