Aller au contenu
Anatomie d'une facture cloudLecture : 0 %

Anatomie d'une facture cloud

L'ordre dans lequel lire une facture cloud, ce que cache chaque famille de lignes, et comment la ramener à un coût par tenant pour décider quoi optimiser, et quoi laisser tranquille.

Par Elias Varen7 min de lectureMembres

Le total de la facture ne sert à rien. Il monte, quelqu'un s'en inquiète, on cherche « ce qui coûte cher », on trouve le calcul en tête de liste, on réduit deux instances, et le mois suivant le total a encore monté. Une facture se lit plutôt comme un plan d'exécution, en cherchant où part le travail inutile au lieu de la parcourir de haut en bas. Et comme un plan d'exécution, elle décrit votre architecture réelle plus honnêtement que n'importe quel schéma, y compris les parties que tout le monde a oubliées.

Interroger l'export détaillé

La console du fournisseur agrège par service, ce qui en fait la vue la moins utile. « Calcul : 41 % » ne dit ni quel système, ni quelle équipe, ni quel usage. L'export détaillé donne une ligne par ressource, par type d'usage et par jour, et il s'interroge directement.

SQL
-- DuckDB sur l'export détaillé ; adapter les noms de colonnes au fournisseur
SELECT service,
       usage_type,
       coalesce(tag_service, '(non étiqueté)')             AS proprietaire,
       round(sum(cost), 2)                                 AS cout,
       round(100 * sum(cost) / sum(sum(cost)) OVER (), 1)  AS part_pct
FROM read_parquet('factures/2026-09/*.parquet')
GROUP BY ALL
ORDER BY cout DESC
LIMIT 30;

Trente lignes suffisent presque toujours à couvrir l'essentiel du montant. La colonne usage_type est celle qui compte, parce qu'elle distingue, dans un même service, l'heure d'instance, le gigaoctet stocké, la requête, le gigaoctet transféré. Les surprises se logent là.

La première lecture porte sur la ligne « non étiqueté », dont la part mesure ce que vous ne savez pas attribuer. Au-delà d'un quart de la facture, toute optimisation est un tir à l'aveugle, et le premier chantier est l'étiquetage.

Les familles de lignes, et ce que chacune cache

Le calcul. Le prix affiché est celui d'une machine allumée, qu'elle travaille ou non. Le coût par unité utile est le prix divisé par le taux d'utilisation ; une instance à 20 % de CPU moyen coûte cinq fois son tarif par unité de travail réellement fournie. Deuxième fuite, les environnements hors production allumés en permanence. Une semaine compte 168 heures, une équipe en travaille une cinquantaine, et éteindre la préproduction la nuit et le week-end retire 70 % de sa ligne.

Anatomie d'une facture cloud · Deepstack