Get a free observability report to evaluate the potential savingsContact us →
استخدام الفتحات3 دقيقة قراءة

استخدام فتحات BigQuery ساعةً بساعة

يكشف استخدام الفتحات بالساعة الأنماط داخل اليوم في أحمال عمل BigQuery لديك. يُظهر هذا الاستعلام بالضبط متى تحدث ساعات الذروة والهدوء، مما يُمكّن من جدولة أذكى للحجوزات وتنسيق لخطوط الأنابيب.

لماذا يهم هذا

معظم أحمال عمل BigQuery لها أنماط ساعية يمكن التنبؤ بها — تشغيلات ETL الصباحية ونشاط المحلل في منتصف النهار ومعالجة الدُفعات المسائية. فهم هذه الأنماط يتيح لك جدولة الحجوزات لتتطابق مع الطلب وتوزيع خطوط الأنابيب لتجنّب التنافس وضبط تنبيهات ذات مغزى للاستخدام الشاذ.

كيف يعمل

مثل النسخة اليومية، يجمّع هذا الاستعلام period_slot_ms من JOBS_TIMELINE لكنه يُقطّع إلى دقة HOUR ويقسم على المللي ثانية في الساعة (3,600,000). يضمن ملء التقويم وجود نقطة بيانات لكل ساعة.

استعلام SQL

Fill in your details to get a ready-to-run query:

SQL
-- 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.hour
استبدل your-project وregion-us بمشروع GCP الخاص بك ومنطقة مجموعة البيانات.

شرح الاستعلام

نفس النهج المتبع في الاستعلام اليومي لكن بدقة الساعة. مقسم ms_per_hour هو 3,600,000. السلسلة الزمنية المولّدة تملأ الفجوات لضمان مجموعة بيانات ساعية متواصلة للتصوير البياني.

رؤى أساسية

  • lightbulb

    كثيراً ما تتزامن ساعات الذروة مع تشغيلات ETL/dbt المجدولة — وزّعها لتقليل طلب الفتحات في الذروة.

  • lightbulb

    ساعات خارج الذروة ذات استخدام شبه صفري تمثّل سعة حجوزات مهدورة في ظل التسعير بسعر ثابت.

  • lightbulb

    حدّد الساعة ذات أعلى متوسط استخدام للفتحات — هذا هو ذروتك P50 وأساس تحديد حجم Editions.

  • lightbulb

    الساعات ذات الاستخدام المتغير كثيراً للفتحات عبر الأيام تُشير إلى أعمال مخصصة تستفيد من التوسع التلقائي.

أفضل الممارسات

  1. 1

    وزّع المهام المجدولة عبر الساعات لتسطيح منحنى استخدام الفتحات.

  2. 2

    استخدم حجوزات Editions ذات التوسع التلقائي للتعامل مع الذرى الساعية دون الإفراط في التزويد.

  3. 3

    اضبط تنبيهات التكلفة الساعية لاكتشاف الاستعلامات الجامحة في اليوم ذاته.

  4. 4

    شغّل مهام الدُفعات الثقيلة خلال ساعات خارج الذروة (أواخر الليل / الصباح الباكر) عندما يكون التنافس على الفتحات في أدناه.

هل تريد من CloudClerk إيجاد هذه الوفورات تلقائياً؟

تتصل منصتنا بمشروع BigQuery الخاص بك وتُشغّل هذه التحليلات تلقائياً وتقدّم توصيات التحسين المدعومة بالذكاء الاصطناعي — مع إخفاء هوية بياناتك بالكامل.

أدلة ذات صلة