gpt4 book ai didi

java - 在 Azure 搜索上上传文档后,我可以立即查询吗?

转载 作者:行者123 更新时间:2023-12-02 01:31:18 25 4
gpt4 key购买 nike

1) 假设我使用 Azure 搜索 API 上传新文档:

POST /indexes/[index name]/docs/index?api-version=[api-version]  

2) 我收到 HTTP 代码 201 的响应(文档已成功创建)

3)我再次使用API​​来搜索新上传的文档

我可以 100% 确定我会在结果中获得该文档吗?或者索引过程可能会出现延迟?

最佳答案

不,不保证文档会在查询中返回。通常的延迟约为几秒,但根据整体系统负载,可能需要更长时间。您需要对您的服务运行测试,以找出应用程序中的典型延迟。

Azure 搜索提供 eventual consistency,这意味着索引将在未来某个时间保持一致,但无法保证具体时间。

即使轮询文档直到它出现在查询结果中也不足以始终保证具有多个副本的索引的一致性,因为请求可能与合并到索引副本中的文档交错。例如

  1. 副本 A 和 B 一致
  2. 客户上传新文档
  3. 副本 A 收到上传请求
  4. 副本 A 处理上传请求并准备在查询结果中返回新文档
  5. 客户端查询新文档,该文档恰好由副本 A 提供服务,并在结果中获取新文档
  6. 客户端再次查询新文档,这次正好由副本 B 提供服务,结果中没有得到新文档
  7. 新文档由副本 B 处理
  8. 两个副本现在再次保持一致

关于java - 在 Azure 搜索上上传文档后,我可以立即查询吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56012381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com