2014-05-19 3 views
4

내가 다른 언어로 된 문구를 보유하는 데 사용됩니다 SOLRSOLR 동적 필드 유형

<dynamicField name="Phrase_*" type="string" indexed="true" stored="true" multiValued="true" required="false"/> 

에서 필드를, 그래서 이름이 "Phrase_en", "Phrase_sp", 경향 등 내가 분석기를 가지고 해당 언어에 대한 올바른 형태소 분석/동의어 처리를 수행하는 유사한 형식 ("string_en", "string_sp"등)으로 명명 된 유형에 대해 서로 다른 언어로 된 필드에 대한 작업을 수행하는 필터 및이를 조작하는 방법을 찾고 싶습니다. 필드 이름을 기반으로 올바른 분석기/필터 세트가 각 언어에 사용됩니다.

내가 생각할 수있는 유일한 방법은이 분석기 세트를 멀티플렉싱하고 어떤 신호를 보낼지 판단하지만, 어떻게해야 할지를 모르는 유형을 만드는 것입니다.

그 아이디어를 얻는 방법이나 그 목표를 달성하는 더 좋은 방법에 대한 아이디어가 있습니까?

답변

4

이 문제는 Solr In Action 책 (Solr 구성에서 깊이 들여다 보려는 사람들에게 매우 권장 됨)과 같은 결과를 얻으려는 다른 사람들이 자세히 설명합니다. 3 기본 접근 방법이 있습니다

  1. 별도의 언어 별 필드 - 언어에 따라 적절한 tokenizers 및 필터가 별도의 필드 (하지 동적)에 부하는
  2. 언어별로 별도의 인덱스/코어 -
  3. 모두 하나의 필드, 사용자 정의 코드는 관리하기 -

귀하의 제안은 1과 3의 변형입니다 - 당신이 시작할 줄 수있는 가장 좋은 장소는 질문 (은 제 14 장에서의)에서 책을 읽고 코드를 연구하는 것입니다 그가 pl Github에서에 제압하는 것은 그것을 구현 :

https://github.com/treygrainger/solr-in-action/tree/master/src/main/java/sia/ch14 https://github.com/treygrainger/solr-in-action/tree/master/example-docs/ch14/cores