У меня есть требование найти элементы в индексе Lucene, которые имеют два основных критерия: 1. соответствовать определенной строке, называемой «отношением» 2. попасть в список разрешений «группы грантов»
AnГруппа разрешений определяет подмножество элементов, доступных для члена этой группы, и очень похожа на роль авторизации.
Все документы в индексе Lucene имеют поле 'отношение' и, для простоты, один или несколько 'поля grant-group '.
Так, например, пользователь может искать' foobar ', и этот пользователь может быть членом групп a, b, c.Например, foobar имеет группы грантов a, p, q, s
Запрос будет, в основном, "соответствовать" foobar 'AND (a OR b OR c).
Это должноработать в соответствии с документацией Lucene.
У меня такой вопрос: как далеко вы можете пойти со 2-й частью логического запроса, а именно с частью после «И»? Причина, по которой я спрашиваю, такова:Чтобы провести небольшое технико-экономическое обоснование, и частью требований является необходимость поддержки потенциально МНОГО групп в разделе «ИЛИ». Возможно до 200 или 300 групп.
Будет ли заметное снижение производительности?
спасибо.