style_distribution

Utilisation

view: my_view {
derived_table: {
distribution_style: all
...
}
}
Hiérarchie
distribution_style

- ou -

distribution_style
Valeur par défaut
Aucun

Acceptation
Un style de distribution (all ou even)
Règles spéciales
distribution_style est pris en charge uniquement sur des dialectes spécifiques

Définition

distribution_style vous permet de spécifier la manière dont la requête pour une table dérivée persistante (PDT) ou une table agrégée est distribuée entre les nœuds d'une base de données.

Reportez-vous à la section Dialecte de distribution_style ci-dessous pour obtenir la liste des dialectes disponibles : distribution_style.

Le paramètre distribution_style ne fonctionne qu'avec les tables persistantes, telles que les tables PST et les tables agrégées. distribution_style n'est pas disponible pour les tables dérivées sans stratégie de persistance.

De plus, le paramètre distribution_style n'est pas accepté pour les tables dérivées définies à l'aide de create_process ou de sql_create.

Enfin, distribution_style et distribution ne doivent pas être utilisés en même temps. Si vous souhaitez répartir les lignes d'une table entre différents nœuds Redshift en fonction d'une valeur de colonne, utilisez distribution. Sinon, utilisez distribution_style pour choisir une autre stratégie de distribution.

Redshift propose trois styles de distribution, décrits dans leur documentation :

  • Toutes les distributions : toutes les lignes sont copiées dans chaque nœud. Vous pouvez effectuer ce type de distribution dans Looker à l'aide de distribution_style: all.
  • Répartition uniforme : les lignes sont réparties entre différents nœuds de manière aléatoire. Vous pouvez effectuer ce type de distribution dans Looker à l'aide de distribution_style: even.
  • Distribution des clés:les lignes sont réparties sur différents nœuds en fonction de valeurs uniques au sein d'une colonne spécifique. Vous pouvez effectuer ce type de distribution dans Looker à l'aide du paramètre distribution.

Consultez la documentation Amazon Redshift pour choisir la stratégie de distribution appropriée. Si vous ne spécifiez pas de distribution_style et que vous n'utilisez pas le paramètre distribution, Looker utilise par défaut all.

Examples

Créez une table dérivée de customer_order_facts avec un style de distribution 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
  }
}

Langues acceptées pour distribution_style

La possibilité d'utiliser distribution_style 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 distribution_style :