Diffusion interne

Scan de sortie : BigQuery

Constat du 17/10/2026 à 10:00 UTC · données en retard de 0,1 h au plus selon les vues · édition : non déterminée · Canot 0.1.0

DSI

9 tables présentes (5 Go) et 11 objets à reconstruire hors tables. Mouvement : 2 figée(s), 7 vivante(s), 0 recréée(s), 0 non déterminée(s). Rejouabilité : 1/2 familles acceptées par DuckDB ; accepté ≠ résultat identique.

DAF

Mesuré sur 180 jours : 3,8 To facturés à la demande, 820,5 slot-heures en réservé ; les deux ne s'additionnent pas. À la demande, fourchette catalogue : 0,00 à 21,88 $ ; réservé, non estimé : prix de votre contrat non lu. Historique facturé qui ne part pas avec la copie : 250 Mo sur 1 table (F06, F07).

RSSI

2 tables ou politiques à reconstruire côté sécurité (F10) ; la copie demande un principal non filtré. 3 dépendances externes (F01, F02), 2 écritures hors de la plateforme (F03), 1 partage avec consommateurs externes (F09). Rôles propriétaires (F04) : sans objet sur BigQuery, où les droits sont portés par les datasets et les tables.

Périmètre

Capacités

Ce rapport est un inventaire : inventorié, ni exporté ni rejoué.

NiveauCe rapportCanot sur BigQuery
Inventairefait par ce scan (niveau 2)complet, niveaux 1 à 3
Exportnon fait par ce scaniceberg, avec canot drill
Preuvenon faite par ce scanP1 parité des données ; P2 rejeu de requêtes, avec canot drill

Connecteur BigQuery : testé ; test consigné : canot drill, 13/10/2026 : jeu public thelook_ecommerce (docs/ecarts.md).

Ce que Canot ne peut pas prouver ici : les formes déclarées (P1, P2) portent sur les tables et les requêtes ; les objets à reconstruire hors tables sont comptés, pas prouvés.

Coûts observés

Fenêtre : 180 jours. À la demande et réservé : deux modes de facturation, jamais additionnés.

À la demande

PosteValeurNature et base
Octets facturés3,8 Tomesuré · B10, B11, B12
Requêtes1 200 requêtesmesuré · B10, B11, B12
En dollars0,00 $ à 21,88 $
  • prix catalogue à la demande du 17/10/2026 : 6,25 $ par Tio (tarif US ; région à confirmer), https://cloud.google.com/bigquery/pricing
  • haut : aucun palier gratuit déduit ; bas : 1 Tio gratuit par mois touché par la fenêtre ; le palier gratuit est partagé par le compte de facturation, il n'est pas imputable par projet
  • prix de votre contrat non lu
  • octets facturés NULL pour les requêtes sur tables à politique de lignes : non comptés
estimé, confiance basse · B10, B11, B12
Tio facturés × prix catalogue, palier gratuit déduit ou non

Réservé

PosteValeurNature et base
Slot-heures820,5 slot-heuresmesuré · B10, B11, B12
Requêtes300 requêtesmesuré · B10, B11, B12
En dollarsNon estimé : prix de votre contrat non lu.non estimé

À la demande et réservé ne s'additionnent pas : deux modes de facturation, deux bases.

Stockage

PosteValeurNature et base
Stockage moyen facturéNon lu : non transmis par la collecte.non lu
Stockage en dollarsNon estimé : prix de votre contrat non lu.non estimé

Mouvements

2 figée(s), 7 vivante(s), 0 recréée(s), 0 non déterminée(s).

recréée : DDL de moins de 7 jours sans écriture postérieure ; vivante : écriture de moins de 30 jours ; figée : dernière écriture plus ancienne ; non déterminée : écritures non lues. Base : B03, B04, B05, B07, B10, B11 ….

