2012-06-12 3 views
5

이제 카탈로그 된 카탈로그 탐색을 사용하여 전자 상거래 사이트의 Solr 검색을 시작할 계획입니다.Solr의 관계형 데이터 처리 방법

동적 인 제품 및 사양 속성에 대해 약간의 데이터 스키마가 있습니다.

이 데이터를 Solr에 매핑하는 방법을 확실히 이해할 수 없습니까? 제품 색인 또는 제품 또는 단일 스키마로 맵핑되는 스펙 속성에 대해 하나씩 두 개의 색인이 필요합니다.

하지만 어떻게 좋을까요?

답변

8

현재 여러 개의 solr 색인에 참여할 수 없습니다. Solr 4.0에는 Join 기능이있을 예정입니다. 그러나 이렇게하면 개별 색인 내에서 문서를 조인 할 수 있습니다.

정규화 된 데이터베이스 스키마는 Solr에서 색인을 생성하기 전에 병합되어야합니다. 데이터베이스에서의 조인이 비싸기 때문에 실제로 런타임 성능 향상을 얻을 수있는 곳입니다.

제품 및 사양 전반에 걸친 일부 열의 복제가 정상입니다. 개별 속성과 카디널리티를 설명 할 수 있다면, 더 자세히 설명 할 수 있습니다.

내 배경은 무겁게 정규화 된 데이터베이스 스키마를 3 개의 solr 색인으로 색인화했습니다. 카디널리티 테스트를 사용하고이 스플릿을 좁히기 위해 유스 케이스를 검색했습니다. 예를 들어, 하나의 인덱스에서 고객 계약을 체결하고 다른 계약에서 에이전트 계약을 체결하고 고객과 대리인 간의 관계를 다른 계약에 체결했습니다. 나는 내가 얻을 수있는 가장 적은 지표에 착륙했다. 서비스 계층은 세 개의 인덱스를 통합합니다. 여기에 단일 색인을 작성하면 관리하기에 너무 거대하고 복잡해졌습니다.

시도 할 수있는 다른 접근 방법 중 하나는 검색 범위이며 데이터베이스 딥으로 개별 문서를 풍부하게합니다. 이것은 약간의 비용이 들지만 solr 검색에서 기본 키를 이미 확인한 경우 비용이 많이 들지 않습니다.

+0

Solr 4 제작 준비가 되었습니까? – Krunal

+0

역사적으로 Solr 사전 릴리스는 프로덕션 환경에서 사용되었습니다 (당사 포함). 물론 그것은 문제를 다루는 회사의 욕구, 필요한 기능 및 solr 버그 등을 수정할 수있는 프로그래머의 가용성에 달려 있습니다. – user1452132