当前位置: 首页 > 知识库问答 >
问题:

Azure CosmosDB 中的批量删除会导致 429 错误

庞阳波
2023-03-14

我已经按照较新的SDK的建议实现了批量删除。创建了要删除每个项目的任务列表,然后等待所有任务。我的 CosmosClient 配置了 BulkOperations = true。据我所知,这意味着在引擎盖下,新的SDK发挥了魔力并执行批量操作。

不幸的是,我遇到了429响应状态。这意味着我的多个请求达到了请求速率限制(它很低,仅限于开发层,但不限于此)。我想知道,一个批量操作怎么会导致429错误。以及如何以非“每项”方式实现批量删除。

更新:我将Azure Cosmos DB. NET SDK v3用于SQLAPI,并支持批量操作,如本文所述https://devblogs.microsoft.com/cosmosdb/introducing-bulk-support-in-the-net-sdk/

共有1个答案

楮杰
2023-03-14

您需要以处理任何操作的方式处理 429 的删除,方法是创建异常块,捕获状态代码,然后检查标头中的重试后值,然后在该时间后Hibernate并重试。

PS如果您试图删除容器中的所有数据,删除然后重新创建容器会更有效。

 类似资料:
  • 在本例中,我在一个包含2个副本的部署中运行“echoheaders”Nginx。当我删除一个pod时,我有时会收到约40秒的缓慢响应和错误。 我们正在库伯内特斯运行我们的API网关,并且需要能够允许库伯内特斯调度程序在它认为合适的时候处理pod。 我们最近想引入会话相关性,为此,我们想迁移到新的闪亮的NEG:网络endpoint组:https://cloud.google.com/load-bal

  • 问题内容: 我有一个ReactJS HTML表格组件,并使用方法更新了它的内容(单元格值)。这是基本代码: 您可以这样使用它: 大部分时间都在工作。我可以通过执行以下操作来更改数据(在函数中的某处): 如您所见,它将在表的末尾添加一行。但是,如果我尝试在此更新后设置初始数据,或者以任何方式通过设置为较小的数组(例如应删除最后一行)来 缩短 行数: 我收到此错误: TypeError:updated

  • 根据SQL字符串组合文档,我想在postgresql数据库中执行DELETE语句: 这将导致以下错误: 另一方面,类似的execute工作正常: 我真的看不出有什么区别...

  • 问题内容: 我在SQL Server 2005中有一张表,其中有大约40亿行。我需要删除大约20亿行。如果我尝试在单个事务中执行此操作,则事务日志将填满,并且将失败。我没有多余的空间来增加事务日志。我认为最好的方法是批处理delete语句(约10,000个批?)。 我可能可以使用游标执行此操作,但是这样做是一种标准/简单/明智的方法吗? PS此表没有标识列作为PK。PK由整数外键和日期组成。 问题

  • 问题内容: 我想选择一个值到一个变量中。我试图遵循: -立即返回一些语法错误。 -返回一个整数 -不起作用,也尝试了@myvar 是否可以在存储过程或函数之外使用DECLARE? 也许我只是不了解用户变量的概念……我只是尝试过: …工作原理与预期的一样。但是,如果我一次运行每个查询,我只会得到@var NULL。 问题答案: 最后,存储过程是解决我的问题的方法。这是有帮助的:

  • 关于各种扫描仪方法的工作原理,我肯定遗漏了一些明显的东西,但这真的没有任何意义: 此代码导致无限循环: 虽然此代码有效: 这是来自Oracle的文档,我不确定它是否适用或它的含义:“此方法可能会在等待扫描输入时阻塞,即使之前调用hasNext()返回true也是如此。”(http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Scanner.h