雪花返回错误“位置 <bucket name> 上的自动摄取管道数不能大于允许的限制:50000”
Posted
技术标签:
【中文标题】雪花返回错误“位置 <bucket name> 上的自动摄取管道数不能大于允许的限制:50000”【英文标题】:Snowflake return error "Number of auto-ingest pipes on location <bucket name> cannot be greater than allowed limit: 50000" 【发布时间】:2021-09-15 10:15:18 【问题描述】:我有一个 lambda 函数每天几次将数据加载到 AWS GLUE 表中,然后最后在雪花上创建一个外部表。该函数运行正常一段时间,但现在它开始不时向我返回此错误:
Number of auto-ingest pipes on location <bucket name> cannot be greater than allowed limit: 50000
建表sql如下:
create or replace external table table_name(
row_id STRING as (value:row_id::string),
created TIMESTAMP as (value:created::timestamp)
...
) with location = @conformedstage/table_name/ file_format = (type = parquet);
我用谷歌搜索了这个问题,几乎所有的答案都提到了sonwpipe,但是,它根本不使用雪管。
感谢任何想法
【问题讨论】:
【参考方案1】:当使用 auto_refresh 创建外部表时,Snowflake 会创建一个内部管道来处理事件,并且您可能有很多外部表使用同一个存储桶。
您可以尝试设置 AUTO_REFRESH=false 吗?
create or replace external table table_name(
row_id STRING as (value:row_id::string),
created TIMESTAMP as (value:created::timestamp)
...
) with location = @conformedstage/table_name/ file_format = (type = parquet) auto_refresh=false;
https://docs.snowflake.com/en/sql-reference/sql/create-external-table.html
【讨论】:
感谢 gokhan,您的回答解决了问题以上是关于雪花返回错误“位置 <bucket name> 上的自动摄取管道数不能大于允许的限制:50000”的主要内容,如果未能解决你的问题,请参考以下文章