Оптимизация количества индексных файлов Lucene - PullRequest
0 голосов
/ 04 января 2012

Я использую Lucene для индексации записей из моей базы данных. У меня есть миллион записей в моей таблице под названием «Документы». Записи будут доступны только определенным пользователям. Реальный сценарий состоит в том, что один пользователь может получить доступ к максимум 100 записям в таблице «Документы». Что из следующего является лучшей практикой для этого сценария.

  1. Индексирование всех 1 миллиона записей в таблице «Документы» в виде единого индексного файла с информацией о пользователе в качестве одного из полей в этом индексе ИЛИ
  2. Создание пользовательских индексов

1 Ответ

1 голос
/ 04 января 2012

Похоже, у вас будет много индексов во втором сценарии, и если вы хотите искать их одновременно, Lucene придется держать много файлов открытыми, так что вы можете легко достичь предела своей ОС для количество открытых файлов. Если вы решите открывать / закрывать их по требованию, вам может не пригодиться кэширование, и ваш поиск может быть медленным из-за холодных индексов (или вы предварительно их прогреваете, но опять же у вас может быть много дополнительной обработки). Я бы выбрал первый подход: Lucene может обрабатывать 1 млн документов в одном индексе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...