Uso
view: my_view {
derived_table: {
sortkeys: ["date"]
...
}
}
|
Jerarquía
sortkeys- o - sortkeys |
Valor predeterminado
Ninguno
Acepta
Los nombres de una o más columnas en una PDT o una tabla de datos agregados
Reglas especiales
sortkeys solo se admite en dialectos específicos
|
Definición
El parámetro sortkeys te permite especificar una o más columnas de una tabla derivada persistente (PDT) o una tabla de datos agregados en la que se aplicará una clave de ordenamiento normal. Usa una clave de ordenamiento para especificar las columnas de una PDT que se ordenarán con mayor frecuencia para acelerar la consulta de los datos.
Consulta la sección Compatibilidad de dialectos con
sortkeyspara ver la lista de dialectos que admitesortkeys.
También puedes crear una clave de ordenamiento intercalada con indexes. No puedes usar ambas al mismo tiempo, pero se requiere al menos una.
El parámetro
sortkeyssolo funciona con tablas que son persistentes, como las PDT y las tablas de datos agregados.sortkeysno se admite para las tablas derivadas sin una estrategia de persistencia.Además, el parámetro
sortkeysno se admite para las tablas derivadas que se definen concreate_processosql_create.
En términos generales, se debe aplicar una clave de ordenamiento a las columnas de fecha o de hora de la tabla y, posiblemente, a las columnas que se usarán con frecuencia como filtros. Puedes encontrar más información en la documentación de Amazon Redshift.
Ejemplos
En estos ejemplos, se supone que trabajas con una base de datos de Redshift para que puedas usar el parámetro sortkeys.
Crea una tabla derivada nativa persistente customer_day_facts que tenga una clave de ordenamiento en date y se vuelva a compilar cuando se active el order_datagroup:
view: customer_day_facts {
derived_table: {
explore_source: order {
column: customer_id { field: order.customer_id }
column: date { field: order.order_date }
column: num_orders { field: order.customer_order_count }
}
datagroup_trigger: order_datagroup
sortkeys: ["date"]
}
}
Crea una tabla derivada customer_day_facts que se base en una consulta en SQL y tenga una clave de ordenamiento en date:
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 ;;
persist_for: "24 hours"
sortkeys: ["date"]
}
}
Crea una tabla derivada customer_day_facts que se base en una consulta en SQL con una clave de ordenamiento en date y customer_id:
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 ;;
persist_for: "24 hours"
sortkeys: ["date", "customer_id"]
}
}
Compatibilidad de dialectos con sortkeys
La capacidad de usar sortkeys 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 sortkeys:
Los dialectos de SQL tradicionales (como MySQL y Postgres) deben usar
indexes;sortkeysno funcionará con estas bases de datos.
| 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.x - 0.17.x | |
| 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 AlloyDB for PostgreSQL | |
| 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 | |
| MongoSQL | |
| 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 |