Если бы это был я, если бы не было нормативной причины, почему вы не можете, я бы свалил их все в один индекс.Это просто мое «не оптимизируйте то, что вам не нужно», говоря просто.
Первое беспокойство просто законно: разрешено ли вам даже совместное размещение и смешивание данных, даже если они разделеныс помощью логических средств.Это зависит от ваших адвокатов, клиентов и сервисных соглашений.Это не техническая проблема.
Если предположить, что это возможно, то следующий вопрос - как другие пользователи будут влиять друг на друга.Если пользователь A использует систему, а пользователь B находится в процессе импорта своих документов размером 100 КБ, это повлияет на пользователя A?Это влияет на пользователя A из-за того, как работает Lucene, или просто из-за общей загрузки системы, которая возникает при импорте и индексации документов.
Попробуйте и посмотрите.
Главное, чтобыубедитесь, что ваши клиентские системы не обращаются к Lucene напрямую, а через какой-то фасад.Этот фасад является идеальным местом для принудительной сегрегации клиентов, и он также является хорошим местом для перенаправления трафика, если через некоторое время вы решите, что вам нужно защитить ваши индексы.
Возможно, вам нужно вырватьодин тяжелый пользователь.Или вы продаете более высокий уровень времени ответа кому-то, кому гарантировано больше ресурсов в их SLA и т. Д.
Но вы решаете, какой путь лучше?Эх, кажется рано.
500K документов - это не много данных для Lucene.Просто убедитесь, что у вас есть гибкость в реализации, чтобы добавить возможность позже, если вы обнаружите, что хостинг всего этого в одном экземпляре нежизнеспособен.И под «добавить возможность» я имею в виду именно это, добавить его.На самом деле не РЕАЛИЗУЙТЕ, скажем, шардинг на основе клиента.Но лучше иметь хороший момент, когда он МОЖЕТ быть реализован без повторного выполнения сантехнических работ позже.