أعلى استعلامات 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:
-- 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
...شرح الاستعلام
يُصفَّى INFORMATION_SCHEMA.JOBS_BY_PROJECT على مهام الاستعلام المكتملة ضمن نافذة الاسترجاع. يزيل ROW_NUMBER() التكرار على job_id. تُحسب التكلفة عند الطلب كـ total_bytes_billed / 1024^4 * 6.25 دولار. يُظهر عدد الفتحات التقريبي كثافة الحوسبة: total_slot_ms / execution_time_ms.
رؤى أساسية
عادةً ما تمثّل أعلى 10 استعلامات تكلفةً 50-80% من إجمالي تكاليف المشروع.
الاستعلامات التي تظهر مراراً في النتائج الأولى مرشحة للتحقيق أو التخزين المؤقت.
الاستعلامات ذات التكلفة العالية والفتحات المنخفضة تمسح الكثير من البيانات — أضف مرشّحات قسم أو اختر أعمدة أقل.
الاستعلامات ذات التكلفة العالية والفتحات العالية مقيّدة بالحوسبة — بسّط JOINs وقلّل عمليات DISTINCT أو استخدم وظائف تقريبية.
أفضل الممارسات
- 1
راجع أعلى 10 استعلامات أسبوعياً وأنشئ تذاكر تحسين لكل منها.
- 2
أضف مرشّحات القسم للقضاء على المسح الكامل للجداول المقسّمة بالوقت.
- 3
استبدل SELECT * بقوائم أعمدة صريحة لتقليل البايتات الممسوحة.
- 4
استخدم تفسير خطة استعلام BigQuery لتحديد المراحل التي تعالج أكثر البيانات.
هل تريد من CloudClerk إيجاد هذه الوفورات تلقائياً؟
تتصل منصتنا بمشروع BigQuery الخاص بك وتُشغّل هذه التحليلات تلقائياً وتقدّم توصيات التحسين المدعومة بالذكاء الاصطناعي — مع إخفاء هوية بياناتك بالكامل.
أدلة ذات صلة
أكثر استعلامات BigQuery تعقيداً
ابحث عن أكثر استعلامات BigQuery كثافةً حسابياً مرتّبةً حسب استخدام الفتحات. حدّد الاستعلامات التي تستهلك موارد حسابية غير متناسبة.
اقرأ الدليلأطول استعلامات BigQuery مدةً
ابحث عن أطول استعلامات BigQuery وقت تشغيل. حدّد الاستعلامات البطيئة التي تحجب الموارد وتؤثر على تجربة المستخدم.
اقرأ الدليلأكثر استعلامات BigQuery تكراراً
حدّد الاستعلامات الأكثر تنفيذاً في BigQuery. ابحث عن الاستعلامات المتكررة المرشحة للتخزين المؤقت أو طرق العرض المادية أو الدمج.
اقرأ الدليلتحليل تكاليف BigQuery حسب المستخدم
اكتشف أي المستخدمين يولّدون أكبر إنفاق على BigQuery. استعلم عن INFORMATION_SCHEMA لترتيب المستخدمين حسب التكلفة عند الطلب وتحديد أهداف التحسين.
اقرأ الدليل