Attribution de coûts¶
Une organisation peut se faire une idée du coût d’utilisation de Snowflake en attribuant ces coûts à des unités logiques au sein de l’organisation (par exemple, des départements, des environnements et des projets). Ce modèle de rétrofacturation (chargeback) ou de récupération des données de facturation (showback) est utile à des fins comptables, mais il permet également à une organisation d’identifier les unités qui dépensent le plus. Ces informations permettent d’identifier les secteurs de l’organisation qui pourraient bénéficier de contrôles et d’optimisations afin de réduire les coûts.
Attribution de coûts de ressources individuelles¶
Le moyen le plus direct et le plus puissant d’attribuer un coût à différents groupes tels que des départements, des environnements ou des projets consiste à baliser des ressources spécifiques à l’aide de la fonction de balisage d’objets. Dans cette stratégie, un administrateur crée une balise (par exemple, cost_center
), puis définit une liste de valeurs possibles de la balise (par exemple, sales
, finance
). Dans cet exemple, chaque centre de coûts reçoit une valeur de balise unique. La combinaison balise/valeur est ensuite affectée aux ressources utilisées par un centre de coûts. Comme ces ressources consomment des crédits, vous pouvez exécuter des rapports groupés par la valeur de la balise. Comme cette valeur de balise correspond directement à un groupement particulier au sein de l’organisation, les coûts peuvent être attribués avec précision.
Le balisage d’objets vous permet d’attribuer un coût en fonction d’un élément aussi général qu’un compte ou aussi spécifique qu’un tableau. Notez que tous les objets qu’il est possible de baliser n’accumulent pas de coût. Du point de vue de la gestion des coûts, le balisage d’un objet n’a de sens que s’il existe une vue du schéma qui contient des données d’utilisation ou de coût liées à cet objet. Pour une liste des vues de l’utilisation et des coûts de Snowflake, voir Exploration du coût global.
Flux de travail d’attribution¶
L’utilisation de balises d’objet pour attribuer un coût consiste en trois tâches de base :
Concevoir une stratégie de balisage et créer les balises appropriées.
Marquer les ressources avec la bonne paire balise/valeur.
Exécuter des rapports basés sur les données d’utilisation et de balisage.
Pour illustrer ce flux de travail, considérons un compte Snowflake qui :
A deux centres de coûts : les ventes et les finances.
Possède trois entrepôts. Les ventes utilisent Entrepôt1 et Entrepôt2, tandis que le service financier utilise Entrepôt3.
Dans cet exemple, l’objectif est d’attribuer les coûts associés à chaque entrepôt au département approprié.
Note
L’exemple suivant suppose que les privilèges appropriés ont été accordés au rôle tag_admin
. Une organisation peut utiliser les autorisations de balisage granulaires pour développer une stratégie de balisage sécurisée.
- Tâche 1 : concevoir une stratégie de balisage et créer les balises appropriées
Dans cet exemple, un administrateur disposant des privilèges appropriés crée une seule balise appelée
cost_center
.USE ROLE tag_admin; USE SCHEMA my_db.my_schema; CREATE TAG cost_center;
- Tâche 2 : baliser les objets avec la bonne paire balise/valeur
L’administrateur des balises applique la paire balise/valeur appropriée aux entrepôts. Par exemple, comme le département des ventes utilise à la fois
warehouse1
etwarehouse2
, la même combinaison balise/valeur est appliquée à ces deux ressources.USE ROLE tag_admin; ALTER WAREHOUSE warehouse1 SET TAG cost_center='SALES'; ALTER WAREHOUSE warehouse2 SET TAG cost_center='SALES'; ALTER WAREHOUSE warehouse3 SET TAG cost_center='FINANCE';
Note
Si les administrateurs veulent contrôler les valeurs qui peuvent être définies sur l’objet, ils peuvent utiliser le paramètre facultatif
allowed_values
lors de la création de la balise. Pour plus de détails, voir CREATE TAG.- Tâche 3 : exécuter des rapports basés sur les données d’utilisation et de balisage.
Vous pouvez attribuer des coûts en rendant compte de l’utilisation des ressources qui ont la balise
cost_center
. Ces données sont disponibles dans Snowsight, ou en interrogeant le schémaSNOWFLAKE.ACCOUNT_USAGE
.- Snowsight:
Passer à un rôle qui a accès au schéma ACCOUNT_USAGE.
Accédez à Admin » Cost Management.
Sélectionnez Consumption.
Dans la liste déroulante Tags, sélectionnez la balise
cost_center
.Pour se concentrer sur un centre de coûts spécifique, sélectionnez une valeur dans la liste des valeurs de la balise.
Sélectionnez Apply.
Pour plus de détails sur le filtrage dans Snowsight, voir Filtrage par balise.
- SQL:
Le schéma Account Usage contient des données concernant à la fois l’utilisation des ressources et les balises du schéma. L’exécution d’une requête sur les vues de ce schéma attribue la consommation de crédit par les entrepôts au centre de coût approprié.
USE snowflake.account_usage; SELECT tag_value AS cost_center, SUM(credits_used) FROM warehouse_metering_history, tag_references WHERE warehouse_name=object_name AND tag_name='COST_CENTER' GROUP BY 1 ORDER BY 2 DESC;
La requête renvoie un rapport comme ce qui suit :
COST_CENTER
CREDITS_USED
SALES
17,173333333
FINANCE
8,14444444
Pour plus de détails sur l’utilisation des balises d’objet, voir Balisage d’objets.