Дизайн схемы solr для определений сущностей "многие ко многим"

Я пытаюсь разработать схему для сценария, в котором существует отношение «многие ко многим» между продуктами и поставщиком. Поиск может осуществляться как по продукту, так и по поставщику. Продукт может поставляться многими поставщиками, и у поставщика будет много продуктов. Ниже приводится решение, о котором я думаю, но похоже, что в определениях полей много избыточности, нужно ли мне 2 определения сущностей для поддержки поиска, ориентированного на продукт или поставщика. Не выглядит оптимально.

При поиске поставщика "продукт" может быть определен "multiValue = true" При поиске продукта "поставщик" может быть определен "multiValue = true"

<!-- Field definitions to support supplier search -->
<field name="s_supplier" type="string" indexed="true" stored="true" >
<field name="s_product"  type="string" indexed="true" stored="true" multiValue="true">

<!-- Field definition to support product search -->
<field name="p_product"  type="string" indexed="true" stored="true" >
<field name="p_supplier"  type="string" indexed="true" stored="true" multiValue="true">

определение объекта в обработчике данных:

<entity name="products" ....>
   <field name="p_product" column="">
   <entity name="suppliers">
      <field name="p_supplier">
    </entity>
</entity>

<entity name="suppliers" ....>
   <field name="s_supplier" column="">
   <entity name="products">
      <field name="s_product" column="">
    </entity>
</entity>
5
задан cheffe 9 October 2014 в 08:17
поделиться