का उपयोग कर एक फ़ील्ड को तेजी से अद्यतन करने के लिए तालिकाओं को डिज़ाइन करने के लिए सर्वोत्तम अभ्यास, मैं वर्कफ़्लो जैसे सिस्टम पर काम कर रहा हूं। मेरे पास एक कार्य तालिका और स्थिति फ़ील्ड है। स्थिति के लिए मूल्य नई, तैयार, प्रसंस्करण, त्रुटि, निरस्त, किया जा सकता है।एसक्यूएल सर्वर
मेरे पास लगभग 7 प्रक्रियाएं हैं जो कार्य की स्थिति के मूल्य को बदलने के लिए विभिन्न स्थितियों के आधार पर ट्रिगर की जाएंगी। अधिकांश समय प्रत्येक प्रक्रिया अपने डेटा सेट पर काम करेगी और हर बार जब यह केवल 5000 रिकॉर्ड तक संसाधित होती है। लेकिन डेटा अभी भी 2 मिलियन रिकॉर्ड तक पहुंचने पर कुछ डेडलॉक देखता है। मैं एसक्यूएल प्रोफाइलर के साथ जांचता हूं, कुछ पृष्ठ संसाधन से संबंधित दिखता है। मैं एसक्यूएल सर्वर प्रदर्शन ट्यूनिंग में अच्छा नहीं हूं और इसे बहुत अच्छी तरह समझ नहीं पा रहा हूं।
चूंकि निष्क्रिय कार्य हर दिन संग्रहीत किया जाएगा, इसलिए मैं लगभग 10 मिलियन रिकॉर्ड का समर्थन करने के लिए तालिका को फिर से डिजाइन करने के बारे में सोच रहा हूं।
कुछ विकल्प हो सकता है:
- स्थिति के आधार पर विभाजन तालिकाएं बनाएं।
- स्थिति
वहाँ स्थिति के इस प्रकार के लिए किसी भी अच्छा अभ्यास है के आधार पर स्थिर डेटा और समर्थित तालिका के साथ एक मास्टर तालिका बनाएँ?
धन्यवाद!
धन्यवाद सिवा, हम SQL सर्वर 2005 + का उपयोग कर रहे हैं। और सुझाव दिया गया है कि अलगाव लागू होगा। लेकिन हमें उस क्लाइंट की आवश्यकता नहीं है जिसके पास एंटरप्राइज़ SQL सर्वर होना चाहिए। तो विभाजन कुछ ग्राहकों के लिए एक विकल्प हो सकता है जो अधिक भुगतान कर सकते हैं। –
क्या कार्य तालिका में क्लस्टर्ड इंडेक्स परिभाषित किया गया है? – gonsalu
हां। टास्कआईड जो प्राथमिक कुंजी और int प्रकार है। मैंने इसे गैर-क्लस्टर बनाने की कोशिश की। लेकिन प्रदर्शन भी बदतर है। –