Nutzung
view: view_name {
derived_table: {
cluster_keys: ["customer_city", "customer_state"]
...
}
}
|
Hierarchie
cluster_keys– oder – cluster_keys |
Standardwert
None
Akzeptiert
Einen oder mehrere Namen von gruppierten Spalten
Besondere Regeln
cluster_keys wird nur für bestimmte Dialekte unterstützt.
|
Definition
Beim Clustering einer partitionierten Tabelle werden die Daten in einer Partition anhand der Werte in den geclusterten Spalten sortiert und die geclusterten Spalten in Speicherblöcken mit optimaler Größe organisiert. Clustering kann die Leistung verbessern und die Kosten von Abfragen reduzieren, die nach den geclusterten Spalten filtern oder aggregieren.
Eine Liste der Dialekte, die cluster_keys unterstützen, finden Sie im Abschnitt Dialektunterstützung für cluster_keys.
Wenn Sie einer persistent derived table (PDT) oder einer Aggregattabelle eine gruppierte Spalte hinzufügen möchten, verwenden Sie den Parameter cluster_keys und geben Sie die Namen der Spalten an, die in der Datenbanktabelle gruppiert werden sollen.
Beispiele
Erstellen Sie eine customer_order_facts nativen abgeleiteten Tabelle in einer BigQuery-Datenbank, die nach der Spalte date partitioniert und nach den Spalten city, age_tier und gender geclustert ist, um Abfragen zu optimieren, die nach diesen Spalten gefiltert oder aggregiert werden:
view: customer_order_facts {
derived_table: {
explore_source: order {
column: customer_id { field: order.customer_id }
column: date { field: order.order_time }
column: city { field: users.city}
column: age_tier { field: users.age_tier }
column: gender { field: users.gender }
derived_column: num_orders {
sql: COUNT(order.customer_id) ;;
}
}
partition_keys: [ "date" ]
cluster_keys: [ "city", "age_tier", "gender" ]
datagroup_trigger: daily_datagroup
}
}
Dialektunterstützung für cluster_keys
Die Möglichkeit, cluster_keys zu verwenden, hängt vom Datenbankdialekt ab, den Ihre Looker-Verbindung verwendet. In der aktuellen Version von Looker wird cluster_keys von den folgenden Dialekten unterstützt:
| Dialekt | Unterstützt? |
|---|---|
| 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 |