Uso
view: view_name { derived_table: { partition_keys: [ "created_date" ] ... } }
|
Jerarquía
partition_keysO bien: partition_keys |
Valor predeterminado
None
Acepta
Uno o más nombres de columnas particionadas
Reglas especiales
partition_keys solo se admite en dialectos específicos
|
Definición
El parámetro partition_keys admite dialectos de bases de datos que pueden particionar columnas. Cuando se ejecuta una consulta que se filtra en una columna particionada, la base de datos solo analizará las particiones que incluyen los datos filtrados, en lugar de analizar toda la tabla. Dado que se analiza una subsección más pequeña de la tabla, esto puede reducir significativamente el tiempo y el costo de consultar tablas grandes cuando se especifican la partición y el filtro adecuados.
El parámetro
partition_keyssolo funciona con tablas persistentes, como las PDT y las tablas agregadas.partition_keysno se admite para las tablas derivadas sin una estrategia de persistencia.Además, el parámetro
partition_keysno se admite para las tablas derivadas que se definen concreate_processosql_create.
Cuando creas una tabla derivada persistente (PDT) o una tabla de datos agregados, si la tabla de la base de datos subyacente usa la partición, Looker puede usar esa partición.
Consulta la sección Compatibilidad de dialectos con
partition_keyspara ver la lista de dialectos que admitenpartition_keys.
Para agregar una columna particionada a una PDT o a una tabla de agregación, usa partition_keys y proporciona los nombres de las columnas correspondientes que se particionan en la tabla de la base de datos.
Ejemplos
Crea una PDT customer_day_facts en una base de datos de BigQuery con una clave de partición en la columna 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 tabla derivada basada en SQL customer_day_facts en una base de datos de Presto con claves de partición en las columnas date y 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
}
}
Compatibilidad con dialectos para partition_keys
La capacidad de usar partition_keys depende del dialecto de la base de datos que usa tu conexión de Looker. En la versión más reciente de Looker, los siguientes dialectos admiten partition_keys:
En BigQuery, la partición se puede usar en una sola columna de la tabla, que debe ser una columna de fecha y hora, por lo que una PDT de Looker basada en una tabla de BigQuery puede usar la partición en una sola columna de fecha y hora.
| Dialecto | ¿Es compatible? |
|---|---|
| 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 |