खोज…


स्थापना और परीक्षण

पहली बात जो आप स्थानीय विकास के लिए करना चाहते हैं वह है अपनी मशीन में ElasticSearch स्थापित करना और यह देखने के लिए कि क्या चल रहा है, उसका परीक्षण करना। इसके लिए जावा को इंस्टॉल करना होगा। स्थापना बहुत सीधी है:

  • मैक ओएस एक्स: brew install elasticsearch
  • Ubuntu: sudo apt-get install elasticsearch

फिर इसे शुरू करें:

  • मैक ओएस एक्स: brew services start elasticsearch
  • उबंटू: sudo service elasticsearch start

इसके परीक्षण के लिए, सबसे आसान तरीका curl । इसे शुरू होने में कुछ सेकंड लग सकते हैं, इसलिए अगर आपको पहले कोई प्रतिक्रिया नहीं मिली तो घबराएं नहीं।

curl localhost:9200

उदाहरण प्रतिक्रिया:

{
  "name" : "Hydro-Man",
  "cluster_name" : "elasticsearch_gkbonetti",
  "version" : {
    "number" : "2.3.5",
    "build_hash" : "90f439ff60a3c0f497f91663701e64ccd01edbb4",
    "build_timestamp" : "2016-07-27T10:36:52Z",
    "build_snapshot" : false,
    "lucene_version" : "5.5.0"
  },
  "tagline" : "You Know, for Search"
}

विकास के लिए उपकरण स्थापित करना

जब आप ElasticSearch (ES) के साथ आरंभ कर रहे हैं, तो एक ग्राफिकल टूल होना अच्छा हो सकता है जो आपके डेटा का पता लगाने में आपकी मदद करता है। elasticsearch-head नामक एक प्लगइन बस यही करता है। इसे स्थापित करने के लिए, निम्नलिखित करें:

  • पता करें कि कौन सा फ़ोल्डर ES स्थापित है: ls -l $(which elasticsearch)
  • इस फोल्डर में cd और प्लगइन इंस्टॉलेशन बाइनरी चलाएं: elasticsearch/bin/plugin -install mobz/elasticsearch-head
  • अपने ब्राउज़र में http://localhost:9200/_plugin/head/ खोलें

अगर सब कुछ उम्मीद के मुताबिक काम करता है तो आपको एक अच्छा GUI देखना चाहिए जहां आप अपने डेटा को देख सकते हैं।

परिचय

ElasticSearch में एक अच्छी तरह से प्रलेखित JSON एपीआई है, लेकिन आप शायद कुछ पुस्तकालयों का उपयोग करना चाहते हैं जो आपके लिए काम करते हैं:

  • Elasticsearch - HTTP एपीआई के लिए आधिकारिक निम्न स्तर का आवरण

  • Elasticsearch-rails - आधिकारिक उच्च स्तरीय रेल एकीकरण जो आपको ActiveRecord या रिपोजिटरी पैटर्न का उपयोग करके ElasticSearch के साथ अपने रेल मॉडल को जोड़ने में मदद करता है।

  • Chewy - एक वैकल्पिक, गैर-आधिकारिक उच्च स्तरीय रेल एकीकरण जो बहुत लोकप्रिय है और यकीनन बेहतर प्रलेखन है

चलो कनेक्शन का परीक्षण करने के लिए पहले विकल्प का उपयोग करें:

gem install elasticsearch

फिर रूबी टर्मिनल को आग दें और इसे आज़माएं:

require 'elasticsearch'

client = Elasticsearch::Client.new log: true
# by default it connects to http://localhost:9200

client.transport.reload_connections!
client.cluster.health

client.search q: 'test'

Searchkick

यदि आप शीघ्रता से खोज करना चाहते हैं तो आप खोजक मणि का उपयोग कर सकते हैं:

gem 'searchkick'

उन मॉडलों में सर्चकिक जोड़ें जिन्हें आप खोजना चाहते हैं।

class Product < ActiveRecord::Base
  searchkick
end

खोज सूचकांक में डेटा जोड़ें।

Product.reindex

और क्वेरी करने के लिए, उपयोग करें:

products = Product.search "apples"
products.each do |product|
  puts product.name
end

बहुत जल्दी, elasticsearch ज्ञान की आवश्यकता नहीं; ;-)

अधिक जानकारी यहाँ: https://github.com/ankane/searchkick



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow