2011-10-10 3 views
6

solr에 중첩 된 필드를 만들 가능성에 대한 질문이 있습니다. Google 검색에서 나에 대해 그룹에 대해 뭔가를 말했지만 그 결과만으로 생각하십니까?SOLR의 중첩 필드

는 내가 가지고 싶은 그런 구조입니다 :

  • 카테고리 1
    • 항목 1 (9)
    • 항목 2 (8)
  • 구분 2
    • 항목 3 (6)
  • Category3
    • 항목 4 (23)

나는이 같은 시도 :

<field name="Category" type="string" indexed="true" stored="true" multiValued="true" required="false"> 
<field name="MiscellaneousName" type="string" indexed="true" stored="true" multiValued="true" required="false"/> 

을하지만 그것은 작동하지 않습니다.

업데이트 : 카테고리와 항목은면 처리되어야합니다. Everey 항목 (= 패싯)은 범주의 일부입니다. 하나의 카테고리는 다중 또는 널 필드를 가질 수 있습니다. 범주 및 항목은 동적으로 색인을 생성하려는 데이터베이스에 저장됩니다. 나는 단지 항목을 검색하고 범주는 텍스트 일 ​​뿐이다. Tomcat 7에서 solr 3.3을 사용하고 있습니다.

+0

어떤 Solr을 사용하고 있습니까? 4.0이면 [피봇 패싯] (http://wiki.apache.org/solr/SimpleFacetParameters#Pivot_.28ie_Decision_Tree.29_Faceting)을 찾는 것처럼 보입니다. 그렇다면 여기에 좋은 [소개 기사] (http://solr.pl/en/2010/10/25/hierarchical-faceting-pivot-facets-in-trunk/)가 있습니다. –

답변

6

감사합니다.

  • 카테고리 1 (17)
    • 항목 1 (9)
    • 항목 2 (8)
  • 구분 2 (6)
      : Pivot facets 당신이 뭔가를 할 수 있도록
    • 항목 3 (6)
  • Category3 (23)
    • 항목 4 (23)

.. 그러나 그들은 SOLR 4.0 (트렁크)에서만 사용할 수 있습니다. 그러나 솔로가 낮은 경우 (1.4까지) 이러한 결과를 시뮬레이트 할 수 있지만, 다소 복잡하고 하나가 아닌 두 개의 Solr 쿼리가 필요합니다. 나는 이것에 블로그 포스트를 썼다 - Pivot Faceting (Decision Trees) in Solr 1.4.

원래 질문에 포함 된 스키마를 유지할 수 있습니다. 피봇 패싯 (실제 또는 시뮬레이션)은 임의의 다른 (또는 동일한) 필드에서 작동합니다.

+0

답변 해 주셔서 감사합니다! 그것은 내가 필요로하는 것처럼 보인다! solr 4.0을 사용할 준비가되었다고 생각합니까? 그리고 어디로 가야합니까? – HW90

+0

"Solr 4.0"은 현재 Solr 트렁크를 의미합니다. Solr 트렁크는 현재 사용하고있는 지역에서 안정적인지 확인하기 위해 스스로 조사해야합니다. 다양한 상태의 " 끝난". 직장에서 우리는 1.4.1을 돌리고, 바위처럼 단단하지만, 아직 도약을하지 못했습니다. 만약 당신이 확실히 알지 못한다면 (Solr 3.4), 안정적으로 작업하는 것이 가장 좋으며, 두 가지 쿼리 기술을 사용하여 블로그 게시물에 간략히 설명합니다. 4.0에서 실제 피벗 패싯만큼 쉽지는 않지만 네가 찾는 패의 나무를 너에게 줄거야. –

1

피벗 패싯은 계층 적 패싯을 정의하는 데 필요한 요소입니다.
그러나 트렁크 빌드를 사용해야 작동합니다.

당신이 문제의 업그레이드가있는 경우, 당신은 http://www.lucidimagination.com/why-lucid/webinars/mastering-power-faceted-search

이 @ 옵션을 확인할 수는 해결 방법, 그리고 당신이 피드 데이터를 조작 할 필요가있다.

Cattegory1 -> item 1 
0//Cattegory1 and 1//Cattegory1//item1 

이의 조합으로 작동 - = FQ 범주를 사용하여
필터 결과 "0 // Cattegory1"당신이 필요로하는 경우, 레벨에 따라 측면을 제한하는 데 도움이 될 것입니다
facet.prefix 결과를 제한하려면

또한 http://wiki.apache.org/solr/HierarchicalFaceting 일 수 있습니다.

+0

답변을 주셔서 감사합니다. 질문을 업데이트했습니다. 그러나 Cattegory를 아이템의 일부로 만드는 방법은 무엇입니까? 이것이 가능하면 클라이언트 사이트에서 그룹화 할 수 있습니다 ... – HW90

+0

이 답변을 편집했습니다. – Jayendra

0

카테고리를 항목의 필드로 만들 수 있습니까? 예 : 카테고리 1 항목 1과 2를 검색하면 결과가 다시 나타 납니까?

절대적으로 엔티티의 일부 여야하고 서로 연관되어야하는 두 개의 필드가있는 경우 폴리 필드가 도움이 될 수 있습니다. 그들은 x와 y 값을 갖는 포인트와 같은 것들을 위해 디자인되었습니다.

솔라에서 어떻게 처리 할 좋은 방법을 제안하려고하는지 정확히 알 필요가 있다고 생각합니다.

+0

답변을 주셔서 감사합니다. 질문을 업데이트했습니다. 나는 아이템에 대해서만 cattegories를 찾지 않을 것이다. 그러나 항목의 cattegory 부분을 만드는 방법? – HW90

+0

항목을 추가하고 항목의 한 필드를 '카테고리'로 지정하는 항목을 만듭니다. 카테고리로 채 웁니다. 죄송합니다. 예제를 추가하려했지만 형식이 잘못되었습니다. 편집 : 업데이트 후, 나는 이것이 당신이 필요로하지 않는 것 같아요. 진짜 행운을 찾는 행운을 비네! – tedders