लागत के अनुसार BigQuery की शीर्ष क्वेरी
BigQuery लागत अनुकूलन के लिए यह सबसे मूल्यवान क्वेरी है। यह ऑन-डिमांड लागत द्वारा रैंक की गई प्रत्येक क्वेरी निष्पादन को लौटाती है, जो दिखाती है कि कौन सी SQL स्टेटमेंट आपके प्रोजेक्ट में सबसे अधिक संसाधन उपभोग करती है।
यह क्यों मायने रखता है
अधिकांश BigQuery प्रोजेक्ट में, पारेटो सिद्धांत लागू होता है: 20% क्वेरी 80% लागत के लिए जिम्मेदार हैं। उन शीर्ष क्वेरी को खोजना और अनुकूलित करना उच्चतम ROI देता है।
यह कैसे काम करता है
क्वेरी INFORMATION_SCHEMA.JOBS_BY_PROJECT से जॉब मेटाडेटा पढ़ती है, job_id द्वारा डीडुप्लिकेट करती है, और ऑन-डिमांड लागत के अवरोही क्रम में सॉर्ट करती है।
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।
मुख्य अंतर्दृष्टि
शीर्ष 10 सबसे महंगी क्वेरी आमतौर पर कुल प्रोजेक्ट लागत का 50-80% प्रतिनिधित्व करती हैं।
शीर्ष परिणामों में कई बार दिखने वाली क्वेरी मैटेरियलाइजेशन या कैशिंग के लिए उम्मीदवार हैं।
उच्च लागत लेकिन कम स्लॉट वाली क्वेरी बहुत अधिक डेटा स्कैन कर रही हैं।
उच्च लागत और उच्च स्लॉट वाली क्वेरी कंप्यूट-बाउंड हैं।
सर्वोत्तम प्रथाएं
- 1
साप्ताहिक रूप से शीर्ष 10 क्वेरी की समीक्षा करें और प्रत्येक के लिए अनुकूलन टिकट बनाएं।
- 2
समय-विभाजित तालिकाओं पर पूर्ण तालिका स्कैन को समाप्त करने के लिए पार्टीशन फिल्टर जोड़ें।
- 3
स्कैन किए गए बाइट्स को कम करने के लिए SELECT * को स्पष्ट कॉलम सूचियों से बदलें।
- 4
सबसे अधिक डेटा प्रोसेस करने वाले चरणों की पहचान करने के लिए BigQuery की क्वेरी प्लान व्याख्या का उपयोग करें।
क्या आप चाहते हैं कि CloudClerk स्वचालित रूप से ये बचत खोजे?
हमारा प्लेटफॉर्म आपके BigQuery प्रोजेक्ट से जुड़ता है, इन विश्लेषणों को स्वचालित रूप से चलाता है और AI-संचालित अनुकूलन सिफारिशें देता है।
संबंधित गाइड
जटिलता के अनुसार BigQuery की शीर्ष क्वेरी
स्लॉट उपयोग के अनुसार रैंक की गई सबसे अधिक कंप्यूट-गहन BigQuery क्वेरी खोजें। असंगत कम्प्यूटेशनल संसाधनों का उपभोग करने वाली क्वेरी की पहचान करें।
गाइड पढ़ेंअवधि के अनुसार BigQuery की शीर्ष क्वेरी
सबसे लंबे समय तक चलने वाली BigQuery क्वेरी खोजें। उन धीमी क्वेरी की पहचान करें जो संसाधनों को ब्लॉक करती हैं और उपयोगकर्ता अनुभव को प्रभावित करती हैं।
गाइड पढ़ेंआवृत्ति के अनुसार BigQuery की शीर्ष क्वेरी
सबसे बार निष्पादित BigQuery क्वेरी की पहचान करें। कैशिंग, मैटेरियलाइज्ड व्यू या समेकन के लिए उम्मीदवार दोहराई जाने वाली क्वेरी खोजें।
गाइड पढ़ेंउपयोगकर्ता के अनुसार BigQuery लागत विश्लेषण
जानें कि कौन से उपयोगकर्ता सबसे अधिक BigQuery खर्च करते हैं। INFORMATION_SCHEMA से ऑन-डिमांड लागत के अनुसार उपयोगकर्ताओं की रैंकिंग करें।
गाइड पढ़ें