我需要启用全文&分面搜索将每个客户数据存储在单独的Azure SQL数据库中的服务。每个数据库反过来存储客户的多个项目数据。每个数据库可以包含n个项目。每个客户的项目数据都作为独立的数据存储库进行访问。因此,我需要将搜索和方面限制在每个项目的数据中。由于Azure搜索支持有限数量的索引,我不确定如何在我的场景中最好地利用它?此外,跨项目的可搜索数据将具有需要搜索的不同信息集。因此,Index中的列将因每个数据库中的项目而异。
如何通过Azure搜索最好地解决此问题?
答案 0 :(得分:0)
看看Design patterns for multitenant SaaS applications and Azure Search。特别是,在某些情况下,您可以跨租户共享索引并使用过滤器来隔离数据 - 请参阅this section。这种方法的缺点是跨租户共享数据会影响搜索相关性(因为术语频率/文档频率的范围限定为索引),但在许多情况下这是可以接受的。