मैंने इसे इस तरह से किया है:
मैं नोड के लिए सेल.जेएस फ्रेमवर्क का उपयोग कर रहा हूं और मोनगो को डीबी के रूप में उपयोग कर रहा हूं।
सबसे पहले, मैंने npm का उपयोग करके इलास्टिक्स खोज मॉड्यूल स्थापित किया है। फिर इस कोड को elasticSeach.js नामक फ़ाइल में जोड़ा। कॉन्फ़िगरेशन अनुभाग में।
इसका निम्नलिखित कोड है:
var elasticsearch = require('elasticsearch'),
index = "Ur_elastic_index_name_goes_here",
client = new elasticsearch.Client({
host: 'localhost:9200',
log: 'trace'
});
module.exports.elasticSearchClient = client;
module.exports.elasticSearchConfig = {
index: index
};
उसके बाद, बस एक फाइल बनाएं ElasticSearchService.js जिसमें आप खोज, अद्यतन आदि जैसे सभी ऑपरेशन करेंगे। यहां मूल्यों को अनुक्रमित करने के लिए एक इलास्टिक्स खोज अनुक्रमणिका पद्धति का एक उदाहरण है, जो लेता है:
ए) टाइप करें
बी) आइटम , जो
. जैसे json प्रकार का ऑब्जेक्ट हैitem = {
"name" : "vishal",
"website" : "stackOverflow"
};
और विधि है
function indexItem(type, item) {
return Q.promise(function(resolve, reject){
elasticSearchClient
.index({
index: elasticSearchConfig.index,
type: type,
body: item
})
.then(function (response) {
sails.log.info("ElasticSearchService#indexItem :: Response :: ", response);
return resolve(response);
})
.catch(function(err) {
sails.log.error("ElasticSearchService#indexItem :: Error :: ", err);
return reject(err);
});
});
}
आप जहां चाहें इस विधि को कॉल करें।
मैं मूल्यों को वापस करने के वादे का उपयोग कर रहा हूं। आपको तेज कार्यान्वयन और सभी के बारे में चिंता करने की आवश्यकता नहीं है। लोचदार इसका ख्याल रखता है।
यहां टाइप और मैपिंग के बारे में अधिक जानकारी :https://www। लोचदार.co/guide/hi/elasticsearch/guide/current/mapping.html