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

أعلى استعلامات BigQuery تكلفةً

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

لماذا يهم هذا

في معظم مشاريع BigQuery، ينطبق مبدأ باريتو: 20% من الاستعلامات تمثّل 80% من التكاليف. إيجاد هذه الاستعلامات الأولى وتحسينها يمنح أعلى عائد على الاستثمار. بدون هذه الرؤية، تضيع الفرق وقتها في تحسين استعلامات لا تحرّك الإبرة إلا قليلاً.

كيف يعمل

يقرأ الاستعلام بيانات وصفية للمهام من INFORMATION_SCHEMA.JOBS_BY_PROJECT ويزيل التكرار بـ job_id ويرتّب حسب التكلفة عند الطلب تنازلياً. تُقدَّر التكلفة من total_bytes_billed بـ 6.25 دولار/TiB. كما يحسب الاستخدام التقريبي للفتحات لكل استعلام.

استعلام SQL

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

SQL
-- Most expensive queries ranked by on-demand cost

DECLARE lookback_days INT64 DEFAULT 14;

WITH jobs AS (
  SELECT
    user_email,
    query,
    job_id,
    project_id,
    start_time,
    end_time,
    COALESCE(total_bytes_billed, 0) AS bytes_billed,
    total_slot_ms,
    ROW_NUMBER() OVER (PARTITION BY job_id ORDER BY end_time DESC) AS rn
  FROM `your-project`.`region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
  WHERE creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL lookback_days DAY)
    AND job_type = 'QUERY' AND state = 'DONE' AND total_slot_ms IS NOT NULL
)
SELECT
  user_email,
  query,
  project_id,
  start_time,
  end_time,
  ROUND(bytes_billed / POW(1024, 4), 4) AS tib_scanned,
  ROUND(bytes_billed / POW(1024, 4) * 6.25, 2) AS on_demand_cost_usd,
  ROUND(SAFE_DIVIDE(total_slot_ms,
    TIMESTAMP_DIFF(end_time, start_time, MILLISECOND)), 0) AS avg_slots
FROM jobs
...
استبدل your-project وregion-us بمشروع GCP الخاص بك ومنطقة مجموعة البيانات.

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

يُصفَّى INFORMATION_SCHEMA.JOBS_BY_PROJECT على مهام الاستعلام المكتملة ضمن نافذة الاسترجاع. يزيل ROW_NUMBER() التكرار على job_id. تُحسب التكلفة عند الطلب كـ total_bytes_billed / 1024^4 * 6.25 دولار. يُظهر عدد الفتحات التقريبي كثافة الحوسبة: total_slot_ms / execution_time_ms.

رؤى أساسية

  • lightbulb

    عادةً ما تمثّل أعلى 10 استعلامات تكلفةً 50-80% من إجمالي تكاليف المشروع.

  • lightbulb

    الاستعلامات التي تظهر مراراً في النتائج الأولى مرشحة للتحقيق أو التخزين المؤقت.

  • lightbulb

    الاستعلامات ذات التكلفة العالية والفتحات المنخفضة تمسح الكثير من البيانات — أضف مرشّحات قسم أو اختر أعمدة أقل.

  • lightbulb

    الاستعلامات ذات التكلفة العالية والفتحات العالية مقيّدة بالحوسبة — بسّط JOINs وقلّل عمليات DISTINCT أو استخدم وظائف تقريبية.

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

  1. 1

    راجع أعلى 10 استعلامات أسبوعياً وأنشئ تذاكر تحسين لكل منها.

  2. 2

    أضف مرشّحات القسم للقضاء على المسح الكامل للجداول المقسّمة بالوقت.

  3. 3

    استبدل SELECT * بقوائم أعمدة صريحة لتقليل البايتات الممسوحة.

  4. 4

    استخدم تفسير خطة استعلام BigQuery لتحديد المراحل التي تعالج أكثر البيانات.

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

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

أدلة ذات صلة