partition_keys

Utilizzo

view: view_name {
  derived_table: {
    partition_keys: [ "created_date" ]
    ...
  }
}
Gerarchia
partition_keys

- oppure -

partition_keys
Valore predefinito
None

Accetta
Uno o più nomi di colonne partizionate

Regole speciali
partition_keys è supportato solo su dialetti specifici

Definizione

Il parametro partition_keys supporta i dialetti di database che hanno la possibilità di partizionare le colonne. Quando viene eseguita una query filtrata su una colonna partizionata, il database esegue la scansione solo delle partizioni che includono i dati filtrati, anziché dell'intera tabella. Poiché viene eseguita la scansione di una sottosezione più piccola della tabella, è possibile ridurre significativamente il tempo e il costo delle query sulle tabelle di grandi dimensioni quando vengono specificate la partizione e il filtro appropriati.

Il parametro partition_keys funziona solo con le tabelle persistenti, come le PDT e le tabelle aggregate. partition_keys non è supportato per le tabelle derivate senza una strategia di persistenza.

Inoltre, il parametro partition_keys non è supportato per le tabelle derivate definite utilizzando create_process o sql_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.

Per un elenco dei dialetti che supportano partition_keys, consulta la sezione Supporto dei dialetti per partition_keys.

Per aggiungere una colonna partizionata a una PDT o a una tabella aggregata, utilizza partition_keys e fornisci i nomi delle colonne corrispondenti partizionate nella tabella del database.

Esempi

Crea una PDT customer_day_facts su un database BigQuery con una chiave di partizionamento 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 su un database Presto con chiavi di partizionamento 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. Pertanto, una PDT 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.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