TableTypeVolumeMouvementPreuve
lab-a.archive.archive_2023TABLE3 Gofigéedernière écriture le 01/03/2025
lab-a.raw.ordersTABLE900 Movivantedernière écriture le 15/10/2026
lab-a.raw.read_by_api_onlyTABLE700 Mofigéedernière écriture le 01/09/2026
lab-a.raw.customersTABLE200 Movivantedernière écriture le 15/10/2026
lab-a.raw.events_20261001TABLE120 Movivantedernière écriture le 15/10/2026
lab-a._tmp.scratchTABLE50 Movivantedernière écriture le 15/10/2026
lab-a.raw.orders_snapSNAPSHOT10 Movivantedernière écriture le 15/10/2026
lab-a.ext.gcs_eventsEXTERNEnon luvivantedernière écriture le 15/10/2026
lab-a.ext.sheet_targetsEXTERNEnon luvivantedernière écriture le 15/10/2026

Ce qui ne part pas avec la copie

Objets à reconstruire ou à décrire

TypeNombreExemples
fonction1lab-a.mart.js_clean
modèle ML1lab-a.ml.churn
partage1lab-a.hub.listing_sales
politique de lignes1lab-a.raw.rap_country
procédure1lab-a.mart.sp_rebuild
requête planifiée4lab-a.sq_daily_kpi, lab-a.sq_export, lab-a.sq_old, lab-a.sq_weekly
vue2lab-a.mart.v_legacy, lab-a.mart.v_sheet
vue matérialisée1lab-a.mart.mv_daily

Routines par langage : JAVASCRIPT 1, SQL 1.

Colonnes à type propre à la plateforme (3)

TableColonneType
lab-a.raw.customersgeoGEOGRAPHY
lab-a.raw.events_20261001payloadJSON
lab-a.raw.events_20261001ctxSTRUCT<a INT64, b STRING>

Historique facturé

PosteValeurNature et base
Time Travel et Fail-safe (1 table)250 Mocalculé · B07
Time Travel + Fail-safe des tables présentes, + octets encore facturés des tables supprimées

Dépendances

Dépendances externes (F01)

ObjetTypeEmplacement
lab-a.ext.gcs_eventstablegs://lab-bucket
lab-a.ext.sheet_targetstabledocs.google.com

Dépendances externes cachées (F02)

ObjetCheminEmplacement
lab-a.mart.v_sheetlab-a.mart.v_sheet → lab-a.ext.sheet_targetsdocs.google.com

Écritures hors de la plateforme (F03)

SourceModeDestination
famille 333333333333observégs://lab-exports
objet lab-a.sq_exportdéclarégs://lab-exports

Consommateurs externes (F09)

PartageComptes
lab-a.hub.listing_sales1

Outils vus dans les requêtes

OutilFamillesExécutions
looker1900
scheduled_query1180
notebook140

Rejouabilité des requêtes

CatégorieSignificationFamillesExécutionsPoids
C0traduit et accepté par DuckDB19002 To
C1non analysable000 o
C2commande, non analysée000 o
C3traduction impossible000 o
C4erreur d'analyse DuckDB140500 Go
C5erreur de liaison (objet ou fonction propre)000 o
C6variable000 o
C7DDL, COPY, MERGE, requêtes de métadonnées : comptés à part118010 Go
PosteValeurNature et base
Taux C0, par familles50,0 %calculé · B10, B11, B12
C0 ÷ C0 à C6, en familles ; C7 compté à part
Taux C0, par exécutions95,7 %calculé · B10, B11, B12
C0 ÷ C0 à C6, en exécutions ; C7 compté à part
Taux C0, pondéré80,0 %calculé · B10, B11, B12
C0 ÷ C0 à C6, en octets ; C7 compté à part

Base : 3/3 familles, du 20/04/2026 au 17/10/2026, sqlglot 30.22.0, duckdb 1.5.6.

accepté ≠ résultat identique. Traduit vers DuckDB, non comparé.

Familles les plus exécutées (formes normalisées)

CatégorieExécutionsOutilForme normalisée
C0900lookerSELECT * FROM `lab-a.raw.orders` WHERE d >= ?
C7180scheduled_queryEXPORT DATA OPTIONS (uri = ?, format = ?) AS SELECT * FROM `lab-a.mart.kpi`
C440notebookSELECT * FROM `lab-a.raw.events_*` WHERE _TABLE_SUFFIX = ?

Fourchettes

Estimations de planification : chaque fourchette porte ses hypothèses. Un canot drill remplace le débit supposé par la mesure.

PosteValeurNature et base
Volume à copier5 Go
  • octets actifs des tables présentes, hors tables externes et temporaires
calculé · B07
somme des octets actifs
Durée de lecture de la copie1 min à 4 min
  • débit supposé de 20 à 80 Mo/s, remplacé par la mesure d'un canot drill
estimé, confiance basse · B07
volume ÷ débit supposé
Coût de lecture de la copieNon estimé : prix de votre contrat non lu.
  • lecture par l'API Storage Read, facturée par Tio lu, et sortie réseau hors de Google Cloud
non estimé
Travail de reprise3,0 j à 18,0 j
  • 11 objets à reconstruire et 3 colonnes à type propre à la plateforme
  • hypothèses de q4o : 0,25 à 1,5 jour par objet, 0,1 à 0,5 par colonne, à discuter
estimé, confiance basse · B13, B19, B20
objets × jours par objet + colonnes × jours par colonne

Constats

Chaque constat est étiqueté « À examiner », sans niveau de gravité. Il dit ce qui est observé et ce qui ne l'est pas.

F01 · Dépendance externeÀ examiner

2 constats

CibleObservé
table lab-a.ext.gcs_eventsTable externe : données hors de la plateforme (gs://lab-bucket).
table lab-a.ext.sheet_targetsTable externe : données hors de la plateforme (docs.google.com).

F02 · Dépendance externe cachéeÀ examiner

1 constat

CibleObservé
objet lab-a.mart.v_sheetDépend de lab-a.ext.sheet_targets, hors de la plateforme, par 1 niveau : lab-a.mart.v_sheet → lab-a.ext.sheet_targets (docs.google.com).

F03 · Écriture hors de la plateformeÀ examiner

2 constats

CibleObservé
famille 333333333333Écriture hors de la plateforme observée : 180 exécutions (scheduled_query) ; destination : gs://lab-exports.
objet lab-a.sq_exportRequête planifiée qui écrit hors de la plateforme (déclaré dans sa définition) ; destination : gs://lab-exports.

F05 · Stockage sans lecture observéeÀ examiner

2 constats

CibleObservé
table lab-a.archive.archive_20233 Go stockés. Aucune lecture observée dans INFORMATION_SCHEMA.JOBS du 20/04/2026 au 17/10/2026 ; non vus : lectures par l'API Storage Read, requêtes lancées depuis d'autres projets, consommateurs Analytics Hub.
table lab-a.raw.read_by_api_only700 Mo stockés. Aucune lecture observée dans INFORMATION_SCHEMA.JOBS du 20/04/2026 au 17/10/2026 ; non vus : lectures par l'API Storage Read, requêtes lancées depuis d'autres projets, consommateurs Analytics Hub.

F06 · Historique payé non transférableÀ examiner

1 constat

CibleObservé
table lab-a.raw.orders250 Mo d'historique facturé (Time Travel et Fail-safe), rétention 7 jours, pour 900 Mo actifs ; cet historique ne part pas avec la copie.

F08 · SQL dynamiqueÀ examiner

1 constat

CibleObservé
objet lab-a.mart.sp_rebuildProcédure en SQL : construit du SQL à l'exécution ; les objets touchés ne se lisent pas dans le code.

F09 · Consommateurs externesÀ examiner

1 constat

CibleObservé
objet lab-a.hub.listing_salesPartage vers 1 abonné ; 1 objet partagé. Les lectures des consommateurs ne sont pas vues par ce scan.

F10 · Sécurité à reconstruireÀ examiner

2 constats

CibleObservé
objet lab-a.raw.rap_countryPolitique de lignes appliquée à 1 objet ; elle ne part pas avec la copie ; la copie demande un principal non filtré.
table lab-a.raw.customersPolitiques : pt-pii, rap_country. Elles ne partent pas avec la copie ; la copie demande un principal non filtré par ces politiques.

F11 · Chaîne planifiée et ses échecsÀ examiner

4 constats

CibleObservé
objet lab-a.sq_daily_kpiRequête planifiée, planification every 24 hours, état actif ; 180 exécutions, 3 échecs, dernière le 17/10/2026.
objet lab-a.sq_exportRequête planifiée, planification every day 05:00, état actif ; 180 exécutions, 0 échec.
objet lab-a.sq_oldRequête planifiée, planification every 1 hours, état désactivée ; 0 exécution, 0 échec.
objet lab-a.sq_weeklyRequête planifiée, planification every monday 06:00, état actif ; 26 exécutions, 0 échec.

F12 · Lecture incomplèteÀ examiner

3 constats

CibleObservé
lecture B15API connections.list non lue (droit absent) ; limite : connexions externes (F01).
lecture B18`region-eu`.INFORMATION_SCHEMA.RESERVATIONS non lue (niveau de droits non demandé) ; limite : capacité réservée.
lecture B22`region-eu`.INFORMATION_SCHEMA.JOBS_BY_ORGANIZATION non lue (niveau de droits non demandé) ; limite : requêtes lancées depuis d'autres projets.

Aucun constat pour : F04, F07. Une absence de constat ne vaut que pour les lectures faites (voir F12 et la méthode).

Ce que ce rapport ne chiffre pas

Méthode

18 lectures lues sur 22. Chaque lecture est consignée avec son statut et sa raison ; une valeur non lue reste vide, jamais 0.

IdVueStatutRaisonLignesFenêtreLatence
B06`region-eu`.INFORMATION_SCHEMA.TABLE_STORAGEnon luabsent ou non exposé ; limite : aucune : tables.get lue à la placenon lu
B15API connections.listnon ludroit absent ; limite : connexions externes (F01)non lu
B18`region-eu`.INFORMATION_SCHEMA.RESERVATIONSnon luniveau de droits non demandé ; limite : capacité réservéenon lu
B22`region-eu`.INFORMATION_SCHEMA.JOBS_BY_ORGANIZATIONnon luniveau de droits non demandé ; limite : requêtes lancées depuis d'autres projetsnon lu
B01API datasets.listlu10
B02API datasets.getlu10
B03`region-eu`.INFORMATION_SCHEMA.TABLESlu10
B04`region-europe-west1`.INFORMATION_SCHEMA.TABLESlu10
B05`region-us`.INFORMATION_SCHEMA.TABLESlu10
B07API tables.getlu10
B08`region-eu`.INFORMATION_SCHEMA.TABLE_OPTIONSlu10
B09`region-eu`.INFORMATION_SCHEMA.COLUMN_FIELD_PATHSlu10
B10`region-eu`.INFORMATION_SCHEMA.JOBSlu10du 20/04/2026 au 17/10/20260,1 h
B11`region-europe-west1`.INFORMATION_SCHEMA.JOBSlu10du 20/04/2026 au 17/10/20260,1 h
B12`region-us`.INFORMATION_SCHEMA.JOBSlu10du 20/04/2026 au 17/10/20260,1 h
B13API transferConfigs.listlu10
B14API rowAccessPolicies.listlu10
B16`region-eu`.INFORMATION_SCHEMA.SCHEMATA_LINKSlu10
B17`region-eu`.INFORMATION_SCHEMA.SHARED_DATASET_USAGElu10
B19`region-eu`.INFORMATION_SCHEMA.ROUTINESlu10

… et 2 autres dans lectures.csv.

Droits utilisés

Niveau 2 : bigquery.jobs.create, jobs.listAll, datasets.get, tables.list, tables.get, routines.list, routines.get, models.list, models.getMetadata, rowAccessPolicies.list, transfers.get, connections.list, dataPolicies.list (optionnelles). Jamais demandés : tables.getData, rôles bigquery.user et jobUser.

Coût du scan

PosteValeurNature et base
Requêtes émises20 requêtes
  • une lecture = une requête
calculé · B01, B02, B03, B04, B05, B06 …
lectures tentées, lues ou refusées par la plateforme
Durée de lectureNon lu : durée non transmise par la collecte.non lu

Garde-fous

Règles

Suite

Ce rapport décrit votre plateforme ; il ne recommande ni de partir ni de rester.

Pour mesurer une sortie sur un périmètre choisi : canot drill copie vers Apache Iceberg, compare source et copie, et signe un dossier de preuve.

Pour aller plus loin, le diagnostic q4o, dès 22 000 € HT : tarif de votre contrat, exécution réelle, scénarios, marche à suivre. canot.io