2010-08-05 15 views
6

Badoo.com में 56.000.000 उपयोगकर्ता प्रोफ़ाइल हैं। प्रोफ़ाइल लिंग, आयु, बालों का रंग, राशि चक्र, शिक्षा आदि द्वारा खोजा जा सकता है, साथ ही मेरे गृह नगर, ऑनलाइन स्थिति और पंजीकरण की तारीख से दूरी भी खोजा जा सकता है। अब तक, ऐसा लगता है कि यह विशाल टेबल (56 मीटर सदस्यों ...) पर काफी कुछ सवाल है, लेकिन इसे सामान्य तरीके से कैश किया जा सकता है।badoo.com उपयोगकर्ता खोज - यह कैसे किया जा सकता है?

दिलचस्प हिस्सा यह है कि उनके पास एक व्यक्ति "सूची को बाहर" भी है (प्रत्येक प्रोफ़ाइल के साथ, आप कह सकते हैं कि आप इस व्यक्ति से मिलना नहीं चाहते हैं)। इसके अलावा, आप दोस्त भी दिखाई नहीं देते हैं।

दूसरा दिलचस्प हिस्सा क्वेरी के OR भागों हैं। आप किसी ऐसे व्यक्ति की तलाश कर सकते हैं जो एक महिला है, 25-35, गोरा या श्यामला, गैर धूम्रपान करने वाला, हेटरो या उभयलिंगी, कुंवारी या जुड़वा या कैंसर, पेरिस के 50 किमी त्रिज्या में रह रहे हैं और जो आपका मित्र नहीं है और आपकी बहिष्कृत सूची में नहीं है और अब ऑनलाइन कौन है। कई ओआरएस, भारी क्वेरी, सॉर्ट विकल्प, कैशिंग का कोई तरीका नहीं है या इन सबकी गणना नहीं कर रहा है, लेकिन खोज मिलीसेकंड में 11.2 9 8 परिणाम देता है।

वे 56 मिलियन डेटासेट और 250K लोगों के साथ एक ही समय में ऐसा कैसे करते हैं? फुलटेक्स्ट सर्च इंडेक्स? रिलेशनल डेटाबेस? कुंजी मूल्य स्टोर? क्या किसी को अवधारणा या वास्तुकला पर विचार है?

+0

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

उत्तर

3

वे ल्यूसीन या स्फिंक्स जैसे उलटा इंडेक्सिंग तकनीक का उपयोग करके सबसे अधिक संभावना बनाते हैं। यदि आप समाधान बनाने की सोच रहे हैं, तो मेरी सिफारिश Apache Solr (ल्यूसीन का उपयोग करके बनाया गया एक खोज सर्वर) होगा। यह बहुत लोकप्रिय है, इसमें सक्रिय ओएसएस समुदाय है, और नेटफ्लिक्स, सीनेट इत्यादि जैसी साइटों द्वारा उपयोग किया जाता है

1

मैं Badoo Dev Blog पर एक नज़र डालने की सलाह दूंगा। यह रूसी में है लेकिन Google अनुवाद बहुत मदद करता है।

संक्षेप में वे sharded MySQL और memcached का उपयोग कर रहे हैं। यहां कुछ badoo evolution list है।

+0

कृपया एक डेडलिंक ठीक करें –

संबंधित मुद्दे