मैं निम्नलिखित पढ़ा है:SOLR प्रदर्शन ट्यूनिंग
- अगर मैं का उपयोग करें:
http://wiki.apache.org/solr/SolrPerformanceFactors
http://wiki.apache.org/solr/SolrCaching
http://www.lucidimagination.com/content/scaling-lucene-and-solr
और मैं कुछ चीजों के बारे में प्रश्न पूछना चाहते हैं JVM विकल्प
-XX:+UseCompressedStrings
किस तरह का स्मृति बचत मैं प्राप्त कर सकता हूँ? एक साधारण उदाहरण रखने के लिए, यदि मेरे पास 1 अनुक्रमित फ़ील्ड (स्ट्रिंग) और 1 संग्रहीत फ़ील्ड (स्ट्रिंग) है omitNorms = true और omitTf = true के साथ, इंडेक्स और दस्तावेज़ कैश में किस प्रकार की बचत की उम्मीद है? मैं लगभग 50% अनुमान लगा रहा हूं, लेकिन शायद यह बहुत आशावादी है। - जब सोलर फ़िल्टर कैश वास्तव में होता है? अगर मैं सिर्फ एंड और कुछ ओआरएस के साथ एक सरल क्वेरी कर रहा हूं, और स्कोर द्वारा क्रमबद्ध कर रहा हूं, तो मुझे इसकी भी आवश्यकता है?
- यदि मैं दस्तावेज़ कैश में सभी दस्तावेज़ों को कैश करना चाहता हूं, तो मैं आवश्यक स्थान की गणना कैसे करूं? ऊपर से उदाहरण का उपयोग करते हुए, यदि मेरे पास 20 एम दस्तावेज़ हैं, तो संपीड़ित तारों का उपयोग करें, और संग्रहीत फ़ील्ड की औसत लंबाई 25 वर्ण है, क्या मूल रूप से आवश्यक स्थान (25 बाइट्स + small_admin_overhead) * 20M है?
- यदि सभी दस्तावेज़ दस्तावेज़ कैश में हैं, क्वेरी कैश कितना महत्वपूर्ण है?
- यदि मैं दस्तावेज़ दस्तावेज़ में प्रत्येक दस्तावेज़ को स्वचालित करना चाहता हूं, तो
*:*
की क्वेरी को स्वतः चालू कर देगा? - स्केलिंग-लुसेन-एंड-सोलर आलेख कहता है कि FuzzyQuery धीमा है। अगर मैं solr की वर्तनी जांच सुविधा का उपयोग कर रहा हूं तो मैं मूल रूप से अस्पष्ट क्वेरी का उपयोग कर रहा हूं (क्योंकि वर्तनी जांच एक ही संपादन दूरी गणना करता है)? तो संभवतः वर्तनी जांच और अस्पष्ट क्वेरी दोनों समान रूप से "धीमी" हैं?
- स्ट्रिंग के लिए ल्यूसीन फील्ड कैश का वर्णन करने वाला अनुभाग थोड़ा उलझन में है। क्या मैं इसे सही ढंग से पढ़ रहा हूं कि आवश्यक स्थान मूल रूप से अनुक्रमित स्ट्रिंग फ़ील्ड का आकार है + उस क्षेत्र में अद्वितीय शर्तों की संख्या के बराबर एक पूर्णांक arry?
- अंत में, थ्रूपुट को अधिकतम करने के तहत, ओएस डिस्क कैश के लिए पर्याप्त जगह छोड़ने के बारे में एक बयान है। यह कहता है, "सब कुछ, बड़े पैमाने पर सूचकांक के लिए, यह सुनिश्चित करना सबसे अच्छा है कि आपके पास JVM को जो कुछ भी दे रहा है उससे कम से कम कुछ गीगाबाइट रैम हो।" तो अगर मेरे पास 12 जीबी मेमोरी मशीन है (उदाहरण के तौर पर), मुझे ओएस में कम से कम 2-3 जीबी देना चाहिए? क्या मैं डिस्क इंडेक्स आकार को देखकर ओएस द्वारा आवश्यक डिस्क कैश स्पेस का अनुमान लगा सकता हूं?
वोट क्यों बंद करें? – Kevin
दोनों उत्तरों अच्छे थे इसलिए मैंने एक ऐसा चुना जो पहले सही था। उत्तरों के लिए धन्यवाद। – Kevin