Utilisation des slots BigQuery par heure
L'utilisation horaire des slots révèle les modèles intra-journaliers de vos charges BigQuery. Cette requête vous montre exactement quand se produisent vos heures de pointe et creuses, permettant une planification plus intelligente des réservations et de l'orchestration des pipelines.
Pourquoi c'est important
La plupart des charges BigQuery ont des modèles horaires prévisibles — exécutions ETL matinales, activité analytique en milieu de journée, traitement par lots en soirée. Comprendre ces modèles vous permet de planifier les réservations pour correspondre à la demande, de décaler les pipelines pour éviter la contention et de définir des alertes significatives pour une utilisation anormale.
Comment ça fonctionne
Comme la version quotidienne, cette requête agrège period_slot_ms depuis JOBS_TIMELINE, mais tronque à la granularité HEURE et divise par les millisecondes par heure (3 600 000). Le remplissage du calendrier garantit que chaque heure a un point de données.
Requête SQL
Fill in your details to get a ready-to-run query:
-- Average slot consumption per hour (zero-filled time series)
DECLARE lookback_days INT64 DEFAULT 7;
DECLARE ms_per_hour INT64 DEFAULT 3600000;
WITH hourly_slots AS (
SELECT
TIMESTAMP_TRUNC(period_start, HOUR) AS hour,
ROUND(SUM(period_slot_ms) / ms_per_hour, 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 hour
),
calendar AS (
SELECT ts AS hour FROM UNNEST(GENERATE_TIMESTAMP_ARRAY(
TIMESTAMP_TRUNC(TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL lookback_days DAY), HOUR),
TIMESTAMP_TRUNC(CURRENT_TIMESTAMP(), HOUR),
INTERVAL 1 HOUR)) AS ts
)
SELECT
c.hour,
IFNULL(h.avg_slots, 0) AS avg_slots
FROM calendar c
LEFT JOIN hourly_slots h ON c.hour = h.hour
ORDER BY c.hourExplication de la requête
Même approche que la requête quotidienne mais à la granularité horaire. Le diviseur ms_per_hour est 3 600 000. La série temporelle générée remplit les lacunes assurant un ensemble de données horaire continu pour la visualisation.
Points clés
Les heures de pointe coïncident souvent avec les exécutions ETL/dbt planifiées — décalez-les pour réduire la demande de slots en pointe.
Les heures creuses avec une utilisation quasi nulle représentent une capacité de réservation gaspillée sous la tarification forfaitaire.
Identifiez l'heure avec la plus haute utilisation moyenne de slots — c'est votre pic P50 et la base du dimensionnement Editions.
Les heures avec une utilisation de slots très variable selon les jours suggèrent des charges ad hoc qui bénéficient de l'autoscaling.
Meilleures pratiques
- 1
Décalez les jobs planifiés sur les heures pour aplatir la courbe d'utilisation des slots.
- 2
Utilisez des réservations Editions avec autoscaling pour gérer les pics horaires sans sur-provisionner.
- 3
Configurez des alertes de coût horaires pour détecter les requêtes incontrôlables dans la même journée de travail.
- 4
Exécutez les gros jobs par lots pendant les heures creuses (nuit / début de matinée) quand la contention de slots est la plus faible.
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 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 guideUtilisation 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 seconde
Consommation de slots BigQuery au niveau de la seconde pour une analyse détaillée des pics. La granularité la plus fine disponible pour le débogage des performances.
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