상단

검색 엔진 Lucene를 기반으로 하는 검색 관리 솔루션인 solr를 정리 합니다.

 
 
 

Solr 개요


 

WAS 위에서 웹 애플리케이션으로 수행되며 인덱싱과 검색 요청을 HTTP 프로토콜을 통해서 받아서 Lucene에 전달해주는 역할

 
  • Solr 관련 오픈소스

 
 

[700px|Solr Concept.png](File:Solr Concept.png.md)

 

Solr 설치


 

Windows에서 Solr 실행

 
  • Solr 다운로드 사이트에서 solr-4.9.0.zip 파일을 다운로드 합니다. 다운로드 받은 파일로 c:/appl/solr/ 폴더를 생성 합니다.

  • 아래 명령어를 사용하여 Solr를 실행 합니다.

 
 
 cd c:/appl/solr/example
 java -jar start.jar
 
  • http://localhost:8983/solr/ 로 접속하여 사용 합니다.

  • 설정 파일 정보

    • etc/jetty.xml : Jetty 설정 파일

    • webapps/solr.war : Application 배포 파일

      • solr-webapp/webapp

    • contexts/solr-jetty-context.xml : Application 설정 파일

    • etc/webdefault.xml

    • lib/ : Jetty 라이브러리

    • logs/ : 로그 폴더

    • resources/log4j.properties : 설정 파일

    • solr/collection1/ : collection1 Solr Core 폴더

 
 

CentOS에서 Solr 실행

 
  • Solr을 다운로드하여 압축을 해제 합니다.

 
 
 cd install
 wget [http://apache.mirror.cdnetworks.com/lucene/solr/4.9.0/solr-4.9.0.tgz](http://apache.mirror.cdnetworks.com/lucene/solr/4.9.0/solr-4.9.0.tgz)
 tar xzvf solr-4.9.0.tgz
 mv solr-4.9.0 /nas/appl/solr
 
 cd /nas/appl/solr/example
 java -jar start.jar
 
  • 방화벽에서 8983/tcp 포트를 오픈 합니다.

 
 
 setup
 
  • http://node250.jopenbusiness.com:8983/solr/ 사이트로 접속하여 사용 합니다.

  • 설정 파일 정보

    • etc/jetty.xml : Jetty 설정 파일

    • webapps/solr.war : Application 배포 파일

      • solr-webapp/webapp

    • contexts/solr-jetty-context.xml : Application 설정 파일

    • etc/webdefault.xml

    • lib/ : Jetty 라이브러리

    • logs/ : 로그 폴더

    • resources/log4j.properties : 설정 파일

    • solr/collection1/ : collection1 Solr Core 폴더

 
 

Cluster 설정


 

ZooKeeper를 사용하여 분산 구성을 지원 합니다.
uniqueId.hashCode() % numServers 정보를 사용하여 원하는 shard를 찾아 갑니다.

 
  • Default 사용은 하나의 node를 여러개의 node로 구성하여 부하 분산

  • Shard별로 관리하는 자료를 다르게 가져 가려면 수작업으로 설정 하여야 합니다.

  • Shard는 Core 단위로 설정 가능 : Collection (Core) -> Shards -> Replications

 
 
 
 

java start.jar 옵션

 
  • collection.configName : Collection 이름

  • numShards : Shard 개수

  • replicationFactor : Replication 개수

  • zkHost : ZooKeeper 서버 정보

 
 
 
 

http://localhost:8983/solr/select 옵션

 
  • fl=shard : Shard 정보 표시

  • distrib=false : 요청 받은 node에서만 검색

 
 
 
 

solrconfig.xml

 
  • <processor class="solr.NoOpDistributingUpdateProcessorFactory" /> : 요청 받은 node에서만 등록

 
 

참고 문헌


 
최종 수정일: 2024-09-30 12:26:18

이전글 :
다음글 :