-
[Solr] core 여러개 만들기개발하면서/etc 2011. 8. 28. 09:47반응형
http://apache.tt.co.kr/lucene/solr/3.3.0/ 에서 solr를 다운받습니다. ( 8/28 solr 3.3.0 version )
1. port를 변경하여 두개의 solr를 실행하는 방법
( http://wiki.apache.org/solr/DistributedSearch )
. example 폴더를 복사한다.
. example7574\etc\jetty.xml에서 port를 변경한다.
<Call name="addConnector"> <Arg> <New class="org.mortbay.jetty.bio.SocketConnector"> <Set name="host"><SystemProperty name="jetty.host" /></Set> <!-- <Set name="port"><SystemProperty name="jetty.port" default="8983"/></Set> 이부분을 아래와 같이 변경--> <Set name="port"><SystemProperty name="jetty.port" default="7574"/></Set> <Set name="maxIdleTime">50000</Set> <Set name="lowResourceMaxIdleTime">1500</Set> <Set name="statsOn">false</Set> </New> </Arg> </Call>
. 콘솔창을 두개 연다음 하나는 example\에 있는 start.jar 실행 다른 하나는 example7574에 있는 start.jar 실행
D:\temp\apache-solr-3.3.0\example7574> java -Dsolr.solr.home=d:\temp\apache-solr-3.3.0\example7574\solr -Dsolr.abortOnConfigurationError=true -jar start.jar
D:\temp\apache-solr-3.3.0\example> java -Dsolr.solr.home=d:\temp\apache-solr-3.3.0\example\solr -Dsolr.abortOnConfigurationError=true -jar start.jar2. solr.xml 설정하기
solr.xml // core당 schema, config 설정을 해준다. <solr persistent="false"> <!-- adminPath: RequestHandler path to manage cores. If 'null' (or absent), cores will not be manageable via request handler --> <cores adminPath="/admin/cores"> <core name="collection1000" instanceDir="." schema="schema_1000.xml" config="solrconfig_1000.xml" /> <core name="collection2000" instanceDir="." schema="schema_2000.xml" config="solrconfig_2000.xml" /> </cores> </solr>
. config 폴더에서 solrconfig, schema 파일을 solr.xml에서 설정한 만큼 만든다.
. 동일한 port에서 두개 이상의 core를 사용하기 때문에 접근하는 url이 변경된다.기존 : [host]:[port]/solr/~~~~(update, dataimport, select, 사용)
변경 : [host]:[port]/solr/[coreName]/~~~~(update, dataimport, select, 사용)오......그럼 색인어별 (ㄱ-ㄹ, ㅇ-ㅎ) 나눠서 코어별로 색인 후 검색어가 들어오면 적당한 Core에만 질의하면 나름 분산 검색? ㅋㅋㅋㅋㅋ
3. solr에서 multicore라는 폴더 활용하기
D:\temp\apache-solr-3.3.0\example> java -Dsolr.solr.home=d:\temp\apache-solr-3.3.0\example\multicore -Dsolr.abortOnConfigurationError=true -jar start.jar
잘된다~~ ; )
================ 2011.08.29 추가 ================
multicore 폴더에서 다수의 core를 하는데 dataimport를 하면 아래와 같은 에러가 발생한다.
sample이라면 core0, core1 폴더가 있을텐데 각 폴더의 solrconfig.xml 에서 <config> 부분에 lib를 추가한다.<lib dir="../../../dist/" regex="apache-solr-dataimporthandler-\d.*\.jar" />
반응형