使用 Azure 搜索索引器时如何捕获数据源名称

How to capture datasource name when using Azure Search indexer

我在 Azure 搜索中有一个多租户索引,我想用多个索引器填充它,每个索引器从一个特定的租户上传数据。

我希望按字段 "tenantid" 过滤搜索。索引器用作数据源的每个数据库都有 "tenantid" 作为它的名称,但我发现没有函数或选项可以添加自定义字段,将数据库名称映射到搜索结果中的字段。

该问题的简单解决方案是在包含字段 "tenantid" 的数据库中的每个文档中添加一个字段,但我宁愿从数据库名称中获取此信息并减小我的对象大小。

有什么想法吗?非常感谢。

目前暂无此类字段映射功能。请在 Azure Search UserVoice 上添加此建议。

要解决此问题,您可以通过指定数据源查询来包含它,而不是将数据库名称添加到每个文档,如下所示:

SELECT c.id, c._ts, 'my_database' AS database FROM collection c WHERE c._ts >= @HighWaterMark