gpt4 book ai didi

azure-cosmosdb - 通过已知 IDS 批量获取的最有效方法

转载 作者:行者123 更新时间:2023-12-03 19:39:23 25 4
gpt4 key购买 nike

假设我有一个 ID 列表,获取一堆文档的“最佳”方法是什么

我知道我可以尝试各种方法,但在小范围内可能所有选项都具有相似的性能。到目前为止,我什么都没试过——只是阅读文档

也许没有“最佳”方法,但是各种方法(速度、成本、总体吞吐量……)之间的权衡是什么?

叹息 - 我知道这会被否决 - 沿着“你尝试过什么”,“我们不会为你编写代码”等的路线。我无法进行有意义的性能分析,直到我有数千个并行请求同时出现在 TB 级数据。我发誓我不是懒惰或不愿意投入工作,只是不想进入生产并发现我有性能问题然后被告知“你到底为什么这样做?”

最佳答案

关于使用 DocumentDB 执行读取的最佳方式的一些一般提示。

  • 如果您有少量文档,则使用 ReadDocumentAsync将是执行此操作的最佳方法,跨多个线程,每个线程使用 partition key 获取文档和 id .每次读取是每 1KB 文档 1 RU,在 p99 时不到 10 毫秒。
  • 如果您有大量文档,则使用类似 SELECT * FROM c WHERE c.partitionKey = 'pk' AND c.id IN ('1','2',..., 'N') 的查询将更有效,即来自客户端的连接更少,服务器端的 RU 也更少(通常每个返回的文档 < 1 RU)。
  • 如果您需要跨多个分区键获取数据,则很难判断单个读取还是单个查询的性能更好。这需要更详细的测试,并取决于读取的文档数量和不同分区键的数量。
  • 关于azure-cosmosdb - 通过已知 IDS 批量获取的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41878136/

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