थ्रेड प्राथमिकता
1) प्राथमिकता की आवश्यकता क्यों है
लोड में वृद्धि के साथ, "सब कुछ महत्वपूर्ण है" में बदल जाता है "हमारे पास किसी भी चीज के लिए समय नहीं है। "थ्रेड प्राथमिकता थ्रेड/नौकरियों/किरायेदारों के बीच सीमित संसाधनों (सीपीयू, आई/ओ, नेटवर्क, बजट) को आवंटित करने का एक सिस्टम तरीका है ताकि महत्वपूर्ण एसएलओ किए जा सकें और लागत नियंत्रित रहे। परिणाम पूर्वानुमानित खिड़की ताजगी, परेशानी-मुक्त अलर्ट और स्थिर पुनरावृत्ति खिड़कियां हैं
2) प्रवाह वर्गीकरण और महत्व मानदंड
वर्गीकरण अक्ष:- समय: वास्तविक/निकट-वास्तविक समय (सेकंड-मिनट), इंटरैक्टिव (मिनट), ऑफ़ लाइन/बैच (घंटे)।
- आलोचना: वित्तीय/नियामक, घटना, उत्पाद, अनुसंधान।
- निर्भरता: अन्य स्टोरफ्रंट (अपस्ट्रीम) बनाम डाउनस्ट्रीम के लिए स्रोत।
- डाउनटाइम की लागत: प्रति मिनट/घंटे की देरी (एसएलओ उल्लंघन लागत)।
- किरायेदारी: आंतरिक टीम, साथी, बाहरी ग्राहक।
अभ्यास: प्रत्येक वर्ग - व्यवसाय प्राथमिकता (बीपी) और तकनीकी प्राथमिकता (टीपी); कुल - समग्र प्राथमिकता 'P = w1BP + w2TP + w3CostRisk'।
3) प्रवाह के लिए SLA/SLO/SI मॉडल
SLA: संविदात्मक गारंटी (जैसे) "वित्तीय शोकेस टी + 15 मिनट, 99। 9%»).
SLO: इंजीनियरिंग लक्ष्य (p95 ताजगी ≤ 10 मिनट; p99 देरी ≤ 60 सेकंड)।
SI (संतृप्ति सूचकांक): सीमा तक वर्तमान भार का अनुपात; शेड्यूलर द्वारा उपयोग किया जाता है।
रेलिंग: रेलिंग मेट्रिक्स (जैसे। सत्यापन त्रुटियां, चूक) अस्थायी रूप से मरम्मत प्रवाह की प्राथमिकता बढ़ा सकती हैं।
4) सेवा वर्ग (QoS) और नीतियां
गोल्ड (व्यवसाय-महत्वपूर्ण): भुगतान, धोखाधड़ी-विरोधी, नियामक रिपोर्ट, घटना अलर्ट।
रजत (उत्पाद-महत्वपूर्ण): प्रबंधन, अभियान, जोखिम स्कोरिंग के डैशबोर्ड के लिए शोकेस।
कांस्य (सर्वश्रेष्ठ प्रयास): अनुसंधान बैच, लंबे समय तक फिर से निर्माण और बैकफिल चौड़ी खि
राजनेता:- सख्त प्राथमिकता (एसपी): सोना हमेशा आगे; कम की भुखमरी का खतरा।
- भारित मेला कतार (WFQ): ट्रैफिक/नौकरियों पर भार, निष्पक्षता नियंत्रण।
- डेफिसिट राउंड-रॉबिन (डीआरआर): भाग प्रसंस्करण कोटा, नेटवर्क/स्ट्रीमिंग होस्ट के लिए अच्छा है।
- डेडलाइन-जागरूक: एक करीबी समय सीमा के साथ कार्यों को बढ़ावा मिलता है।
- लागत-जागरूक: यदि "महंगा घंटा" और एसएलओ अनुमति देता है तो पुनर्गणना में देरी होती है।
5) शेड्यूलर और कतारें (स्तरों पर)
प्राप्त/इनगेस्ट स्तर (घटना बस):- विषयों/कतारों को QoS वर्गों में विभाजित किया गया है; उत्पादक सीमा; कोटा के माध्यम से बैकप्रेशर।
- नीति दर सीमा + फटने के लिए फट टोकन (टोकन बाल्टी)।
- वर्ग द्वारा संसाधन पूल/समूह: गोल्ड के लिए अलग निष्पादक।
- पूर्वनिर्धारण: घाटे में सबसे कम (आवृत्ति सीमा के साथ) संसाधनों का चयन।
- प्रवेश नियंत्रण: बजट और एसएलओ द्वारा इनपुट फिल्टर; खिड़की के बिना "महंगी" नौकरियों की अस्वीकृति।
- प्रतिस्पर्धी I/O और प्राथमिकता अनुरोध कतारें।
- भौतिक दृश्य: सोना - वृद्धिशील, रजत - आवधिक, कांस्य - अनुसूचित/रात की खिड़कियां।
6) बैकप्रेशर, सीमा और सिस्टम संरक्षण
Backpressure संकेत: उपभोक्ता से उत्पादक तक (लैग/लेटेंसी/कतार गहराई)।
अनुरोध/कार्य सीमाएँ: बाइट्स स्कैन, पंक्तियाँ वापस, दीवार-समय कैप.
सर्किट ब्रेकर्स: सरलीकृत इकाइयों या "गर्म" स्नैपशॉट के लिए अधिभार - क्षरण के तहत।
शेड-लोड: महत्वपूर्ण लोगों को बचाने के लिए सबसे अच्छे प्रयास को रीसेट/ट्रिमिंग करना।
7) बहु-किरायेदारी और "न्याय"
किरायेदारों के लिए कोटा: सीपीयू/आईओ/समय की प्रति इकाई लागत।
क्वेरी कक्षाओं के लिए वजन: एनालिटिक्स, रिपोर्ट, एमएल सुविधाएँ - अलग सीमाएं।
बजट लिफाफे: साप्ताहिक/मासिक छत; जब थका हुआ - प्राथमिकता को कम करना, ऑफ-पीक में स्थानांतरित करना।
8) लागत और "प्राथमिकता अर्थशास्त्र"
लागत-से-ताजगी: ताजगी में सुधार करने के लिए इसकी लागत कितनी है।
लागत-जागरूक योजना: कांस्य शिफ्ट ऑफ-पीक; बैकफिल - "सस्ते घंटे" में।
स्पॉट/प्रस्तावना: कम-प्राथमिकता के लिए - प्रारंभिक संसाधनों का उपयोग।
क्वेरी प्रोफाइलिंग: "महंगे" टेम्पलेट्स की ब्लैकलिस्ट; स्वचालित पुनर्लेखन।
9) बैच प्राथमिकता
विंडो कैलेंडर: सिल्वर/कांस्य से पहले सोने के लिए खिड़कियां फिक्स करें।
निर्भरता-जागरूक डीएजी: अपस्ट्रीम गोल्ड मॉडल को कैस्केड को अनलॉक करने के लिए एक शुरुआती स्लॉट मिलता है।
वृद्धिशील पहले: पहले वृद्धिशील पार्टियां, फिर "ठंडा" फिर से निर्माण।
चेकपॉइंटिंग - प्रीमेशन को प्रगति खोने से रोकने के लिए।
10) स्ट्रीमिंग के लिए प्राथमिकता
प्राथमिकता पार्टियां: गोल्ड विषयों पर अधिक उपभोक्ता उदाहरण।
वर्ग द्वारा जलमार्क: सोने के लिए - संकीर्ण विलंबता खिड़कियां; कांस्य के लिए - व्यापक (देर से होने वाली घटनाओं के लिए उच्च सहिष्णुता)।
Dedup और idempotent सिंक: सोने के लिए - सख्त; कांस्य के लिए - अनुमानित।
अलर्ट: गोल्ड अलर्ट बढ़े हुए QoS के साथ एक अलग चैनल से गुजरते हैं।
11) सिग्नल और स्वचालित प्राथमिकता परि
घटना ट्रिगर: स्पाइक ट्रैफ़िक, घटना, प्रचार अभियान - अस्थायी गोल्ड/सिल्वर बूस्ट।
एसएलए खतरा: ताजगी टूटने का पूर्वानुमान - एक विशिष्ट शोकेस का ऑटो-बूस्ट।
डेटा गुणवत्ता: द्रव्यमान युगल/हानि - मरम्मत धाराओं की प्राथमिकता बढ़ाना।
वित्तीय जोखिम: चार्जबैक वृद्धि → स्कोरिंग/अलर्ट प्राथमि
12) अवलोकन: क्या निगरानी करना है
कतारें/अंतराल: लंबाई, प्रतीक्षा समय, p95/p99 कक्षा द्वारा देरी।
एसएलओ बोर्ड: ताजगी/विलंबता/त्रुटियां प्रति परत (ingest→curated→marts)।
लागत: प्रति वर्ग/किरायेदार लागत; बजट से विचलन।
Preemption: आवृत्ति, प्रगति की हानि, डेटा MTTR।
प्राथमिकता अतालता: वर्तमान 'पी', बूस्ट के कारण, शेड्यूलर निर्णयों का इतिहास।
13) नीति प्रबंधन
कॉन्फिग कोड (पॉलिसी-ए-कोड), वर्शनिंग और समीक्षा में नीतियां।
आवेदन से पहले ड्राई-रन: शेड्यूल/लागत कैसे बदलेगी।
कैनरी समावेश: समूहों का हिस्सा नए वजन/नियमों पर चलता है।
रनबुक: अतिभारित होने पर क्या करना है, कैसे अस्थायी रूप से वर्ग को कम करना है, कैसे लौटना है।
14) एंटीपैटर्न
"सब कुछ सोना है। "प्राथमिकता अपना अर्थ खो देती है; संसाधनों के लिए युद्ध शुरू हो
उपवास सुरक्षा के बिना सख्त एसपी। रजत/कांस्य कभी पूरा नहीं हुआ।
कोई प्रवेश नियंत्रण नहीं। "महंगा" अनुरोध सिस्टम में प्रवेश करते हैं और सभी को छोड़
लागत-जागरूक की कमी। हम "महंगे घंटे" पर भारी बैकफिल करते हैं।
OLTP/OLAP मिश्रण। महत्वपूर्ण लेनदेन एनालिटिक्स से पीड़
RLS/CLS के बिना हाइब्रिड डेटा। मरम्मत/प्राथमिकता गलती से संवेदनशील क्षेत्रों को उजागर करती है।
15) कार्यान्वयन रोडमैप
1. डिस्कवरी: धागे, निर्भरता और मालिकों की सूची; SLO और डाउनटाइम लागत का आकलन।
2. QoS कक्षाएं: गोल्ड/सिल्वर/कांस्य, वजन और आधार सीमा को परिभाषित करें; एक पॉलिसी-ए-कोड बनाएं।
3. शेड्यूलर और पूल: विभाजित समूह/संसाधन पूल, प्रवेश नियंत्रण सक्षम करें।
4. निगरानी: एसएलओ बोर्ड/लैग/लागत; एसएलओ और बजट-उल्लंघन के खतरे के लिए अलर्ट।
5. ऑटो-बूस्ट: सिग्नल का एकीकरण (घटनाएं, अभियान, डीक्यू) प्राथमिकता परिवर्तन में।
6. लागत-जागरूक: ऑफ-पीक शेड्यूल, स्पॉट संसाधन, प्रोफाइलिंग "महंगा" अनुरोध।
7. सख्ती: पूर्वनिर्धारण-सुरक्षित चौकियां, रनबुक, कैनरी नीतियां, अराजकता परीक्षण।
16) प्री-रिलीज़चेकलिस्ट
- QoS वर्ग, मालिक, SLO और डाउनटाइम लागत सभी प्रवाह के लिए परिभाषित हैं।
- कॉन्फ़िगर पूल/क्लस्टर और प्रवेश नियंत्रण, सीपीयू/आईओ/स्कैन सीमा।
- बैकप्रेशर और निगमित/उपभोक्ताओं पर दर सीमाएं सक्षम हैं।
- प्राथमिकता नीतियों को कोड के रूप में डिजाइन किया गया है; एक सूखी दौड़ और एक समीक्षा है।
- लैग्स, ताजगी, लागत, पूर्ववर्ती/त्रुटियों की निगरानी की जाती है; ऑन-कॉल में अलर्ट।
- सिग्नल (एसएलए खतरा, डीक्यू, घटना, अभियान) पर ऑटो-बूस्ट कॉन्फ़िगर किया।
- प्रलेखित गिरावट रनबुक; अराजकता के परिदृश्यों की जाँच की।
- कांस्य के लिए, धाराओं को कैस्केडिंग देरी के जोखिम के बिना ऑफ-पीक/स्पॉट पर पलायन किया जाता है।
17) नमूना नीतियां (छद्म-YAML)
17. समय सीमा और बजट के साथ 1 स्वर्ण वर्ग
yaml policy: gold_finance_stream priority_base: 90 deadline_slo: freshness<=10m boost_on:
- dq_violation: duplicates_in_txn_id>0
- incident: "chargeback_spike"
limits:
max_scan_mb: 20480 max_concurrency: 32 budget:
max_hourly_cost: 200 preemption:
can_preempt_classes: [silver, bronze]
17. 2 कॉस्ट-अवेयर बैकफिल для कांस्य
yaml policy: bronze_backfill priority_base: 20 schedule: offpeak(22:00-06:00)
limits:
max_concurrency: 4 iops_cap: low fallback:
pause_if_cluster_si>0. 8
18) नीचे की रेखा
थ्रेड प्राथमिकता व्यावसायिक प्राथमिकताओं, तकनीकी एसएलओ और कतारों, अनुसूचियों, सीमाओं और प्रणाली प्रतिक्रिया के माध्यम से लागू आर्थिक बाधाओं का एक प्रबंधनीय संयोजन है। जब QoS कक्षाएं, ऑटो-बूस्ट सिग्नल और लागत-जागरूक नीतियां एक साथ काम करती हैं, तो डेटा ताजा और विश्वसनीय रहता है, महत्वपूर्ण अंतर्दृष्टि समय पर आती है, और बुनियादी ढांचा बिलिंग अनुमानित है।