把它放在上下文中,我有一个存储CSV文件的桶,还有一个函数,当您将新的CSV加载到存储桶中时,它可以将数据放入数据库。我试图同时上传100个CSV,总共有581.100条记录(70 MB),所有这些文件都出现在我的桶中,并创建了一个新表。但是,当我做一个“选择计数”时,我只找到了267306条记录(占总数的46%)--我试图再做一次,不同的桶、函数和表,我尝试上传另外100个文件,这一次是4.779.100条记录(312 MB) --当我在大查询中检查表时,我意识到只有2.293.920条记录存在(47%)。所以我的问题是,有什么方法可以在不丢失数据的情况下上传所有我想要的CSV?还是GCP对这项任务有一些限制?谢谢。
发布于 2022-09-20 21:35:53
正如你在上一次评论中指出的:
google.api_core.exceptions.Forbidden: 403超出速率限制:此表的表更新操作太多
根据文档,此错误显示标准表的每个表的表元数据更新操作的最大速率已达到极限。您可以检查可能应用这里的限制。请注意,此配额不能增加。
在诊断一节中,它说:
元数据表更新可以来自修改表元数据的API调用,也可以来自修改表内容的作业。
作为解析,您可以执行以下操作:
gs://my_path/file_1,gs://my_path/file_2
)或使用通配符(例如,gs://my_path/*
)从多个云存储URI加载。有关更多信息,请参见批量装载数据。INSERT
语句)向表写入数据,请考虑将多个查询分批为一个,以减少作业数量。当作为关系数据库使用时,BigQuery的性能并不好,因此以高速执行的单行INSERT
语句不是推荐的最佳实践。https://stackoverflow.com/questions/73654026
复制相似问题