2014-10-13 6 views
0

나는 solr을 배우기 시작했고 다른 번들의 제품 가격에 대한 데이터를 모델링하려고합니다.Solr 색인 다중 값 필드

이것은 측면 검색이 어떻게 작동하는지 initialy 때문에

Product { 
allPrices: { 12, 13, 14 } 
bundles: {Bundle_1, Bundle_2, Bundle_3} 
price:  ???? 
} 

은 내가 price 필드를 떠났습니다. 색인을 생성 한 가격 값이 하나 뿐이므로 필터링에 사용되었습니다.

선택할 수있는 묶음의 드롭 다운 메뉴가있는 제품 페이지가 있습니다. 선택한 번들에 따라 해당 가격을 표시해야합니다. 어떻게 이런 모양으로 모델링하면면 처리 된 검색을 할 수 있고 SOLR ranges을 사용할 수 있습니다.

답변

2

Solr에서 Block Join 접근법을 살펴 보시기 바랍니다. 그것은 당신의 필요에 아주 잘 작동 할 것입니다. 부모 문서로 제품을 모델링하고 자식 제품으로 3 개의 모든 번들을 모델링 할 수 있습니다. 각각은 자신의 가격이므로 쉽게 보여줄 수 있습니다. 여기서 문제는 Solr이 여전히 하위 수준의 패싯을 갖고 있지 않으므로 직접 구현해야한다는 것입니다. 또한, SOLR 아이들의 필드를 기준으로 문서를 정렬 할 수 있습니다, 그래서 당신은 내가 당신을 위해 시작으로이 기사를 추천 집계를

을해야합니다 - http://blog.griddynamics.com/2013/09/solr-block-join-support.html

또 다른 방법은 하나의 각 번들을 모델링 할 수 문서. 여기에 3 개의 문서가있을 수 있습니다.

Bundle1 { 
    price: 12, 
    name: Bundle_1 
    product: Product1 
} 
Bundle2 { 
    price: 13, 
    name: Bundle_2 
    product: Product1 
} 

그러나이 방법도 몇 가지 문제가있을 것입니다 - 모든 당신이 번들 당신이 문서를 작성하기 때문에 데이터가 기하 급수적으로 증가 할 것이다.