メニュー
Amazon Redshift
データベース開発者ガイド (API Version 2012-12-01)

COPY による圧縮エンコードの選択

テーブルを作成するときに圧縮エンコードを指定できますが、ほとんどの場合、自動圧縮が最も適切な結果を生み出します。

COPY コマンドは、データを分析し、ロード操作の一部として自動的に空のテーブルに圧縮エンコードを適用します。

自動圧縮では、圧縮エンコードを選択する際に全体的なパフォーマンスの負荷を分散させます。ソートキー列が、同じクエリ内の他の列よりもかなり高度に圧縮される場合、範囲が制限されたスキャンはパフォーマンスが低下する可能性があります。その結果、自動圧縮では、効率が低い圧縮エンコードを選択してソートキー列が他の列とのバランスの取れた状態を維持します。

テーブルのソートキーが日付、またはタイムスタンプとテーブルが大きい varchar 列を多数使用する場合、ソートキー列を完全に圧縮しないことでより良いパフォーマンスが得られる場合があります。テーブルで ANALYZE COMPRESSION のコマンドを実行し、エンコーディングを使用して新しいテーブルを作成します。ただし、ソートキーの圧縮エンコードを省いてください。

自動的な圧縮エンコードではパフォーマンスが低下しますが、これが発生するのはテーブルが空で、すでに圧縮エンコードがない場合のみです。存続期間の短いテーブルおよび頻繁に作成するテーブル (ステージングテーブルなど) の場合は、自動圧縮でテーブルを 1 回ロードするか、ANALYZE COMPRESSION コマンドを実行し、次にそれらのエンコードを使用して新しいテーブルを作成します。CREATE TABLE ステートメントにエンコードを追加するか、CREATE TABLE LIKE を使用して同じエンコードで新しいテーブルを作成できます。

詳細については、「チュートリアル: テーブル設計のチューニング」および「自動圧縮ありでテーブルをロードする」を参照してください。