2012-06-26 19 views
9

में बहुत अधिक अनुक्रमणिका हैं क्या कोई सूत्र/अनुमान/भावना है जो हमें दिखाता है कि दस्तावेज़ प्रकारों की संख्या, प्रति दस्तावेज़ फ़ील्ड की संख्या और उनके बीच संबंधों की संख्या के अनुसार RavenDB डेटाबेस में इंद्रियों की इष्टतम संख्या क्या है?RavenDB

अतिरिक्त नोट्स:

मैं (1) हम RavenDB में अनुक्रमित क्वेरी, नहीं दस्तावेजों और (2) अनुक्रमित materialized विचारों की तरह हैं, समझते हैं तो वे ज्यादा खर्च कर सकते हैं। मुझे यह जानने की ज़रूरत है कि कितने इंडेक्स उन्हें अपडेट करने में रावेनडीबी के प्रदर्शन को नुकसान पहुंचाएंगे और अनदेखा करने के लिए विलंबता बहुत बड़ी होगी?

जैसा कि रेवेन/मैक्सनंबर ओफपार्लेल इंडेक्सटेक्स वर्तमान मशीन में प्रोसेसर की संख्या पर सेट है, तो क्या इसका मतलब यह है कि अन्य इंडेक्स के लिए इंडेक्सिंग प्रक्रिया मौजूदा इंडेक्सिंग कार्यों को समाप्त होने तक अवरुद्ध कर देगी? या वे आंशिक अपडेट हैं जो बार-बार चलेंगे?

+0

यह एक दिलचस्प सवाल है। सुनिश्चित नहीं है कि जब तक निर्माता आते हैं, तब तक हम एक ठोस उत्तर देखेंगे, लेकिन +1 –

+1

@marc_s के संपादन के लिए धन्यवाद। –

+0

@nathan gonzalez मैं इसके लिए तत्पर हूं! –

उत्तर

3

कावे, आम तौर पर, हम सूचकांक की छोटी संख्या पसंद करते हैं, क्योंकि इंडेक्स के पास उनके साथ जुड़ी छोटी सी लागत नहीं होती है। ने कहा कि, उन्हें much की लागत नहीं है, खासकर जब से वे पृष्ठभूमि में बनाए जा रहे हैं।

हमारे पास कई दर्जन इंडेक्स के साथ चलने वाले कई ग्राहक हैं, और हमारे पास कुछ सैकड़ों के साथ चलने वाले कुछ हैं।

मैक्सनंबरऑफपार्लेल इंडेक्सटेक्स नियंत्रित करता है कि हम समानांतर में कितनी अनुक्रमणिका अपडेट करते हैं, लेकिन यह कैसे और क्यों काम करता है बिट जटिल है। आपके दृष्टिकोण से, यह वास्तव में लागू नहीं होता है, क्योंकि MaxNumberOfParallelIndexTasks के साथ, हम वर्तमान सिस्टम लोड, आईओ लागत इत्यादि जैसी चीजों को भी ध्यान में रखते हैं बड़ी संख्या में इंडेक्स में, कुछ इंडेक्स इंतजार करेंगे जबकि अन्य इमारतें होंगी , हाँ, लेकिन यह सीमाओं के एक सेट के अधीन है, और आप असली दुनिया स्थितियों में एक समस्या के रूप में इसे देखने में सक्षम होने की संभावना नहीं है।