2010-11-18 2 views
1

Когда я индексирую объекты в своем приложении (используя поиск в спящем режиме и lucene), я хотел бы сохранить в индексе некоторые атрибуты ассоциаций объекта. Мне нужно сохранить их в индексе, потому что мне нужен быстрый поиск этих атрибутов. Каков наилучший подход для этого?Как индексировать атрибуты из ассоциаций?

  1. Хранить объектные отношения в lucene. Это похоже на самый простой и быстрый подход.
  2. магазин объектные отношения в БД
  3. магазин объект отношения в чем-то отдельно, как магазин быстрый ключ-значение

Любые другие идеи о том, как я могу хранить набор атрибутов из подмножества объектов из графический объект моего приложения? Какое решение я должен использовать?

ответ

0

Если вам нужны атрибуты часто при получении документа, я бы привязал их к индексу. Если их использование будет нечастым, я бы использовал вариант 2 или 3. Если вы знаете, когда вам это нужно, а когда нет, вы можете использовать FieldSelector для контроля того, загружаются ли атрибуты (или какие).

Еще один фактор, который следует учитывать, - это мощность атрибутов и можно ли включить их значения в запросы или алгоритмы ранжирования. Если ответ «да», то вам гораздо лучше помещать их в индекс Lucene.