बहुत सारे कारक हैं जो खेल में आ सकते हैं, इसलिए मुझे नहीं लगता कि कई सामान्य दिशानिर्देश हैं।
आपको एक छोटे पैमाने पर मूल्यांकन करना चाहिए, शायद 1/5 वीं के साथ प्रारंभिक डेटा सेट यह देखने के लिए कि आपके द्वारा अपेक्षित इंडेक्सिंग और सेटअप पर खोज भार फेंकने के दौरान चीजें कैसे व्यवहार करती हैं। यह आपको यह समझने में मदद करेगा कि आपका डेटा वास्तव में खोज इंजन में कितना स्थान लेगा। इलास्टिक्स खोज के लिए, निर्भर करता है कि क्या आप स्रोत जोंस को स्टोर कर रहे हैं और फ़ील्ड का विश्लेषण कैसे किया जाता है और यदि वे संग्रहीत हैं।
EC2 एक बड़ी h / w खर्च के बिना elasticsearch को निकालने का एक उचित तरीका हो सकता है।
क्लस्टर आधारित सॉफ़्टवेयर के लिए, इलास्टिक्स खोज की तरह, क्लस्टर को छोटा बनाम बड़ा रखने के बीच ट्रेडऑफ़ हैं। एक बड़ा क्लस्टर अच्छा है क्योंकि जब आप एक सर्वर खोते हैं, तो कम डेटा को फिर से आवंटित करने की आवश्यकता होती है। एक छोटा क्लस्टर कम ऊर्जा खपत करता है और इसे बनाए रखना आसान होता है।
हम 35 मिलियन दस्तावेज़ों के साथ एक क्लस्टर चलाते हैं w / कुल सूचकांक आकार लगभग 300GB x 2, क्योंकि सभी अनुक्रमित प्रतिकृति हैं। इसे और बहुत बड़ी संख्या में खोजों का समर्थन करने के लिए, हमारे पास 4 नोड्स हैं, जिनमें से प्रत्येक में 24 कोर, 48GB रैम और 1TB का भंडारण 10K डिस्क के साथ raid10 है। हमने हाल ही में सिर के कमरे को सुनिश्चित करने के लिए डिस्क आकार में वृद्धि की है।
आपके मामले के लिए, मैं अधिक रैम और अधिक डिस्क की सिफारिश करूंगा। आप शायद उस खोज मात्रा के साथ CPU पर पैसे बचा सकते हैं।
कम खोज मात्रा वास्तव में प्रदर्शन को नुकसान पहुंचाती है, क्योंकि कैश (s / w के लिए आंतरिक और OS डिस्क दोनों) को अच्छी तरह से गर्म नहीं किया जाएगा।
आशा है कि यह मदद करता है, पॉल