agrégations symétriques

Utilisation

explorer: explore_name {
symmetric_aggregates: yes
}
Hiérarchie
symmetric_aggregates
Valeur par défaut
yes

Acceptation
Une valeur booléenne (yes ou no)

Définition

Le paramètre symmetric_aggregates détermine si les agrégations symétriques seront ou non appliquées dans une exploration donnée. Lorsque symmetric_aggregates est activé, les fonctions d'agrégation renvoient les résultats corrects, même lorsque les jointures génèrent une distribution ramifiée. Les agrégations symétriques sont décrites plus en détail dans l'article du centre d'aide intitulé Une explication simple sur les agrégations symétriques, et le problème qu'elles résolvent est explicatif dans l'article Résoudre les problèmes de distribution SQL.

Par défaut, les agrégations symétriques sont activées pour chaque exploration dans Looker. Cela signifie que si votre dialecte SQL accepte les agrégations symétriques, vous ne devez inclure le paramètre symmetric_aggregates que si vous souhaitez désactiver cette fonctionnalité pour une exploration.

Examples

Activez les agrégations symétriques pour la fonctionnalité Explorer de product:

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

-

Désactivez les agrégations symétriques pour la fonctionnalité Explorer de customer:

explore: customer {
  symmetric_aggregates: no
}

-

Éléments à prendre en compte

Créer des jointures avec précaution lorsque les agrégations symétriques sont désactivées

Les agrégats symétriques empêchent certains calculs de fournir des résultats incorrects lorsqu'une jointure entraîne une distribution ramifiée. Par conséquent, si votre dialecte ne prend pas en charge les agrégations symétriques, ou si vous choisissez de les désactiver, vous devez faire attention lorsque vous exécutez des jointures dans Looker. Ce problème et les solutions de contournement associées sont décrits en détail dans l'article du centre d'aide intitulé Le problème des fans SQL.

Tous les dialectes de base de données ne sont pas compatibles avec les types de mesure médiane et de centile avec des agrégats symétriques

Lorsque les agrégations symétriques sont activées, Looker convertit automatiquement les types de mesure percentile et median en percentile_distinct et median_distinct lorsqu'une jointure implique un fan-out. Les dialectes de base de données compatibles avec les agrégations symétriques ne sont pas tous compatibles avec les types de mesure percentile_distinct et median_distinct. Pour savoir si le dialecte de votre base de données est compatible avec les types de mesures percentile_distinct et median_distinct, consultez la page de documentation sur Types de mesures.

Si vous recevez une erreur semblable à SQL dialect doesn't support Symmetric Aggregates with percentiles, field ignored., cela signifie que le dialecte de votre base de données n'est pas compatible avec les types de mesure percentile_distinct et median_distinct. Pour contourner ce problème, définissez le type de mesure sur type: number, puis spécifiez la fonction d'agrégation avec sql: median(${dimension}). Toutefois, cela désactive les agrégations symétriques.

Compatibilité par dialecte pour les agrégats symétriques

La possibilité d'utiliser des agrégations symétriques dépend du dialecte de la base de données utilisé par votre connexion Looker. Dans la dernière version de Looker, les dialectes suivants sont compatibles avec la notoriété globale: