Utilisation des slots BigQuery par seconde
Les données de slots au niveau de la seconde sont la granularité la plus fine disponible dans BigQuery. Utilisez cela pour déboguer en détail des fenêtres de temps spécifiques où les requêtes étaient en file d'attente ou lentes.
Pourquoi c'est important
Quand vous savez approximativement quand un problème de performance s'est produit, les données au niveau de la seconde vous permettent de reconstituer exactement ce qui s'est passé — combien de slots étaient utilisés, à quelle vitesse la demande a augmenté et combien de temps la contention a duré. C'est la requête que vous exécutez après avoir identifié une fenêtre problématique à une granularité plus grossière.
Comment ça fonctionne
Agrège period_slot_ms depuis JOBS_TIMELINE à la granularité SECONDE (en divisant par 1 000 ms). En raison du volume de données, gardez lookback_days petit (1 jour est recommandé).
Requête SQL
Fill in your details to get a ready-to-run query:
-- Per-second slot consumption for detailed burst analysis
DECLARE lookback_days INT64 DEFAULT 1; -- keep small for second-level data
WITH second_slots AS (
SELECT
period_start AS second,
ROUND(SUM(period_slot_ms) / 1000, 2) AS avg_slots
FROM `your-project`.`region-us`.INFORMATION_SCHEMA.JOBS_TIMELINE
WHERE period_start >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL lookback_days DAY)
AND statement_type != 'SCRIPT'
GROUP BY second
),
calendar AS (
SELECT ts AS second FROM UNNEST(GENERATE_TIMESTAMP_ARRAY(
TIMESTAMP_TRUNC(TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL lookback_days DAY), SECOND),
TIMESTAMP_TRUNC(CURRENT_TIMESTAMP(), SECOND),
INTERVAL 1 SECOND)) AS ts
)
SELECT
c.second,
IFNULL(s.avg_slots, 0) AS avg_slots
FROM calendar c
LEFT JOIN second_slots s ON c.second = s.second
ORDER BY c.secondExplication de la requête
Au niveau de la seconde, la requête divise period_slot_ms par 1 000 pour obtenir les slots par seconde. La série temporelle générée remplit chaque seconde. Avertissement : 1 jour = 86 400 lignes, 7 jours = 604 800 lignes — gardez la fenêtre de rétention petite.
Points clés
Les données au niveau de la seconde révèlent si la demande de slots augmente progressivement ou explose instantanément.
Si l'utilisation des slots oscille rapidement (élevée une seconde, nulle la suivante), vous avez de nombreuses requêtes de courte durée.
Une utilisation élevée soutenue de slots pendant >60 secondes indique une seule requête lourde ou un batch concurrent.
Utilisez ces données avec la requête de requêtes concurrentes pour corréler la demande de slots avec le nombre de requêtes.
Meilleures pratiques
- 1
Utilisez la granularité au niveau de la seconde uniquement pour déboguer des incidents spécifiques ciblés — pas pour la surveillance continue.
- 2
Combinez avec les données de requêtes concurrentes pour comprendre si l'utilisation élevée de slots provient de quelques requêtes lourdes ou de nombreuses légères.
- 3
Exportez vers un outil de visualisation pour créer des cartes de chaleur d'utilisation des slots.
- 4
Définissez lookback_days à 1 pour éviter de traiter des données excessives.
Voulez-vous que CloudClerk trouve ces économies automatiquement ?
Notre plateforme se connecte à votre projet BigQuery, exécute ces analyses automatiquement et fournit des recommandations d'optimisation basées sur l'IA — tout avec vos données entièrement anonymisées.
Guides associés
Utilisation des slots BigQuery par minute
Obtenez des données de consommation de slots BigQuery à la minute. Essentiel pour déboguer les problèmes de performance et comprendre les pics de demande de slots.
Lire le guideUtilisation des slots BigQuery par heure
Surveillez la consommation horaire de slots BigQuery pour identifier les fenêtres d'utilisation de pointe et optimiser votre planification de réservations.
Lire le guideUtilisation des slots BigQuery par jour
Suivez la consommation quotidienne de slots BigQuery dans le temps. Identifiez les tendances d'utilisation quotidienne pour dimensionner correctement vos réservations.
Lire le guideRequêtes BigQuery concurrentes par minute
Comptez le nombre de requêtes BigQuery s'exécutant simultanément chaque minute. Détectez les goulots d'étranglement de concurrence qui causent la mise en file d'attente.
Lire le guide