Utilizzo
derived_table: {
partition_keys: [ "created_date" ]
...
}
}
Gerarchia
partition_keys - oppure - partition_keys |
Valore predefinito
None Accetta
Uno o più nomi di colonna partizionatiRegole speciali
partition_keys è supportato solo su dialetti specifici
|
Definizione
Il parametro partition_keys
supporta i dialetti del database in grado di eseguire il partizionamento delle colonne. Quando viene eseguita una query filtrata in base a una colonna partizionata, il database esegue la scansione solo delle partizioni che includono i dati filtrati, anziché della scansione dell'intera tabella. Poiché è in corso la scansione di una sottosezione più piccola della tabella, questo può ridurre notevolmente i tempi e i costi relativi all'esecuzione di query su tabelle di grandi dimensioni quando vengono specificate la partizione e il filtro appropriati.
Il parametro
partition_keys
funziona solo con 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 concreate_process
osql_create
.
Quando crei una tabella derivata permanente (PDT) o una tabella aggregata, se la tabella di database sottostante utilizza il partizionamento, Looker può usare questo.
Consulta la sezione Assistenza di Dialetto per
partition_keys
di seguito per l'elenco dei dialetti che supportanopartition_keys
.
Per aggiungere una colonna partizionata a una PDT o a una tabella aggregata, utilizza partition_keys
e fornisci i nomi delle colonne corrispondenti che sono partizionate nella tabella del database.
Esempi
Crea una PDT customer_day_facts
in 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 customer_day_facts
basata su SQL su un database Presto con le 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 del dialetto per partition_keys
La possibilità di utilizzare partition_keys
dipende dal dialetto del database utilizzato dalla connessione di Looker. Nell'ultima release di Looker i seguenti dialetti supportano partition_keys
:
In BigQuery è possibile usare il partizionamento solo in una colonna di tabelle, che deve essere una colonna data/ora. Pertanto, una PDT di Looker basata su una tabella BigQuery può utilizzare il partizionamento di una sola colonna di data/ora.