2015-08-02 2 views
0

Я использую Solr индексировать объект, который имеет неограниченное количество связанных сущностейСуб лица в Solr

Таблица 1

имя Идентификатор 1 | aa 2 | bb 3 | куб.см

Таблица 2

ID поле1 поле2

1 | работает в | Нью-Йорк 1 | любит ходить в | Paris

Как вы видите, каждая строка представляет собой сущность, связанную с объектом с идентификатором 1, и какое значение соответствует тому, что имеет значение.

Как достичь этого с помощью обработчика импорта данных Solr?

Я использовал SubEntity в данном-config.xml и многозначный = верно для field1 и field2, но индексируются документ выглядит

ID 1 field1: [работает, любит ходить] field2: [ Нью-Йорк, Париж]

и отношения между колоннами были полностью потеряны. Если вы ищете работы в Париже, он также может получить сущность 1. Что мне делать, чтобы поддерживать отношения? Большое спасибо.

ответ

0

определение схема в schema.xml

идентификатор (типа строка)
имя (типа строка)
worksIn (типа строка, мульти значения = истина) - ваш выбор, если мульти- значение обязательное или нет
likesToGo (тип string, multi value = true) - многозначный смысл здесь, как человек, скорее всего, больше места для посещения, в любом случае ваше требование

Примеры Документов после индексации

1, аа, worksIn [Newyork, New Jeysey], likesToGo [Париж, Луна]
2, бб, worksIn [Даллас], likesToGo [NewYork, вс]

запрос

Для "работы в Париже", запрос "worksIn: Париж". Вы получаете документ с идентификатором 1
Для «любит ходить на солнце» запрос «любитТоГо: солнце». Вы получаете документ с идентификатором 2

Смежные вопросы