Utilizzo
view: my_view {
derived_table: {
distribution_style: all
...
}
}
|
Gerarchia
distribution_style- o - distribution_style |
Valore predefinito
Nessuno
Accetta
Uno stile di distribuzione (all o even)
Regole speciali
distribution_style è supportato solo in dialetti specifici
|
Definizione
distribution_style ti consente di specificare come la query per una tabella derivata persistente (PDT) o una tabella aggregata viene distribuita tra i nodi di un database.
Consulta la sezione Supporto dei dialetti per
distribution_styleper l'elenco dei dialetti che supportanodistribution_style.
Il parametro
distribution_stylefunziona solo con le tabelle persistenti, come le PDT e le tabelle aggregate.distribution_stylenon è supportato per le tabelle derivate senza una strategia di persistenza.
Inoltre, il parametro
distribution_stylenon è supportato per le tabelle derivate definite utilizzandocreate_processosql_create.Infine,
distribution_styleedistributionnon devono essere utilizzati contemporaneamente. Se vuoi distribuire le righe di una tabella a nodi Redshift diversi in base al valore di una colonna, utilizzadistribution. In caso contrario, utilizzadistribution_styleper scegliere una strategia di distribuzione diversa.
Redshift offre quattro stili di distribuzione, descritti nella documentazione di Amazon Redshift sugli stili di distribuzione:
- ALL Distribution:tutte le righe vengono copiate completamente in ogni nodo. Puoi ottenere questo tipo di distribuzione in Looker utilizzando
distribution_style: all. - Distribuzione EVEN:le righe vengono distribuite a nodi diversi in modo round robin. Puoi ottenere questo tipo di distribuzione in Looker utilizzando
distribution_style: even. - Distribuzione KEY:le righe vengono distribuite a nodi diversi in base ai valori univoci all'interno di una determinata colonna. Puoi ottenere questo tipo di distribuzione in Looker utilizzando il parametro
distribution. - AUTO Distribution Redshift assegna uno stile di distribuzione ottimale in base alle dimensioni dei dati della tabella. Looker non supporta questo tipo di distribuzione.
Per scegliere la strategia di distribuzione appropriata, consulta la documentazione di Amazon Redshift sugli stili di distribuzione. Se non specifichi un distribution_style e non utilizzi il parametro distribution, Looker utilizzerà all per impostazione predefinita.
Esempi
Crea una tabella derivata customer_order_facts con uno stile di distribuzione all:
view: customer_order_facts {
derived_table: {
sql:
SELECT
customer_id,
COUNT(*) AS lifetime_orders
FROM
order
GROUP BY 1 ;;
persist_for: "24 hours"
distribution_style: all
}
}
Supporto dei dialetti per distribution_style
La possibilità di utilizzare distribution_style dipende dal dialetto del database utilizzato dalla connessione Looker. Nell'ultima release di Looker, i seguenti dialetti supportano distribution_style:
| 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+ | |
| 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 |