Uso
view: my_view {
derived_table: {
distribution_style: all
...
}
}
|
Hierarquia
distribution_style- ou - distribution_style |
Valor padrão
Nenhum
Aceita
Um estilo de distribuição (all ou even)
Regras especiais
distribution_style é compatível apenas com dialetos específicos
|
Definição
distribution_style permite especificar como a consulta de uma tabela derivada persistente (PDT, na sigla em inglês) ou uma tabela de agregação é distribuída entre os nós em um banco de dados.
Consulte a seção Suporte a dialetos para
distribution_stylepara conferir a lista de dialetos que oferecem suporte adistribution_style.
O parâmetro
distribution_stylefunciona apenas com tabelas que são persistentes, como PDTs e tabelas agregadas.distribution_stylenão é compatível com tabelas derivadas sem uma estratégia de persistência.
Além disso, o parâmetro
distribution_stylenão é compatível com tabelas derivadas definidas usandocreate_processousql_create.Por fim,
distribution_styleedistributionnão podem ser usados ao mesmo tempo. Se você quiser distribuir as linhas de uma tabela para diferentes nós do Redshift com base em um valor de coluna, usedistribution. Caso contrário, usedistribution_stylepara escolher uma estratégia de distribuição diferente.
O Redshift oferece quatro estilos de distribuição, que são descritos na documentação do Amazon Redshift sobre estilos de distribuição:
- Distribuição ALL:todas as linhas são totalmente copiadas para cada nó. É possível realizar esse tipo de distribuição no Looker usando
distribution_style: all. - Distribuição EVEN:as linhas são distribuídas para diferentes nós de maneira round-robin. É possível realizar esse tipo de distribuição no Looker usando
distribution_style: even. - Distribuição KEY:as linhas são distribuídas para diferentes nós com base em valores exclusivos em uma coluna específica. É possível realizar esse tipo de distribuição no Looker usando o
distributionparâmetro. - Distribuição AUTO : o Redshift atribui um estilo de distribuição ideal com base no tamanho dos dados da tabela. O Looker não oferece suporte a esse tipo de distribuição.
Consulte a documentação do Amazon Redshift sobre estilos de distribuição para escolher a estratégia de distribuição adequada. Se você não especificar um distribution_style e não usar o parâmetro distribution, o Looker vai usar all como padrão.
Exemplos
Crie uma tabela derivada customer_order_facts com um estilo de distribuição 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
}
}
Suporte a dialetos para distribution_style
A capacidade de usar distribution_style depende do dialeto do banco de dados que sua conexão do Looker está usando. Na versão mais recente do Looker, os seguintes dialetos oferecem suporte a distribution_style:
| Dialeto | Compatível? |
|---|---|
| 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 | |
| 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 |