【问题标题】:Azure search fetch multiple recordsAzure 搜索获取多条记录
【发布时间】:2021-09-17 15:40:14
【问题描述】:

我想使用其中一个字段从 Azure 索引中获取多条记录,但我不确定在单个查询中可以使用多少个过滤器。假设如果我想获取 1000 条记录,我可以在搜索查询中添加 1000 个过滤器吗?

例如:我有一个名为 field_document_id 的字段,并且我想获取多个文档,因为我有文档的 ID。为此,我查询如下: *&$filter=field_document_id eq '1',这将获取 field_document_id 值为 1 的文档,假设我想在这样的单个请求中获取多个文档,我还有其他方法吗?如果我使用多个过滤器,是否有任何限制?

【问题讨论】:

  • 您能否编辑您的问题并提供更多详细信息?我相信您应该能够使用其中一种过滤功能。
  • 添加了一个例子,希望它现在可以解决问题。

标签: azure lucene azure-cognitive-search


【解决方案1】:

我相信您可以定义的过滤子句的数量是有限的,但是我无法找到确切的数量。这是here提到的:

过滤器表达式的大小和复杂性存在限制 您可以发送到 Azure 认知搜索。限制大致基于 关于过滤器表达式中的子句数。一个很好的指南 是如果你有数百个条款,你就有可能超过 限制。我们建议您以这样的方式设计您的应用程序: 它不会生成无限大小的过滤器。

Microsoft 建议您在单个字段上有大量筛选子句时使用search.in 函数。根据文档,它不仅克服了过滤器大小的限制,而且在性能方面也更好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多