12

मैं सिफारिशों और सहयोगी फ़िल्टरिंग को लागू करने के लिए रेल पर रूबी पर अपाचे महॉट का उपयोग करना चाहता हूं। विशेष रूप से मेरी आवश्यकताओं में हैं:महोत्सव प्लगइन

  1. संबंधित टैग सुझाते हैं।
  2. संबंधित लेखों का सुझाव। उपयोगकर्ता की प्राथमिकताओं के आधार पर
  3. उन्हें लेखों की समीक्षा के लिए प्रेरित करते हैं।
  4. भौगोलिक स्थिति और उपयोगकर्ता की अन्य मेटा जानकारी के आधार पर, उसे समान उपयोगकर्ता सुझाते हैं।

यदि मैं आसानी से रेल के साथ एकीकृत करता हूं और मेरी आवश्यकताओं को पूरा करता हूं तो मैं किसी भी अन्य समाधान (महोत्सव के अलावा) का उपयोग करने के लिए खुला हूं।

+0

सहयोगी फ़िल्टरिंग लागू करने के लिए विशेष रूप से लंबे एल्गोरिदम नहीं है। रेलवे पर रूबी के साथ काम करने की कोशिश करने से आप एल्गोरिदम को लागू करने में काफी कम समय व्यतीत कर सकते हैं। – Steve

उत्तर

6

इसके लिए क्या महंगा है, महाउट 'स्वाद-वेब' मॉड्यूल में स्क्रिप्ट शामिल हैं जो जावा-आधारित अनुशंसाकर्ता के चारों ओर एक उपयोग में उपयोग की जाने वाली वेब सेवा का निर्माण करेगा .war फ़ाइल के रूप में आप टॉमकैट जैसे कुछ पर तैनात कर सकते हैं , और फिर HTTP के माध्यम से बात करते हैं। यह किसी भी प्लेटफ़ॉर्म से पहुंच योग्य होगा जो HTTP अनुरोध कर सकता है।

http://lucene.apache.org/mahout/taste.html#Standalone+server

7

महावत (और Hadoop) JRuby पर चल रहे रेल के भीतर बहुत अच्छी तरह से काम करते हैं। तुम इतनी तरह Hadoop और महावत जार शामिल कर सकते हैं:

की आवश्यकता होती है 'rubygems'
जावा का अर्थ

डिर की आवश्यकता होती है [ "/ महावत आधार-निर्देशिका/**/* जार।"]। प्रत्येक {| जार | जार की आवश्यकता है}
Dir ["/ hadoop-base-dir/**/*। jar"]। प्रत्येक {| jar | जार की आवश्यकता होती है}

तो फिर तुम उदाहरण के लिए महावत कक्षाएं आप के प्रयोग पर योजना है, शामिल कर सकते हैं:

include_class 'org.apache.hadoop.fs.Path'
include_class 'org.apache .hadoop.conf.Configuration '
include_class' org.apache.hadoop.fs.FileSystem '
include_class' org.apache.mahout.clustering.spectral.common.AffinityMatrixInputJob '
include_class' org.apache.mahout.clustering .spectral .kmeans.SpectralKMeansDriver '

वहाँ से, आप अपने रेल आरईसी प्रणाली का निर्माण करने महावत जावा डॉक्स और JRuby परंपराओं का पालन कर सकते हैं।

यह कहा जा रहा है कि, मुझे यकीन नहीं है कि आपकी साइट के लिए सबसे अच्छा आर्किटेक्चर होगा (अधिक विस्तार के बिना कहना मुश्किल है)। यदि आपकी समस्या का स्तर महोत्सव वारंट करने के लिए काफी बड़ा है, तो संभवत: वेब सामग्री के लिए रेल का उपयोग करने और वेब ढांचे के बाहर आपकी सिफारिशें उत्पन्न करने के लिए अधिक समझदारी होती है (उदाहरण के लिए रात के बैचों में affinities उत्पन्न करके)।