Utilisation
view: view_name { derived_table: { partition_keys: [ "created_date" ] ... } }
|
Hiérarchie
partition_keys- ou - partition_keys |
Valeur par défaut
None
Acceptation
Un ou plusieurs noms de colonnes partitionnées
Règles spéciales
partition_keys n'est compatible qu'avec certains dialectes.
|
Définition
Le paramètre partition_keys est compatible avec les dialectes de base de données qui peuvent partitionner des colonnes. Lorsqu'une requête filtrée sur une colonne partitionnée est exécutée, la base de données n'analyse que les partitions qui incluent les données filtrées, au lieu d'analyser l'intégralité de la table. Comme une plus petite sous-section de la table est analysée, cela peut réduire considérablement le temps et le coût d'interrogation des grandes tables lorsque la partition et le filtre appropriés sont spécifiés.
Le paramètre
partition_keysne fonctionne qu'avec les tables persistantes, telles que les PDT et les tables agrégées.partition_keysn'est pas compatible avec les tables dérivées sans stratégie de persistance.De plus, le paramètre
partition_keysn'est pas compatible avec les tables dérivées définies à l'aide decreate_processousql_create.
Lorsque vous créez une table dérivée persistante (PDT) ou une table agrégée, si la table de base de données sous-jacente utilise le partitionnement, Looker peut l'utiliser.
Pour obtenir la liste des dialectes compatibles avec
partition_keys, consultez la section Dialectes compatibles avecpartition_keys.
Pour ajouter une colonne partitionnée à une PDT ou à une table agrégée, utilisez partition_keys et fournissez les noms des colonnes partitionnées correspondantes dans la table de base de données.
Exemples
Créez une PDT customer_day_facts sur une base de données BigQuery avec une clé de partition sur la colonne 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
}
}
Créez une table dérivée basée sur SQL customer_day_facts dans une base de données Presto avec des clés de partition sur les colonnes date et 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
}
}
Prise en charge des dialectes pour partition_keys
La possibilité d'utiliser partition_keys dépend du dialecte de base de données de votre connexion Looker. Dans la dernière version de Looker, les dialectes suivants sont compatibles avec partition_keys :
Dans BigQuery, le partitionnement ne peut être utilisé que sur une seule colonne de table, qui doit être une colonne de date/heure. Par conséquent, un PDT Looker basé sur une table BigQuery ne peut utiliser le partitionnement que sur une seule colonne de date/heure.
| Dialecte | Compatibilité |
|---|---|
| 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 |