我正在开发一个基于 Azure 的网站,我想使用 Lucene 提供搜索功能。(结构化的 json 对象将被索引并存储在 Lucene 中,而其他内容(如 Word 文档等)将在 lucene 中被索引但存储在 blob 存储中)我希望搜索是安全的,这样一个用户将永远不会看到属于的文档给另一个用户。我想允许用户输入的临时搜索。最后,我想以编程方式查询以返回预定义的数据集,例如“用户 X 的所有注释”。我想我了解如何为每个文档添加属性以实现这三个目标。(我在这里列出它们,所以如果有人愿意回答,他们会更好地了解我想要做什么)
我的问题围绕着性能和安全性。
我可以通过为每个用户设置单独的索引来提高文档安全性,还是在每次搜索中将用户 ID 作为参数包含在内就足够了?
我可以通过为每个用户设置单独的索引来提高系统的索引速度和总吞吐量吗?我的想法是,拥有单独的索引可以让我通过让多个索引编写器(甚至可能在不同的服务器实例上)同时工作来扩展系统,每个编写器都有自己的索引。
任何见解将不胜感激。
问候,
内特