gpt4 book ai didi

aws-lambda - Snowflake 的异步外部函数不遵守 HttpStatus 429

转载 作者:行者123 更新时间:2023-12-04 13:50:57 24 4
gpt4 key购买 nike

我已经实现了一个符合 Snowflake's Asynchronous External Function. 的 API
在我们开发的系统中,我们使用 AWS API 网关、Lambda 函数和第三方 API (TPA)。
在我们的场景中,我们将某些信息存储在 Snowflake 的表中,并尝试使用 Snowflake 的 External User Defined Function 来丰富该表。 .
如果记录数较少,我们可以丰富表格。如果我们尝试丰富 300 万条记录,那么在一段时间后,我们的 TAPI 开始发送 HTTP 429。这是一个指示符,它告诉我们的 lambda 函数减慢 Snowflake 的请求数量。
我们理解这一点,当 Lambda 函数获得 HTTP 429 时,它会在任何轮询/发布请求中将 HTTP 429 发送回 Snowflake。预计 Snowflake 会减慢请求,而不是抛出错误并停止进一步处理。
下面是对雪花的回应

{
"statusCode" : 429
}
这是一个固定的情况,看起来 Snowflake 在请求-回复模式中不遵守 HTTP 429。

最佳答案

在使用外部函数时,Snowflake 会处理 HTTP 4xx 响应。
你参与了支持吗?我曾与遇到此问题的客户合作过,并且雪花团队能够进行审核。
AWS API 网关的默认限制为 10000 rps .
请查看 Designing High Performance External Functions

Remote services should return HTTP response code 429 when overloaded.If Snowflake sees HTTP 429, Snowflake scales back the rate at which itsends rows, and retries sending batches of rows that were notprocessed successfully.


您的解决方案有:
与 AWS 合作以提高您的 API Gateway 速率限制。

However, some proxy services, including Amazon API Gateway and AzureAPI Management, have default usage limits. When the request rateexceeds the limit, these proxy services throttle requests. Ifnecessary, you might need to ask AWS or Azure to increase your quotaon your proxy service.


或者
尝试使用较小的仓库,以便雪花每秒向 API 网关发送更少的数量。这有明显的缺点,你跑得慢。

关于aws-lambda - Snowflake 的异步外部函数不遵守 HttpStatus 429,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69490993/

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