मैं Google Trends (या ट्विटर जैसी किसी भी अन्य बड़े पैमाने पर प्रवृत्ति सुविधा) के पीछे सिस्टम डिज़ाइन को समझने की कोशिश कर रहा हूं।Google Trends का सिस्टम डिज़ाइन?
चुनौतियां:
डेटा की बड़ी राशि प्रवृत्ति गणना करने के लिए कार्रवाई करने के लिए की आवश्यकता।
छनन समर्थन - समय, क्षेत्र, वर्ग आदि
द्वारा एक तरह से संग्रह/ऑफ़लाइन प्रसंस्करण के लिए स्टोर करने के लिए की आवश्यकता है। फ़िल्टरिंग समर्थन के लिए बहु आयाम भंडारण की आवश्यकता हो सकती है।
यह वही मेरी धारणा है
उपयोगकर्ता से प्रत्येक खोज आइटम विशेषताओं है कि संग्रहीत किया जाएगा और अंत में संसाधित का सेट बनाए रखेंगे (मैं MapReduce/NoSQL प्रौद्योगिकियों के शून्य व्यावहारिक अनुभव है)।
साथ ही समय स्टाम्प, खोज के क्षेत्र, वर्ग आदि द्वारा खोजों की सूची बनाए रखने
उदाहरण:
Kurt-> (Time stamp, Region of search origin, category ,etc.)
Cobain-> (Time stamp, Region of search origin, category ,etc.)
प्रश्न::
Kurt Cobain
अवधि के लिए खोज
वे खोज शब्द की आवृत्ति की कुशलतापूर्वक गणना कैसे करते हैं?
दूसरे शब्दों में, एक बड़ा डेटा सेट दिया गया, वे वितरित पैमाने पर सक्षम तरीके से शीर्ष 10 लगातार आइटम कैसे ढूंढते हैं?
भी समय क्षय कारक –
पर विचार करने की आवश्यकता है, मुझे लगता है कि विशेष डेटा-संरचनाओं का उपयोग करना जो इस तरह से संरचित होते हैं जो रुझानों को ढूंढने में तेजी लाते हैं, डेटा को इस तरह से व्यवस्थित किया जाता है कि लाखों उपयोगकर्ताओं के लिए सभी खुली सुविधाओं के लिए इसे पूर्व-प्रक्रिया करें –
स्पष्ट रूप से मैं किसी अन्य प्रश्न पर एक प्रश्न को बंद करने के लिए वोट नहीं दे सकता हूं, लेकिन मेरे लिए यह प्रश्न ऑफ-विषय/बहुत व्यापक लगता है: इस विषय से संबंधित कई तकनीकों और अनुसंधान के क्षेत्र हैं, और कोई रास्ता नहीं है एक उत्तर पाठ्यपुस्तक या समर्पित वेबसाइट जैसे कुछ और उपयुक्त संसाधनों को जोड़ने के अलावा उन्हें समाहित कर सकता है। सहायता केंद्र में दिशानिर्देशों में से एक को पारदर्शी करने के लिए: "यदि आप उत्तर खोजने के आधार पर पूरे करियर या व्यापार योजना की कल्पना कर सकते हैं, तो सवाल शायद बहुत व्यापक है"। – IMSoP