用途
view: view_name { derived_table: { partition_keys: [ "created_date" ] ... } }
|
階層
partition_keysまたは partition_keys |
デフォルト値
None
許可
1 つ以上のパーティショニングされた列名
特別なルール
partition_keys は特定の言語でのみサポートされています |
定義
partition_keys パラメータは、列をパーティショニングできるデータベース言語をサポートしています。パーティション分割列でフィルタされたクエリが実行されると、データベースはテーブル全体をスキャンするのではなく、フィルタされたデータを含むパーティションのみをスキャンします。テーブルの小さなサブセクションがスキャンされるため、適切なパーティションとフィルタを指定すると、大きなテーブルのクエリ実行にかかる時間と費用を大幅に削減できます。
partition_keysパラメータは、PDT や集約テーブルなど、永続的なテーブルでのみ機能します。partition_keysは、永続性戦略のない派生テーブルではサポートされていません。また、
create_processまたはsql_createを使用して定義された派生テーブルでは、partition_keysパラメータはサポートされていません。
永続的な派生テーブル(PDT)または集約テーブルを作成するときに、基盤となるデータベース テーブルでパーティショニングが使用されている場合、Looker はそのパーティショニングを使用できます。
partition_keysをサポートする言語の一覧については、partition_keysの言語サポートをご覧ください。
パーティション分割された列を PDT または集約テーブルに追加するには、partition_keys を使用して、データベース テーブルでパーティション分割された対応する列の名前を指定します。
例
date 列にパーティション キーがある BigQuery データベースに customer_day_facts PDT を作成します。
view: customer_order_facts {
derived_table: {
explore_source: order {
column: customer_id { field: order.customer_id }
column: date { field: order.order_time }
derived_column: num_orders {
sql: COUNT(order.customer_id) ;;
}
}
partition_keys: [ "date" ]
datagroup_trigger: daily_datagroup
}
}
date 列と state 列にパーティション キーがある Presto データベースに customer_day_facts SQL ベースの派生テーブルを作成します。
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 ;;
partition_keys: [ "date", "state" ]
datagroup_trigger: daily_datagroup
}
}
partition_keys の言語サポート
partition_keys を使用できるかどうかは、Looker 接続で使用されているデータベース言語によって異なります。Looker の最新リリースでは、次の言語で partition_keys がサポートされています。
BigQuery では、パーティショニングは 1 つのテーブル列でのみ使用できます。この列は日時列である必要があります。したがって、BigQuery テーブルに基づく Looker PDT でパーティショニングを使用できるのは、1 つの日時列のみです。
| 方言 | サポート対象 |
|---|---|
| Actian Avalanche | |
| Amazon Athena | |
| Amazon Aurora MySQL | |
| Amazon Redshift | |
| Amazon Redshift 2.1+ | |
| Amazon Redshift Serverless 2.1+ | |
| Apache Druid | |
| Apache Druid 0.13+ | |
| Apache Druid 0.18+ | |
| Apache Hive 2.3+ | |
| Apache Hive 3.1.2+ | |
| Apache Spark 3+ | |
| ClickHouse | |
| Cloudera Impala 3.1+ | |
| Cloudera Impala 3.1+ with Native Driver | |
| Cloudera Impala with Native Driver | |
| DataVirtuality | |
| Databricks | |
| Denodo 7 | |
| Denodo 8 & 9 | |
| Dremio | |
| Dremio 11+ | |
| Exasol | |
| Google BigQuery Legacy SQL | |
| Google BigQuery Standard SQL | |
| Google Cloud PostgreSQL | |
| Google Cloud SQL | |
| Google Spanner | |
| Greenplum | |
| HyperSQL | |
| IBM Netezza | |
| MariaDB | |
| Microsoft Azure PostgreSQL | |
| Microsoft Azure SQL Database | |
| Microsoft Azure Synapse Analytics | |
| Microsoft SQL Server 2008+ | |
| Microsoft SQL Server 2012+ | |
| Microsoft SQL Server 2016 | |
| Microsoft SQL Server 2017+ | |
| MongoBI | |
| MySQL | |
| MySQL 8.0.12+ | |
| Oracle | |
| Oracle ADWC | |
| PostgreSQL 9.5+ | |
| PostgreSQL pre-9.5 | |
| PrestoDB | |
| PrestoSQL | |
| SAP HANA | |
| SAP HANA 2+ | |
| SingleStore | |
| SingleStore 7+ | |
| Snowflake | |
| Teradata | |
| Trino | |
| Vector | |
| Vertica |