symmetric_aggregates

Utilizzo

explore: explore_name {
  symmetric_aggregates: yes
}
Gerarchia
symmetric_aggregates
Valore predefinito
yes

Accetta
Un valore booleano (yes o no)

Definizione

Il parametro symmetric_aggregates determina se gli aggregati simmetrici verranno applicati o meno all'interno di un'esplorazione specifica. Quando symmetric_aggregates è attivo, le funzioni di aggregazione restituiscono risultati corretti, anche quando i join comportano un fanout. Gli aggregati simmetrici sono descritti in modo più dettagliato nella pagina delle best practice Understanding symmetric aggregates e il problema di fanout che risolvono è spiegato nel post della community The problem of SQL fanouts.

Per impostazione predefinita, gli aggregati simmetrici sono attivi per ogni esplorazione in Looker. Ciò significa che se il dialetto SQL supporta gli aggregati simmetrici, devi includere il parametro symmetric_aggregates solo se vuoi disattivare questa funzionalità per un'esplorazione.

Esempi

Attiva gli aggregati simmetrici per l'esplorazione product:

explore: product {
  symmetric_aggregates: yes  # the default value, could be excluded
}

Disattiva gli aggregati simmetrici per l'esplorazione customer:

explore: customer {
  symmetric_aggregates: no
}

Aspetti da considerare

Crea i join con attenzione quando gli aggregati simmetrici sono disattivati

Gli aggregati simmetrici proteggono alcuni calcoli dalla restituzione di risultati errati quando un join comporta un fanout. Pertanto, se il dialetto non supporta gli aggregati simmetrici o se scegli di disattivarli, dovrai prestare attenzione quando esegui i join in Looker. Questo problema e le relative soluzioni alternative sono descritti in dettaglio nel post per la community Il problema dei fanout SQL.

Non tutti i dialetti di database supportano i tipi di misurazione mediana e percentile con aggregati simmetrici

Quando gli aggregati simmetrici sono attivati, Looker converte automaticamente i tipi di misurazione percentile e median in percentile_distinct e median_distinct quando un join comporta un fanout. Non tutti i dialetti di database che supportano gli aggregati simmetrici supportano i tipi di misurazione percentile_distinct e median_distinct. Puoi verificare se il tuo dialetto di database supporta questi tipi di misurazione nella pagina della documentazione relativa ai tipi di misurazione.

Se ricevi un errore simile a SQL dialect doesn't support Symmetric Aggregates with percentiles, field ignored., significa che il tuo dialetto di database non supporta i tipi di misurazione percentile_distinct e median_distinct. Per risolvere il problema, modifica il tipo di misurazione in type: number e poi specifica la funzione di aggregazione con sql: median(${dimension}). Tuttavia, in questo modo gli aggregati simmetrici vengono disattivati.

Supporto dei dialetti per gli aggregati simmetrici

La possibilità di utilizzare gli aggregati simmetrici dipende dal dialetto di database utilizzato dalla connessione Looker. Nell'ultima release di Looker, i seguenti dialetti supportano la consapevolezza degli aggregati:

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 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