Utilizzo
view: view_name { derived_table: { partition_keys: [ "created_date" ] ... } }
|
Gerarchia
partition_keys- o - partition_keys |
Valore predefinito
None
Accetta
Uno o più nomi di colonne partizionate
Regole speciali
partition_keys è supportato solo in dialetti specifici
|
Definizione
Il parametro partition_keys supporta i dialetti del database in grado di partizionare le colonne. Quando viene eseguita una query filtrata in base a una colonna partizionata, il database analizza solo le partizioni che includono i dati filtrati, anziché l'intera tabella. Poiché viene scansionata una sottosezione più piccola della tabella, ciò può ridurre significativamente il tempo e il costo delle query su tabelle di grandi dimensioni quando vengono specificati la partizione e il filtro appropriati.
Il parametro
partition_keysfunziona solo con le tabelle persistenti, come le PDT e le tabelle aggregate.partition_keysnon è supportato per le tabelle derivate senza una strategia di persistenza.Inoltre, il parametro
partition_keysnon è supportato per le tabelle derivate definite utilizzandocreate_processosql_create.
Quando crei una tabella derivata persistente (PDT) o una tabella aggregata, se la tabella del database sottostante utilizza il partizionamento, Looker può utilizzare questo partizionamento.
Consulta la sezione Supporto dei dialetti per
partition_keysper l'elenco dei dialetti che supportanopartition_keys.
Per aggiungere una colonna partizionata a una tabella PDT o aggregata, utilizza partition_keys e fornisci i nomi delle colonne corrispondenti partizionate nella tabella del database.
Esempi
Crea un PDT customer_day_facts su un database BigQuery con una chiave di partizione nella colonna date:
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
}
}
Crea una tabella derivata basata su SQL customer_day_facts in un database Presto con chiavi di partizione nelle colonne date e state:
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
}
}
Supporto dei dialetti per partition_keys
La possibilità di utilizzare partition_keys dipende dal dialetto del database utilizzato dalla connessione Looker. Nell'ultima release di Looker, i seguenti dialetti supportano partition_keys:
In BigQuery, il partizionamento può essere utilizzato solo su una colonna della tabella, che deve essere una colonna di data/ora, quindi una tabella derivata persistente (PDT) di Looker basata su una tabella BigQuery può utilizzare il partizionamento solo su una colonna di data/ora.
| Dialetto | Supportata? |
|---|---|
| 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 |