تحليل تكاليف BigQuery حسب التسمية
تتيح لك تسميات مهام BigQuery وضع علامات على الاستعلامات ببيانات وصفية من مفتاح وقيمة — أسماء الفرق ومعرّفات خطوط الأنابيب وعلامات الميزات أو البيئة. يجمّع هذا الاستعلام التكاليف حسب التسمية حتى تتمكن من إسناد الإنفاق إلى البُعد التجاري الأكثر أهمية لمؤسستك.
لماذا يهم هذا
إسناد التكاليف على مستوى المستخدم له حدوده. في مكدّسات البيانات الحديثة، قد يشغّل حساب خدمة واحد استعلامات نيابةً عن عشرات الفرق أو خطوط الأنابيب. تسدّ التسميات هذه الثغرة بتتيح لك وضع علامات على المهام بسياق العمل (مثل team=analytics وpipeline=revenue_report) ثم تشريح التكاليف وفقاً لذلك.
كيف يعمل
يخزّن BigQuery التسميات كحقل STRUCT متكرر على كل مهمة. يجري هذا الاستعلام CROSS JOIN على مصفوفة التسميات ويزيل التكرار في المهام، ثم يجمّع total_bytes_billed لكل زوج مفتاح وقيمة تسمية.
استعلام SQL
Fill in your details to get a ready-to-run query:
-- Break down on-demand cost by job label
DECLARE lookback_days INT64 DEFAULT 30;
WITH flattened AS (
SELECT
job_id,
lbl.key AS label_key,
lbl.value AS label_value,
COALESCE(total_bytes_billed, 0) AS bytes_billed,
ROW_NUMBER() OVER (PARTITION BY job_id ORDER BY end_time DESC) AS rn
FROM `your-project`.`region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
CROSS JOIN UNNEST(labels) AS lbl
WHERE creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL lookback_days DAY)
AND state = 'DONE'
AND total_slot_ms IS NOT NULL
AND lbl.key IS NOT NULL
),
deduplicated AS (
SELECT label_key, label_value, bytes_billed
FROM flattened WHERE rn = 1
)
SELECT
label_key,
label_value,
COUNT(*) AS job_count,
ROUND(SUM(bytes_billed) / POW(1024, 3), 2) AS gib_scanned,
ROUND(SUM(bytes_billed) / POW(1024, 4) * 6.25, 2) AS estimated_cost_usd
FROM deduplicated
GROUP BY label_key, label_value
...شرح الاستعلام
يجري الاستعلام CROSS JOIN على الحقل المتكرر للتسميات لتسطيح صف واحد لكل تسمية لكل مهمة. يزيل التكرار باستخدام ROW_NUMBER() على job_id، ثم يجمّع حسب label_key وlabel_value لجمع total_bytes_billed. تُحسب التكلفة عند الطلب بـ 6.25 دولار/TiB.
رؤى أساسية
إذا كانت معظم مهامك تفتقر إلى التسميات، فسيُظهر هذا الاستعلام جزءاً فقط من تكاليفك — ابدأ بتسمية خطوط الأنابيب الأكثر تكلفةً.
قارن التكاليف على مستوى التسمية شهراً بشهر للكشف عن انتكاسات التكلفة التي أدخلتها ميزات جديدة أو تغييرات خط الأنابيب.
يمكن للتسميات مثل 'environment=production' مقابل 'environment=staging' أن تكشف عما إذا كانت أحمال العمل غير الإنتاجية تكلّف أكثر مما هو متوقع.
يضيف dbt تلقائياً تسميات باسم النموذج، مما يجعل هذا الاستعلام قوياً بشكل خاص لفرق dbt.
أفضل الممارسات
- 1
فرض سياسة وضع التسميات: اشترط وجود تسمية 'team' و'pipeline' على الأقل لجميع المهام المجدولة.
- 2
استخدم تسميات الاستعلام الافتراضية لـ BigQuery في أداة التنسيق الخاصة بك لوضع علامة تلقائياً على كل مهمة.
- 3
أنشئ لوحة تتبع التكاليف على مستوى التسمية بمرور الوقت للكشف المبكر عن الانتكاسات.
- 4
تنبّه على التسميات التي تتجاوز تكلفتها الأسبوعية عتبةً معينة.
هل تريد من CloudClerk إيجاد هذه الوفورات تلقائياً؟
تتصل منصتنا بمشروع BigQuery الخاص بك وتُشغّل هذه التحليلات تلقائياً وتقدّم توصيات التحسين المدعومة بالذكاء الاصطناعي — مع إخفاء هوية بياناتك بالكامل.
أدلة ذات صلة
تحليل تكاليف BigQuery حسب المستخدم
اكتشف أي المستخدمين يولّدون أكبر إنفاق على BigQuery. استعلم عن INFORMATION_SCHEMA لترتيب المستخدمين حسب التكلفة عند الطلب وتحديد أهداف التحسين.
اقرأ الدليلتحليل تكاليف BigQuery حسب المشروع
تتبّع تكاليف BigQuery عبر مشاريع GCP. استخدم INFORMATION_SCHEMA لمقارنة الإنفاق على مستوى المشروع وإيجاد المشاريع الأكثر تكلفةً.
اقرأ الدليلأعلى استعلامات BigQuery تكلفةً
ابحث عن أغلى استعلامات BigQuery من حيث التكلفة عند الطلب. رتّب الاستعلامات حسب إجمالي البايتات المفوترة لتحديد أكبر محرّكات التكاليف.
اقرأ الدليلتحليل تكاليف BigQuery حسب الاستعلام
حلّل تكلفة كل استعلام فردي واستخدام الفتحات ووقت التنفيذ. احصل على تفصيل مفصّل للتكلفة عند الطلب لكل تنفيذ استعلام.
اقرأ الدليل