除非您对数据进行不同的建模,否则无法在单个请求中实现您想要的功能。可以不对个人顾问和顾问企业关系进行非规范化,而是可以使每个顾问拥有一个文档,并使用集合来存储有关个人和企业的信息。根据您是否需要对与Advisor相关的个人和企业支持相关过滤,这可能对您不起作用。有一个白皮书这里应该帮助您评估这种做法是否会为你工作。
另一种选择是将个人,顾问和企业建模为单独的索引,发出三个查询,并进行客户端联接。但是,这受到在个人和企业查询中需要发送的顾问ID数量的限制。Azure搜索对筛选器的大小有限制,除非查询的召回率较低,否则筛选器的大小将变得不切实际。
我们正在努力使Azure搜索更好地适合您的方案。例如,我们目前正在努力添加对复杂类型的支持。请对“用户语音”进行投票,并随时建议其他有用的功能。



