2016-07-06 2 views
0

Sitecore 웹 인덱스 (코어 1)와 데이터베이스 테이블 (코어 2)의 두 가지 소스가 있습니다. 나는 리로의 병합 및 코어 2Solr 5.4.1 실시간으로 인덱스 병합

http://localhost:8983/solr/admin/cores?action=mergeindexes&core=core3&srcCore=sitecore_web_index&srcCore=core2

사람이 Sitecore에 페이지를 게시 할 때 단, sitecore 웹 인덱스가 업데이트 될 때 아닌 병합 된 핵심 코어 (3)을 만들었습니다. 병합 된 실시간 데이터를 어떻게 얻을 수 있습니까? 방법이 있습니까?

브라우저에서 실행하고 Solr을 중지하고 시작하면 데이터가 표시됩니다. 그러나 페이지를 편집하고 게시 할 때 프로덕션에서는 불가능합니다.

감사 칼 파나

답변

0

당신은 SolrEventListener 인터페이스를 사용하여 이벤트를 저지 수신 작은 플러그인을 작성할 수 있습니다. 전체 인덱스를 병합해야하지만 큰 쪽 인덱스가있는 경우 효과적이지 않을 수 있습니다.

또 다른 옵션은 Sitecore에 익숙하지 않은 경우 (Sitecore가 할 수없는 경우) 또는 요구 사항에 따라 코어 3없이 코어 1과 코어 2를 모두 검색하기 위해 샤딩 지원을 사용하여 두 코어에 색인을 생성하는 것입니다 또한 옵션 일 수 있습니다.

+0

감사했다. 게시가있을 때마다 색인을 병합하는 것은 언급 한 것과 같이 효과적인 옵션이 아닙니다. 이미 두 코어를 모두 인덱싱 한 결과를 하나의 결과 집합으로 결합하는 방법이 확실하지 않습니다. 당신은 샤딩을 언급했습니다. Solrconfig.xml의 요청 처리기에 추가 할 수 있습니까? – Kalpana

+0

이것이 작동하지 않는 것 같습니다. 0 결과를 얻었습니다. 로컬 호스트 : 8983/SOLR/sitecore_web_index, 로컬 호스트 : 8983/SOLR/SharePoint_All Kalpana

0

이 트릭에게 답장을 보내

<requestHandler name="/select" class="solr.SearchHandler"> 
<!-- default values for query parameters can be specified, these will be overridden by parameters in the request --> 
<lst name="defaults"> 
<str name="shards">localhost:8983/solr/sitecore_web_index,localhost:8983/solr/SharePo‌​int_All</str> 
</lst> 
</requestHandler>