Влияние размера документа в Lucene - PullRequest
1 голос
/ 24 января 2012

Я только начал читать по Lucene.В одном из приведенных примеров весь документ добавлялся в документ перед добавлением документа в индекс.

Однако в документации указывалось, что этот метод индексации не даст хорошей производительности.Рекомендованным способом является сохранение каждой строки файла в отдельном документе.

Мне было интересно узнать, как это помогает улучшить производительность индексации.

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

1 Ответ

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

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

Что касается вашего второго вопроса, нет, вам не нужно выполнять токенизацию перед созданием документов и полей. Токенизация будет выполняться при вызове IndexWriter # add (Document).

Если вы только начинаете работать с Lucene, я настоятельно рекомендую вам прочитать демонстрационный код . Это покажет вам, как создать, а затем выполнить поиск по индексу Lucene.

И если скорость индексирования имеет решающее значение для разрабатываемого вами приложения, на Lucene wiki .

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