sortkeys

使用状況

ビュー: my_view {
derived_table: {
sortkeys: ["date"]
...
}
}
階層
sortkeys

または

sortkeys
デフォルト値
なし

許可
PDT または集約テーブルの 1 つ以上の列の名前

特別なルール
sortkeys特定の言語でのみサポートされます。

定義

sortkeys パラメータでは、標準の並べ替えキーを適用する永続的な派生テーブル(PDT)または集計テーブルの 1 つ以上の列を指定できます。並べ替えキーを使用すると、並べ替えが頻繁に行われる PDT の列を指定して、データのクエリを高速化できます。

sortkeys をサポートしている言語のリストについては、下記の sortkeys の言語サポート セクションをご覧ください。

代わりに indexes を使用してインターリーブの並べ替えキーを作成することもできます。両方を同時に使用することはできませんが、少なくとも 1 つは必須です。

sortkeys パラメータは、PDT や集計テーブルなど、永続なテーブルでのみ機能します。sortkeys は、永続化戦略のない派生テーブルではサポートされていません。

また、sortkeys パラメータは、create_process または sql_create を使用して定義された派生テーブルではサポートされていません。

一般的に、並べ替えキーはテーブル内の日付または時間の列に適用し、場合によってはフィルタとして頻繁に使用される列にも適用する必要があります。詳細については、Amazon Redshift のドキュメントをご覧ください。

以下の例では、sortkeys パラメータを使用できるように Redshift データベースを使用していることを前提としています。

date に並べ替えキーがある永続的なcustomer_day_factsネイティブ派生テーブルを作成し、データグループ order_datagroup がトリガーされたときに再ビルドします。

view: customer_day_facts {
  derived_table: {
    explore_source: order {
      column: customer_id { field: order.customer_id }
      column: date { field: order.order_date }
      column: num_orders { field: order.customer_order_count }
    }
    datagroup_trigger: order_datagroup
    sortkeys: ["date"]
  }
}

SQL クエリに基づき、date に並べ替えキーがある customer_day_facts 派生テーブルを作成します。

view: customer_day_facts {
  derived_table: {
    sql:
      SELECT
        customer_id,
        DATE(order_time) AS date,
        COUNT(*) AS num_orders
      FROM
        order
      GROUP BY
        customer_id ;;
    persist_for: "24 hours"
    sortkeys: ["date"]
  }
}

datecustomer_id の並べ替えキーを持つ SQL クエリに基づく customer_day_facts 派生テーブルを作成します。

view: customer_day_facts {
  derived_table: {
    sql:
      SELECT
        customer_id,
        DATE(order_time) AS date,
        COUNT(*) AS num_orders
      FROM
        order
      GROUP BY
        customer_id ;;
    persist_for: "24 hours"
    sortkeys: ["date", "customer_id"]
  }
}

sortkeys の言語サポート

sortkeys を使用できるかどうかは、Looker 接続で使用されているデータベース言語によって異なります。Looker の最新リリースでは、sortkeys で以下の言語がサポートされています。

従来の SQL 言語(MySQL や Postgres など)では indexes を使用する必要があります。sortkeys は、これらのデータベースでは機能しません。