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

ステップ 3: ソートキーを選択する

テーブルの作成時、ソートキーとして 1 つ以上の列を指定できます。Amazon Redshift は、ソートキーに応じたソート順でデータをディスクに格納します。データのソート方法はディスク I/O、列指向の圧縮、クエリパフォーマンスに重要な影響を与えます。

このステップでは、以下のベストプラクティスに基づいて SSB テーブルのソートキーを選択します。

  • 最新のデータが最も頻繁にクエリ処理される場合は、タイムスタンプ列をソートキーの主要な列として指定します。

  • 1 つの列に対して範囲フィルタリングまたは等価性フィルタリングを頻繁に実行する場合は、その列をソートキーとして指定します。

  • (ディメンション) テーブルを頻繁に結合する場合は、結合列をソートキーとして指定します。

ソートキーを選択するには

  1. Evaluate your queries to find timestamp columns that are used to filter the results.

    For example, LINEORDER frequently uses equality filters using lo_orderdate.

    Copy
    where lo_orderdate = d_datekey and d_year = 1997
  2. Look for columns that are used in range filters and equality filters. For example, LINEORDER also uses lo_orderdate for range filtering.

    Copy
    where lo_orderdate = d_datekey and d_year >= 1992 and d_year <= 1997
  3. Based on the first two best practices, lo_orderdate is a good choice for sort key.

    In the tuning table, specify lo_orderdate as the sort key for LINEORDER.

  4. The remaining tables are dimensions, so, based on the third best practice, specify their primary keys as sort keys.

以下のチューニングの表に示しているのは、選択したソートキーです。「分散スタイル」列は「ステップ 4: 分散スタイルを選択する」で入力します。

テーブル名 ソートキー 分散スタイル
LINEORDER lo_orderdate
PART p_partkey
CUSTOMER c_custkey
SUPPLIER s_suppkey
DWDATE d_datekey

次のステップ

ステップ 4: 分散スタイルを選択する