2012-01-04 5 views
0

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

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

ответ

1

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

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