2014-10-07 1 views
0

저는 프로그래밍에 익숙하지 않고 Elasticsearch-rails gem을 내 앱에 통합하는 방법에 대한 많은 연구를 해왔습니다. 그러나, 나는 그것을 애플 리케이션 내에서 실행하는 법을 모르는 시점에왔다. 이것은 내가 지금까지 해왔 던 것이다.Rails 4 앱에서 Elasticsearch-Ruby gem을 설정하는 방법

  1. 내 gemfile에 gem 'elasticsearch', '~> 1.0.5'을 입력하십시오. 무엇을 다음

    require 'elasticsearch' 
    

    을 그리고 :

  2. 지금 나는 내 응용 프로그램 파일에 다음 코드를 삽입 할 필요가 있음을 볼 수 있지만,이 어디로 가는지 잘 모르겠어요 터미널

gem install elasticsearch를 입력 이 코드? 또한

client = Elasticsearch::Client.new log: true 

client.transport.reload_connections! 

client.cluster.health 

client.search q: 'test' 

# etc. 

과 관련, 나는 다음과 같은 보석의 차이에 대한 혼란 스러워요 :

gem 'elasticsearch', '~> 1.0.5 
https://github.com/elasticsearch/elasticsearch-ruby 

gem install elasticsearch-model elasticsearch-rails 
https://github.com/elasticsearch/elasticsearch-rails 
https://github.com/elasticsearch/elasticsearch-rails/tree/master/elasticsearch-model 

elasticsearch-model과 elasticsearch-rails는 이미 elasticsearch-ruby에 있습니까?

일부 자습서에서 컴퓨터에 elasticsearch를 설치 한 다음 http://localhost:9200으로 이동하여 작동하는지 확인해야한다고 언급 한 것을 볼 수 있습니다. 내 앱을 내 컴퓨터에서 실행하는 대신 앱 내에서 실행할 수 있습니까?

사전 통찰력을 주셔서 감사합니다.

+0

http://www.sitepoint.com/full-text-search-rails-elasticsearch/ 아직이 튜토리얼을 따라 가지 않았습니다. 위에서 설명한 것보다 조금 더 단순 해 보입니다. 그리고'http : // localhost : 9200'는 일회성 테스트 인 것 같습니다. Elasticsearch *가 앱에서 실행됩니다. – dwilbank

+0

@dwibank 언급 한 튜토리얼을 따라 해 보았습니다. 위와 같은 질문을했습니다. 나는 결코 http : // localhost : 9200을 실행할 수 없으며 나는 이유를 모른다. JDK를 내 컴퓨터에 설치해야합니까? 이 경우 앱에서 실행되기 전에 신축성있는 검색이 컴퓨터에서 실행되어야한다는 것을 보여주는 것이 아닙니까? 당신의 도움을 주셔서 감사합니다! –

+0

이 자습서를 시도하고 어떤 일이 일어날 지 알 것입니다 ... – dwilbank

답변

0

당신이 말하는 코드는 연결하여 Elasticsearch 서버와 상호 작용하는 것입니다. 그 전에 Elasticsearch를 설치해야합니다. Elasticsearch는 REST API에 응답하는 검색 엔진을 감싸는 자체 웹 서버로 생각할 수 있습니다.

응용 프로그램 내에서 Elasticsearch를 실행할 수 없습니다. 그것은 그것의 자신에 달리기 위하여 필요로한다. Elasticsearch를 설치하는 가장 쉬운 방법은 Homebrew를 사용하는 것입니다. 하나의 명령 줄을 사용하여 Elasticsearch를 설치하고 실행할 수 있습니다. 정말 쉽습니다.

일단 Elasticsearch를 실행하면 응용 프로그램과 Elasticsearch 사이의 인터페이스가되므로 'elasticsearch-model'젬을 사용하는 것이 좋습니다. 'elasticsearch-rails'보석은 레이크 작업을 처리하고 'elasticsearch-persistence'보석은 Rails를 사용하는 경우 필요하지 않은 루비 객체를 처리합니다.

귀하의 질문에 답변 해 주셨으면합니다. 방금이 답변에서 다룬 모든 기사를 작성했습니다. http://aaronvb.com/articles/intro-to-elasticsearch-ruby-on-rails-part-1.html

관련 문제